PHP Class Pinq\Queries\Builders\ScopeInterpreter

Author: Elliot Levin ([email protected])
Inheritance: extends ExpressionInterpreter, implements Pinq\Queries\Builders\IScopeInterpreter
显示文件 Open project: timetoogo/pinq

Protected Properties

Property Type Description
$interpretation Pinq\Queries\Builders\Interpretations\IScopeInterpretation
$segmentCallbacks callable[] Because the method expression are evaluated top-down, Query segments are interpreted in reverse order, so they are stored as callbacks and called in reverse order.
$segmentCounter integer
$segmentId string

Public Methods

Method Description
__construct ( Pinq\Queries\Builders\Interpretations\IScopeInterpretation $interpretation, Pinq\Expressions\IEvaluationContext $evaluationContext = null, $idPrefix = 'scope' )
buildJoinOptionsInterpreter ( $segmentId )
buildSourceInterpreter ( $segmentId )
getInterpretation ( )
interpretScope ( Expression $expression )

Protected Methods

Method Description
addSegment ( callable $segmentCallback )
addSlice ( $start, $amount )
getSegmentId ( $parameter = null )
visit ( Expression $expression )
visitAppend ( MethodCallExpression $expression )
visitDifference ( MethodCallExpression $expression )
visitExcept ( MethodCallExpression $expression )
visitGroupBy ( MethodCallExpression $expression )
visitIndexBy ( MethodCallExpression $expression )
visitIntersect ( MethodCallExpression $expression )
visitKeys ( MethodCallExpression $expression )
visitOperation ( $operationType, MethodCallExpression $expression )
visitOrderBy ( MethodCallExpression $expression )
visitOrderByAscending ( MethodCallExpression $expression )
visitOrderByDescending ( MethodCallExpression $expression )
visitOrdering ( $count, MethodCallExpression $expression )
visitOrderings ( MethodCallExpression $expression )
visitReindex ( MethodCallExpression $expression )
visitSelect ( MethodCallExpression $expression )
visitSelectMany ( MethodCallExpression $expression )
visitSkip ( MethodCallExpression $expression )
visitSlice ( MethodCallExpression $expression )
visitTake ( MethodCallExpression $expression )
visitThenBy ( MethodCallExpression $expression )
visitThenByAscending ( MethodCallExpression $expression )
visitThenByDescending ( MethodCallExpression $expression )
visitTo ( MethodCallExpression $expression )
visitUnion ( MethodCallExpression $expression )
visitUnique ( MethodCallExpression $expression )
visitWhere ( MethodCallExpression $expression )
visitWhereIn ( MethodCallExpression $expression )

Method Details

__construct() public method

public __construct ( Pinq\Queries\Builders\Interpretations\IScopeInterpretation $interpretation, Pinq\Expressions\IEvaluationContext $evaluationContext = null, $idPrefix = 'scope' )
$interpretation Pinq\Queries\Builders\Interpretations\IScopeInterpretation
$evaluationContext Pinq\Expressions\IEvaluationContext

addSegment() final protected method

final protected addSegment ( callable $segmentCallback )
$segmentCallback callable

addSlice() final protected method

final protected addSlice ( $start, $amount )

buildJoinOptionsInterpreter() public method

public buildJoinOptionsInterpreter ( $segmentId )

buildSourceInterpreter() public method

public buildSourceInterpreter ( $segmentId )

getInterpretation() public method

public getInterpretation ( )

getSegmentId() final protected method

final protected getSegmentId ( $parameter = null )

interpretScope() public method

public interpretScope ( Expression $expression )
$expression Pinq\Expressions\Expression

visit() final protected method

final protected visit ( Expression $expression )
$expression Pinq\Expressions\Expression

visitAppend() final protected method

final protected visitAppend ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitDifference() final protected method

final protected visitDifference ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitExcept() final protected method

final protected visitExcept ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitGroupBy() final protected method

final protected visitGroupBy ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitIndexBy() final protected method

final protected visitIndexBy ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitIntersect() final protected method

final protected visitIntersect ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitKeys() final protected method

final protected visitKeys ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitOperation() final protected method

final protected visitOperation ( $operationType, MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitOrderBy() final protected method

final protected visitOrderBy ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitOrderByAscending() final protected method

final protected visitOrderByAscending ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitOrderByDescending() final protected method

final protected visitOrderByDescending ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitOrdering() final protected method

final protected visitOrdering ( $count, MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitOrderings() final protected method

final protected visitOrderings ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitReindex() final protected method

final protected visitReindex ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitSelect() final protected method

final protected visitSelect ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitSelectMany() final protected method

final protected visitSelectMany ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitSkip() final protected method

final protected visitSkip ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitSlice() final protected method

final protected visitSlice ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitTake() final protected method

final protected visitTake ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitThenBy() final protected method

final protected visitThenBy ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitThenByAscending() final protected method

final protected visitThenByAscending ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitThenByDescending() final protected method

final protected visitThenByDescending ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitTo() final protected method

final protected visitTo ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitUnion() final protected method

final protected visitUnion ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitUnique() final protected method

final protected visitUnique ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitWhere() final protected method

final protected visitWhere ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

visitWhereIn() final protected method

final protected visitWhereIn ( MethodCallExpression $expression )
$expression Pinq\Expressions\MethodCallExpression

Property Details

$interpretation protected_oe property

protected IScopeInterpretation,Pinq\Queries\Builders\Interpretations $interpretation
return Pinq\Queries\Builders\Interpretations\IScopeInterpretation

$segmentCallbacks protected_oe property

Because the method expression are evaluated top-down, Query segments are interpreted in reverse order, so they are stored as callbacks and called in reverse order.
protected callable[] $segmentCallbacks
return callable[]

$segmentCounter protected_oe property

protected int $segmentCounter
return integer

$segmentId protected_oe property

protected string $segmentId
return string