Properties

$indentation

$indentation : 

Type

$source

$source : 

Type

$vars

$vars : 

Type

Methods

visit()

visit(array  $ast, string  $fnName, string  $expr) : string

Parameters

array $ast

AST to compile.

string $fnName

The name of the function to generate.

string $expr

Expression being compiled.

Returns

string

dispatch()

dispatch(array  $node) : mixed

Parameters

array $node

Returns

mixed

makeVar()

makeVar(string  $prefix) : string

Creates a monotonically incrementing unique variable name by prefix.

Parameters

string $prefix

Variable name prefix

Returns

string

write()

write(string  $str) : $this

Writes the given line of source code. Pass positional arguments to write that match the format of sprintf.

Parameters

string $str

String to write

Returns

$this

outdent()

outdent() : $this

Decreases the indentation level of code being written

Returns

$this

indent()

indent() : $this

Increases the indentation level of code being written

Returns

$this

visit_or()

visit_or(array  $node) 

Parameters

array $node

visit_and()

visit_and(array  $node) 

Parameters

array $node

visit_not()

visit_not(array  $node) 

Parameters

array $node

visit_subexpression()

visit_subexpression(array  $node) 

Parameters

array $node

visit_field()

visit_field(array  $node) 

Parameters

array $node

visit_index()

visit_index(array  $node) 

Parameters

array $node

visit_literal()

visit_literal(array  $node) 

Parameters

array $node

visit_pipe()

visit_pipe(array  $node) 

Parameters

array $node

visit_multi_select_list()

visit_multi_select_list(array  $node) 

Parameters

array $node

visit_multi_select_hash()

visit_multi_select_hash(array  $node) 

Parameters

array $node

visit_function()

visit_function(array  $node) 

Parameters

array $node

visit_slice()

visit_slice(array  $node) 

Parameters

array $node

visit_current()

visit_current(array  $node) 

Parameters

array $node

visit_expref()

visit_expref(array  $node) 

Parameters

array $node

visit_flatten()

visit_flatten(array  $node) 

Parameters

array $node

visit_projection()

visit_projection(array  $node) 

Parameters

array $node

visit_condition()

visit_condition(array  $node) 

Parameters

array $node

visit_comparator()

visit_comparator(array  $node) 

Parameters

array $node