PHP Class Zephir\Call

Base class for common functionality in functions/calls
Afficher le fichier Open project: phalcon/zephir Class Usage Examples

Protected Properties

Свойство Type Description
$_expression zephir\Expression Call expression
$_isExpecting
$_mustCheckForCopy
$_mustInit
$_reflection
$_resolvedDynamicTypes
$_resolvedParams
$_resolvedTypes
$_symbolVariable
$_temporalVariables

Méthodes publiques

Méthode Description
addCallStatusFlag ( zephir\CompilationContext $compilationContext ) Add the last-call-status flag to the current symbol table
addCallStatusOrJump ( zephir\CompilationContext $compilationContext ) Checks the last call status or make a label jump to the next catch block
checkTempParameters ( zephir\CompilationContext $compilationContext ) Checks if temporary parameters must be copied or not
getMustCheckForCopyVariables ( ) : array Parameters to check if they must be copied
getReadOnlyResolvedParams ( array $parameters, zephir\CompilationContext $compilationContext, array $expression ) : array Resolve parameters using zvals in the stack and without allocating memory for constants
getResolvedDynamicTypes ( ) : array Return resolved parameter dynamic types
getResolvedParams ( array $parameters, zephir\CompilationContext $compilationContext, array $expression, array $calleeDefinition = null ) : array Resolve parameters getting aware that the target function/method could retain or change the parameters
getResolvedParamsAsExpr ( array $parameters, zephir\CompilationContext $compilationContext, array $expression, boolean $readOnly = false ) : array Resolves parameters
getResolvedTypes ( ) : array Return resolved parameter types
getSymbolVariable ( boolean $useTemp = false, zephir\CompilationContext $compilationContext = null ) : Variable Returns the symbol variable that must be returned by the call
getTemporalVariables ( ) : Variable[] Returns the temporal variables generated during the parameter resolving
isExpectingReturn ( ) : boolean Check if an external expression is expecting the call return a value
mustInitSymbolVariable ( ) : boolean Returns if the symbol to be returned by the call must be initialized
processExpectedComplexLiteralReturn ( zephir\CompilationContext $compilationContext ) Processes the symbol variable that will be used to return the result of the symbol call. If a temporal variable is used as returned value only the body is freed between calls
processExpectedObservedReturn ( zephir\CompilationContext $compilationContext ) Processes the symbol variable that will be used to return the result of the symbol call
processExpectedReturn ( zephir\CompilationContext $compilationContext ) Processes the symbol variable that will be used to return the result of the symbol call

Method Details

addCallStatusFlag() public méthode

Add the last-call-status flag to the current symbol table
public addCallStatusFlag ( zephir\CompilationContext $compilationContext )
$compilationContext zephir\CompilationContext

addCallStatusOrJump() public méthode

Checks the last call status or make a label jump to the next catch block
public addCallStatusOrJump ( zephir\CompilationContext $compilationContext )
$compilationContext zephir\CompilationContext

checkTempParameters() public méthode

Checks if temporary parameters must be copied or not
public checkTempParameters ( zephir\CompilationContext $compilationContext )
$compilationContext zephir\CompilationContext

getMustCheckForCopyVariables() public méthode

Parameters to check if they must be copied
public getMustCheckForCopyVariables ( ) : array
Résultat array

getReadOnlyResolvedParams() public méthode

Resolve parameters using zvals in the stack and without allocating memory for constants
public getReadOnlyResolvedParams ( array $parameters, zephir\CompilationContext $compilationContext, array $expression ) : array
$parameters array
$compilationContext zephir\CompilationContext
$expression array
Résultat array

getResolvedDynamicTypes() public méthode

Return resolved parameter dynamic types
public getResolvedDynamicTypes ( ) : array
Résultat array

getResolvedParams() public méthode

Resolve parameters getting aware that the target function/method could retain or change the parameters
public getResolvedParams ( array $parameters, zephir\CompilationContext $compilationContext, array $expression, array $calleeDefinition = null ) : array
$parameters array
$compilationContext zephir\CompilationContext
$expression array
$calleeDefinition array
Résultat array

getResolvedParamsAsExpr() public méthode

Resolves parameters
public getResolvedParamsAsExpr ( array $parameters, zephir\CompilationContext $compilationContext, array $expression, boolean $readOnly = false ) : array
$parameters array
$compilationContext zephir\CompilationContext
$expression array
$readOnly boolean
Résultat array

getResolvedTypes() public méthode

Return resolved parameter types
public getResolvedTypes ( ) : array
Résultat array

getSymbolVariable() public méthode

Returns the symbol variable that must be returned by the call
public getSymbolVariable ( boolean $useTemp = false, zephir\CompilationContext $compilationContext = null ) : Variable
$useTemp boolean
$compilationContext zephir\CompilationContext
Résultat Variable

getTemporalVariables() public méthode

Returns the temporal variables generated during the parameter resolving
public getTemporalVariables ( ) : Variable[]
Résultat Variable[]

isExpectingReturn() public méthode

Check if an external expression is expecting the call return a value
public isExpectingReturn ( ) : boolean
Résultat boolean

mustInitSymbolVariable() public méthode

Returns if the symbol to be returned by the call must be initialized
public mustInitSymbolVariable ( ) : boolean
Résultat boolean

processExpectedComplexLiteralReturn() public méthode

Processes the symbol variable that will be used to return the result of the symbol call. If a temporal variable is used as returned value only the body is freed between calls
public processExpectedComplexLiteralReturn ( zephir\CompilationContext $compilationContext )
$compilationContext zephir\CompilationContext

processExpectedObservedReturn() public méthode

Processes the symbol variable that will be used to return the result of the symbol call
public processExpectedObservedReturn ( zephir\CompilationContext $compilationContext )
$compilationContext zephir\CompilationContext

processExpectedReturn() public méthode

Processes the symbol variable that will be used to return the result of the symbol call
public processExpectedReturn ( zephir\CompilationContext $compilationContext )
$compilationContext zephir\CompilationContext

Property Details

$_expression protected_oe property

Call expression
protected Expression,zephir $_expression
Résultat zephir\Expression

$_isExpecting protected_oe property

protected $_isExpecting

$_mustCheckForCopy protected_oe property

protected $_mustCheckForCopy

$_mustInit protected_oe property

protected $_mustInit

$_reflection protected_oe property

protected $_reflection

$_resolvedDynamicTypes protected_oe property

protected $_resolvedDynamicTypes

$_resolvedParams protected_oe property

protected $_resolvedParams

$_resolvedTypes protected_oe property

protected $_resolvedTypes

$_symbolVariable protected_oe property

protected $_symbolVariable

$_temporalVariables protected_oe property

protected $_temporalVariables