Overview

Namespaces

  • Pharborist
    • Constants
    • ControlStructures
    • Exceptions
    • Functions
    • Generators
    • Namespaces
    • Objects
    • Operators
    • Types
    • Variables

Classes

  • ArrayLookupNode
  • BacktickNode
  • BlankStatementNode
  • CommaListNode
  • CommentNode
  • DocCommentNode
  • EchoStatementNode
  • EchoTagStatementNode
  • ExpressionStatementNode
  • Filter
  • Formatter
  • FormatterFactory
  • LineCommentBlockNode
  • Node
  • NodeCollection
  • OperatorFactory
  • ParenthesisNode
  • ParentNode
  • Parser
  • PartialCommentNode
  • PartialNode
  • RootNode
  • SourceDiscovery
  • SourcePosition
  • SplatNode
  • StatementBlockNode
  • StatementNode
  • TemplateNode
  • Token
  • TokenIterator
  • Tokenizer
  • TokenNode
  • UnsetStatementNode
  • VisitorBase
  • WhitespaceNode

Interfaces

  • ExpressionNode
  • NodeInterface
  • ParentNodeInterface
  • ParserException
  • VisitorInterface

Traits

  • DocCommentTrait
  • ParenTrait
  • UncommentTrait
  • Overview
  • Namespace
  • Class

Interface ExpressionNode

Interface for nodes that represent expressions.

An expression is any snippet of code which represents or produces a value. Expressions include, but aren't limited to:

  • Variables: $mork
  • Assignments: $foo = $bar
  • Arithmetic: $a = $b + $c
  • Function or method calls: foo(); $foo->baz();
  • Logical expressions: ($a && $b)
  • Function call arguments: foo(--$baz)
  • Comparisons: $a > $b

Expressions are "smaller" than statements, in the sense that a statement is usually composed of least one expression. Expressions can contain other expressions -- a nested function call, for instance. Any node that implements this interface is considered by PHP to be an expression.

Pharborist\ExpressionNode implements Pharborist\NodeInterface, Pharborist\Types\ArrayElementNode

Direct known implementers

Pharborist\BacktickNode, Pharborist\Constants\ClassMagicConstantNode, Pharborist\ControlStructures\ExitNode, Pharborist\ControlStructures\ImportNode, Pharborist\Functions\AnonymousFunctionNode, Pharborist\Functions\CallbackCallNode, Pharborist\Generators\YieldNode, Pharborist\Objects\ClassConstantLookupNode, Pharborist\Objects\ClassNameScalarNode, Pharborist\Objects\NewNode, Pharborist\Operators\BinaryOperationNode, Pharborist\Operators\TernaryOperationNode, Pharborist\Constants\ConstantNode, Pharborist\Operators\UnaryOperationNode, Pharborist\ParenthesisNode, Pharborist\Types\ArrayNode, Pharborist\Types\FloatNode, Pharborist\Types\HeredocNode, Pharborist\Types\IntegerNode, Pharborist\Types\InterpolatedStringNode, Pharborist\Types\StringNode, Pharborist\Variables\ReferenceVariableNode, Pharborist\Variables\VariableExpressionNode, Pharborist\Constants\DirMagicConstantNode, Pharborist\Constants\FileMagicConstantNode, Pharborist\Constants\FunctionMagicConstantNode, Pharborist\Constants\LineMagicConstantNode, Pharborist\Constants\MethodMagicConstantNode, Pharborist\Constants\NamespaceMagicConstantNode, Pharborist\Constants\TraitMagicConstantNode

Indirect known implementers

Pharborist\ArrayLookupNode, Pharborist\ControlStructures\IncludeNode, Pharborist\Functions\IssetNode, Pharborist\Functions\ListNode, Pharborist\Functions\UnsetNode, Pharborist\Objects\ClassMemberLookupNode, Pharborist\Objects\ClassMethodCallNode, Pharborist\Objects\ObjectMethodCallNode, Pharborist\Objects\ObjectPropertyNode, Pharborist\Operators\AddAssignNode, Pharborist\Operators\AddNode, Pharborist\Operators\ArrayCastNode, Pharborist\ControlStructures\IncludeOnceNode, Pharborist\Operators\AssignNode, Pharborist\Operators\AssignReferenceNode, Pharborist\Operators\BitwiseAndAssignNode, Pharborist\Operators\BitwiseAndNode, Pharborist\Operators\BitwiseNotNode, Pharborist\Operators\BitwiseOrAssignNode, Pharborist\Operators\BitwiseOrNode, Pharborist\Operators\BitwiseShiftLeftAssignNode, Pharborist\Operators\BitwiseShiftLeftNode, Pharborist\Operators\BitwiseShiftRightAssignNode, Pharborist\ControlStructures\RequireNode, Pharborist\Operators\BitwiseShiftRightNode, Pharborist\Operators\BitwiseXorAssignNode, Pharborist\Operators\BitwiseXorNode, Pharborist\Operators\BooleanAndNode, Pharborist\Operators\BooleanCastNode, Pharborist\Operators\BooleanNotNode, Pharborist\Operators\BooleanOrNode, Pharborist\Operators\CastNode, Pharborist\Operators\CloneNode, Pharborist\Operators\ConcatAssignNode, Pharborist\ControlStructures\RequireOnceNode, Pharborist\Operators\ConcatNode, Pharborist\Operators\DivideAssignNode, Pharborist\Operators\DivideNode, Pharborist\Operators\ElvisNode, Pharborist\Operators\EqualNode, Pharborist\Operators\FloatCastNode, Pharborist\Operators\GreaterThanNode, Pharborist\Operators\GreaterThanOrEqualToNode, Pharborist\Operators\IdenticalNode, Pharborist\Operators\InstanceOfNode, Pharborist\Functions\DefineNode, Pharborist\Operators\IntegerCastNode, Pharborist\Operators\LessThanNode, Pharborist\Operators\LessThanOrEqualToNode, Pharborist\Operators\LogicalAndNode, Pharborist\Operators\LogicalOrNode, Pharborist\Operators\LogicalXorNode, Pharborist\Operators\ModulusAssignNode, Pharborist\Operators\ModulusNode, Pharborist\Operators\MultiplyAssignNode, Pharborist\Operators\MultiplyNode, Pharborist\Functions\EmptyNode, Pharborist\Operators\NegateNode, Pharborist\Operators\NotEqualNode, Pharborist\Operators\NotIdenticalNode, Pharborist\Operators\ObjectCastNode, Pharborist\Operators\PlusNode, Pharborist\Operators\PostDecrementNode, Pharborist\Operators\PostIncrementNode, Pharborist\Operators\PowerAssignNode, Pharborist\Operators\PowerNode, Pharborist\Operators\PreDecrementNode, Pharborist\Functions\EvalNode, Pharborist\Operators\PreIncrementNode, Pharborist\Operators\PrintNode, Pharborist\Operators\StringCastNode, Pharborist\Operators\SubtractAssignNode, Pharborist\Operators\SubtractNode, Pharborist\Operators\SuppressWarningNode, Pharborist\Operators\UnsetCastNode, Pharborist\Types\BooleanNode, Pharborist\Types\FalseNode, Pharborist\Types\NullNode, Pharborist\Functions\FunctionCallNode, Pharborist\Types\TrueNode, Pharborist\Variables\CompoundVariableNode, Pharborist\Variables\VariableNode, Pharborist\Variables\VariableVariableNode, Pharborist\Functions\HaltCompilerNode
Namespace: Pharborist
Located at ExpressionNode.php
Methods inherited from Pharborist\NodeInterface
after(), appendTo(), before(), closest(), furthest(), getRoot(), getSourcePosition(), getText(), hasRoot(), index(), insertAfter(), insertBefore(), next(), nextAll(), nextUntil(), parent(), parents(), parentsUntil(), prependTo(), previous(), previousAll(), previousUntil(), remove(), replaceAll(), replaceWith(), siblings(), swapWith()
Pharborist API documentation generated by ApiGen