Метод |
Описание |
|
__construct ( zephir\CompilationContext $compilationContext ) |
SymbolTable |
|
addRawVariable ( Variable $variable ) : Variable |
Adds a raw variable to the symbol table (root branch) |
|
addTemp ( string $type, zephir\CompilationContext $context ) : Variable |
Creates a temporary variable |
|
addVariable ( integer $type, string $name, zephir\CompilationContext $compilationContext, mixed $defaultValue = null ) : Variable |
Adds a variable to the symbol table |
|
getExpectedMutations ( string $variable ) : integer |
Returns the number of expected mutations for a variable |
|
getLastCallLine ( ) : integer |
Returns the last line where any kind of call was performed within the method
This is not necessary related to the symbol table but this information is gathered
by the LocalContextPass |
|
getLastUnsetLine ( ) : integer |
Returns the last line where an 'unset' operation was made within the current method
This is not necessary related to the symbol table but this information is gathered
by the LocalContextPass |
|
getMustGrownStack ( ) : boolean |
Returns if the current symbol label must add a memory frame |
|
getNextTempVar ( $compilationContext = null ) |
|
|
getTempComplexLiteralVariableForWrite ( string $type, zephir\CompilationContext $context ) : Variable |
Creates a temporary variable to be used in a write operation
the body of the variable is freed between iterations instead of
request a new full zval variable |
|
getTempLocalVariableForWrite ( string $type, zephir\CompilationContext $context ) : Variable |
Creates a temporary variable to be used in a write operation |
|
getTempNonTrackedUninitializedVariable ( string $type, zephir\CompilationContext $context ) : Variable |
Creates a temporary variable to be used in a read-only operation within native-array-access and property-access
These kind of variables MUST not be tracked by the Zephir memory manager |
|
getTempNonTrackedVariable ( $type, zephir\CompilationContext $context, boolean $initNonReferenced = false ) : Variable |
Creates a temporary variable to be used to point to a heap variable
These kind of variables MUST not be tracked by the Zephir memory manager |
|
getTempVariable ( string $type, zephir\CompilationContext $compilationContext ) : Variable |
Returns a temporal variable |
|
getTempVariableForObserve ( string $type, zephir\CompilationContext $context ) : Variable |
Creates a temporary variable to be used as intermediate variable of a read operation
Variables are automatically tracked by the memory manager |
|
getTempVariableForObserveOrNullify ( string $type, zephir\CompilationContext $context ) : Variable |
Creates a temporary variable to be used as intermediate variable in a call operation
Variables are automatically tracked by the memory manager |
|
getTempVariableForWrite ( string $type, zephir\CompilationContext $context, $init = true ) : Variable |
Creates a temporary variable to be used in a write operation |
|
getTemporalVariables ( ) : array |
Returns the temporal variables declared in a given context |
|
getVariable ( $name, $compilationContext = null ) : Variable | boolean |
Returns a variable in the symbol table |
|
getVariableForRead ( string $name, zephir\CompilationContext $compilationContext = null, array $statement = null ) : Variable |
Return a variable in the symbol table, it will be used for a read operation |
|
getVariableForUpdate ( string $name, zephir\CompilationContext $compilationContext, array $statement = null ) : Variable |
Return a variable in the symbol table, it will be used for a mutating operation
This method implies mutation of one of the members of the variable but no the variables it self |
|
getVariableForWrite ( string $name, zephir\CompilationContext $compilationContext, array $statement = null ) : boolean | Variable |
Return a variable in the symbol table, it will be used for a write operation
Some variables aren't writable themselves but their members do |
|
getVariables ( ) : array |
Returns all the variables defined in the symbol table |
|
getVariablesByBranch ( $branchId ) |
|
|
hasVariable ( string $name, $compilationContext = null ) : boolean |
Check if a variable is declared in the current symbol table |
|
hasVariableInBranch ( $name, $compareBranch, $compilationContext = null ) |
|
|
isSuperGlobal ( string $name ) : boolean |
Checks if a variable is a superglobal |
|
markTemporalVariablesIdle ( zephir\CompilationContext $compilationContext ) |
Traverses temporal variables created in a specific branch
marking them as idle |
|
mustGrownStack ( boolean $mustGrownStack ) |
Return a variable in the symbol table, it will be used for a write operation |
|
resolveVariableToBranch ( $name, $compilationContext ) |
|
|
setLocalContext ( LocalContextPass $localContext ) |
Sets the local context information |
|