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

Class OperatorFactory

An Operator factory.

Factory for building OperatorNode and also creating Operator for use in ExpressionParser.

Namespace: Pharborist
Located at OperatorFactory.php
Methods summary
public static Operator
# createOperator( integer|string $token_type, boolean $static_only = FALSE )

Create an OperatorNode for the given token type.

Create an OperatorNode for the given token type.

Parameters

$token_type
$static_only

Returns

Operator
public static Operator
# createElvisOperator( Pharborist\Operator $question_operator, Pharborist\PartialNode $colon_node )

Parameters

$question_operator
$colon_node

Returns

Operator
public static Operator
# createAssignReferenceOperator( Pharborist\Operator $assign_operator, Pharborist\PartialNode $by_ref_node )

Parameters

$assign_operator
$by_ref_node

Returns

Operator
public static Pharborist\Operators\UnaryOperationNode
# createUnaryOperatorNode( Pharborist\Operator $operator, Pharborist\Node $operand )

Parameters

$operator
$operand

Returns

Pharborist\Operators\UnaryOperationNode
public static Pharborist\Operators\BinaryOperationNode
# createBinaryOperatorNode( Pharborist\Node $left, Pharborist\Operator $operator, Pharborist\Node $right )

Parameters

$left
$operator
$right

Returns

Pharborist\Operators\BinaryOperationNode
public static Pharborist\Operators\PostDecrementNode|Pharborist\Operators\PostIncrementNode
# createPostfixOperatorNode( Pharborist\Node $operand, Pharborist\Operator $operator )

Parameters

$operand
$operator

Returns

Pharborist\Operators\PostDecrementNode|Pharborist\Operators\PostIncrementNode

Throws

Pharborist\ParserException
public static Pharborist\Operators\TernaryOperationNode
# createTernaryOperatorNode( Pharborist\Node $condition, Pharborist\Operator $operator, Pharborist\Node $then, Pharborist\ParentNode $colon, Pharborist\Node $else )

Parameters

$condition
$operator
$then
$colon
$else

Returns

Pharborist\Operators\TernaryOperationNode
Pharborist API documentation generated by ApiGen