Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. CallLike.php

class CallLike

Hierarchy

  • class \PhpParser\NodeAbstract implements \PhpParser\Node, \PhpParser\JsonSerializable
    • class \PhpParser\Node\Expr extends \PhpParser\NodeAbstract
      • class \PhpParser\Node\Expr\CallLike extends \PhpParser\Node\Expr

Expanded class hierarchy of CallLike

1 file declares its use of CallLike
DrupalClassResolverReturnType.php in vendor/mglaman/phpstan-drupal/src/Type/DrupalClassResolverReturnType.php

File

vendor/nikic/php-parser/lib/PhpParser/Node/Expr/CallLike.php, line 9

Namespace

PhpParser\Node\Expr
View source
abstract class CallLike extends Expr {
    
    /**
     * Return raw arguments, which may be actual Args, or VariadicPlaceholders for first-class
     * callables.
     *
     * @return array<Arg|VariadicPlaceholder>
     */
    public abstract function getRawArgs() : array;
    
    /**
     * Returns whether this call expression is actually a first class callable.
     */
    public function isFirstClassCallable() : bool {
        $rawArgs = $this->getRawArgs();
        return count($rawArgs) === 1 && current($rawArgs) instanceof VariadicPlaceholder;
    }
    
    /**
     * Assert that this is not a first-class callable and return only ordinary Args.
     *
     * @return Arg[]
     */
    public function getArgs() : array {
        assert(!$this->isFirstClassCallable());
        return $this->getRawArgs();
    }

}

Members

Title Sort descending Modifiers Object type Summary Overrides
CallLike::getArgs public function Assert that this is not a first-class callable and return only ordinary Args.
CallLike::getRawArgs abstract public function Return raw arguments, which may be actual Args, or VariadicPlaceholders for first-class
callables.
5
CallLike::isFirstClassCallable public function Returns whether this call expression is actually a first class callable.

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal