PHP Класс PHPCfg\Parser

Показать файл Открыть проект Примеры использования класса

Защищенные свойства (Protected)

Свойство Тип Описание
$anonId
$astParser
$astTraverser
$block Block
$ctx FuncContext
$currentClass PHPCfg\Operand\Literal | null
$currentNamespace
$fileName
$script Script

Открытые методы

Метод Описание
__construct ( PhpParser\Parser $astParser, NodeTraverser $astTraverser = null )
parse ( string $code, string $fileName )
parseAst ( array $ast, string $fileName ) : Script
parseNodes ( array $nodes, Block $block )

Защищенные методы

Метод Описание
parseArg ( PhpParser\Node\Arg $expr )
parseExprList ( array $expr, integer $readWrite = self::MODE_NONE ) : Operand[]
parseExprNode ( $expr )
parseExpr_Array ( PhpParser\Node\Expr\Array_ $expr )
parseExpr_ArrayDimFetch ( PhpParser\Node\Expr\ArrayDimFetch $expr )
parseExpr_Assign ( PhpParser\Node\Expr\Assign $expr )
parseExpr_AssignRef ( PhpParser\Node\Expr\AssignRef $expr )
parseExpr_BitwiseNot ( PhpParser\Node\Expr\BitwiseNot $expr )
parseExpr_BooleanNot ( PhpParser\Node\Expr\BooleanNot $expr )
parseExpr_ClassConstFetch ( PhpParser\Node\Expr\ClassConstFetch $expr )
parseExpr_Clone ( PhpParser\Node\Expr\Clone_ $expr )
parseExpr_Closure ( Closure $expr )
parseExpr_ConstFetch ( PhpParser\Node\Expr\ConstFetch $expr )
parseExpr_Empty ( PhpParser\Node\Expr\Empty_ $expr )
parseExpr_ErrorSuppress ( PhpParser\Node\Expr\ErrorSuppress $expr )
parseExpr_Eval ( PhpParser\Node\Expr\Eval_ $expr )
parseExpr_Exit ( PhpParser\Node\Expr\Exit_ $expr )
parseExpr_FuncCall ( PhpParser\Node\Expr\FuncCall $expr )
parseExpr_Include ( PhpParser\Node\Expr\Include_ $expr )
parseExpr_Instanceof ( PhpParser\Node\Expr\InstanceOf_ $expr )
parseExpr_Isset ( PhpParser\Node\Expr\Isset_ $expr )
parseExpr_MethodCall ( PhpParser\Node\Expr\MethodCall $expr )
parseExpr_New ( PhpParser\Node\Expr\New_ $expr )
parseExpr_PostDec ( PhpParser\Node\Expr\PostDec $expr )
parseExpr_PostInc ( PhpParser\Node\Expr\PostInc $expr )
parseExpr_PreDec ( PhpParser\Node\Expr\PreDec $expr )
parseExpr_PreInc ( PhpParser\Node\Expr\PreInc $expr )
parseExpr_Print ( PhpParser\Node\Expr\Print_ $expr )
parseExpr_PropertyFetch ( PhpParser\Node\Expr\PropertyFetch $expr )
parseExpr_ShellExec ( PhpParser\Node\Expr\ShellExec $expr )
parseExpr_StaticCall ( PhpParser\Node\Expr\StaticCall $expr )
parseExpr_StaticPropertyFetch ( PhpParser\Node\Expr\StaticPropertyFetch $expr )
parseExpr_Ternary ( PhpParser\Node\Expr\Ternary $expr )
parseExpr_UnaryMinus ( PhpParser\Node\Expr\UnaryMinus $expr )
parseExpr_UnaryPlus ( PhpParser\Node\Expr\UnaryPlus $expr )
parseExpr_Yield ( PhpParser\Node\Expr\Yield_ $expr )
parseFunc ( Func $func, array $params, array $stmts, $implicitReturnValue )
parseIf ( PhpParser\Node\Stmt\If_ | PhpParser\Node\Stmt\ElseIf_ $node, Block $endBlock )
parseListAssignment ( List_ $expr, Operand $rhs )
parseNode ( PhpParser\Node $node )
parseStmt_Class ( Class_ $node )
parseStmt_ClassConst ( ClassConst $node )
parseStmt_ClassMethod ( ClassMethod $node )
parseStmt_Const ( PhpParser\Node\Stmt\Const_ $node )
parseStmt_Declare ( Declare_ $node )
parseStmt_Do ( PhpParser\Node\Stmt\Do_ $node )
parseStmt_Echo ( PhpParser\Node\Stmt\Echo_ $node )
parseStmt_For ( PhpParser\Node\Stmt\For_ $node )
parseStmt_Foreach ( PhpParser\Node\Stmt\Foreach_ $node )
parseStmt_Function ( Function_ $node )
parseStmt_Global ( PhpParser\Node\Stmt\Global_ $node )
parseStmt_Goto ( PhpParser\Node\Stmt\Goto_ $node )
parseStmt_HaltCompiler ( PhpParser\Node\Stmt\HaltCompiler $node )
parseStmt_If ( PhpParser\Node\Stmt\If_ $node )
parseStmt_InlineHTML ( PhpParser\Node\Stmt\InlineHTML $node )
parseStmt_Interface ( Interface_ $node )
parseStmt_Label ( PhpParser\Node\Stmt\Label $node )
parseStmt_Namespace ( Namespace_ $node )
parseStmt_Nop ( PhpParser\Node\Stmt\Nop $node )
parseStmt_Property ( Property $node )
parseStmt_Return ( PhpParser\Node\Stmt\Return_ $node )
parseStmt_Static ( PhpParser\Node\Stmt\Static_ $node )
parseStmt_Switch ( PhpParser\Node\Stmt\Switch_ $node )
parseStmt_Throw ( PhpParser\Node\Stmt\Throw_ $node )
parseStmt_Trait ( Trait_ $node )
parseStmt_TraitUse ( PhpParser\Node\Stmt\TraitUse $node )
parseStmt_TryCatch ( TryCatch $node )
parseStmt_Unset ( PhpParser\Node\Stmt\Unset_ $node )
parseStmt_Use ( PhpParser\Node\Stmt\Use_ $node )
parseStmt_While ( PhpParser\Node\Stmt\While_ $node )
processAssertions ( Operand $op, Block $if, Block $else )
readAssertion ( Assertion $assert )
throwUndefinedLabelError ( )

Приватные методы

Метод Описание
compileJumptableSwitch ( PhpParser\Node\Stmt\Switch_ $node )
getVariableName ( Variable $var )
mapAttributes ( PhpParser\Node $expr )
parseParameterList ( Func $func, array $params )
parseScalarNode ( PhpParser\Node\Scalar $scalar )
parseShortCircuiting ( PhpParser\Node\Expr\BinaryOp $expr, $isOr )
readVariable ( Operand $var )
readVariableName ( $name, Block $block )
readVariableRecursive ( $name, Block $block )
switchCanUseJumptable ( PhpParser\Node\Stmt\Switch_ $node )
writeVariable ( Operand $var )
writeVariableName ( $name, Operand $value, Block $block )

Описание методов

__construct() публичный Метод

public __construct ( PhpParser\Parser $astParser, NodeTraverser $astTraverser = null )
$astParser PhpParser\Parser
$astTraverser PhpParser\NodeTraverser

parse() публичный Метод

public parse ( string $code, string $fileName )
$code string
$fileName string

parseArg() защищенный Метод

protected parseArg ( PhpParser\Node\Arg $expr )
$expr PhpParser\Node\Arg

parseAst() публичный Метод

public parseAst ( array $ast, string $fileName ) : Script
$ast array PHP-Parser AST
$fileName string
Результат Script

parseExprList() защищенный Метод

protected parseExprList ( array $expr, integer $readWrite = self::MODE_NONE ) : Operand[]
$expr array
$readWrite integer
Результат Operand[]

parseExprNode() защищенный Метод

protected parseExprNode ( $expr )

parseExpr_Array() защищенный Метод

protected parseExpr_Array ( PhpParser\Node\Expr\Array_ $expr )
$expr PhpParser\Node\Expr\Array_

parseExpr_ArrayDimFetch() защищенный Метод

protected parseExpr_ArrayDimFetch ( PhpParser\Node\Expr\ArrayDimFetch $expr )
$expr PhpParser\Node\Expr\ArrayDimFetch

parseExpr_Assign() защищенный Метод

protected parseExpr_Assign ( PhpParser\Node\Expr\Assign $expr )
$expr PhpParser\Node\Expr\Assign

parseExpr_AssignRef() защищенный Метод

protected parseExpr_AssignRef ( PhpParser\Node\Expr\AssignRef $expr )
$expr PhpParser\Node\Expr\AssignRef

parseExpr_BitwiseNot() защищенный Метод

protected parseExpr_BitwiseNot ( PhpParser\Node\Expr\BitwiseNot $expr )
$expr PhpParser\Node\Expr\BitwiseNot

parseExpr_BooleanNot() защищенный Метод

protected parseExpr_BooleanNot ( PhpParser\Node\Expr\BooleanNot $expr )
$expr PhpParser\Node\Expr\BooleanNot

parseExpr_ClassConstFetch() защищенный Метод

protected parseExpr_ClassConstFetch ( PhpParser\Node\Expr\ClassConstFetch $expr )
$expr PhpParser\Node\Expr\ClassConstFetch

parseExpr_Clone() защищенный Метод

protected parseExpr_Clone ( PhpParser\Node\Expr\Clone_ $expr )
$expr PhpParser\Node\Expr\Clone_

parseExpr_Closure() защищенный Метод

protected parseExpr_Closure ( Closure $expr )
$expr PhpParser\Node\Expr\Closure

parseExpr_ConstFetch() защищенный Метод

protected parseExpr_ConstFetch ( PhpParser\Node\Expr\ConstFetch $expr )
$expr PhpParser\Node\Expr\ConstFetch

parseExpr_Empty() защищенный Метод

protected parseExpr_Empty ( PhpParser\Node\Expr\Empty_ $expr )
$expr PhpParser\Node\Expr\Empty_

parseExpr_ErrorSuppress() защищенный Метод

protected parseExpr_ErrorSuppress ( PhpParser\Node\Expr\ErrorSuppress $expr )
$expr PhpParser\Node\Expr\ErrorSuppress

parseExpr_Eval() защищенный Метод

protected parseExpr_Eval ( PhpParser\Node\Expr\Eval_ $expr )
$expr PhpParser\Node\Expr\Eval_

parseExpr_Exit() защищенный Метод

protected parseExpr_Exit ( PhpParser\Node\Expr\Exit_ $expr )
$expr PhpParser\Node\Expr\Exit_

parseExpr_FuncCall() защищенный Метод

protected parseExpr_FuncCall ( PhpParser\Node\Expr\FuncCall $expr )
$expr PhpParser\Node\Expr\FuncCall

parseExpr_Include() защищенный Метод

protected parseExpr_Include ( PhpParser\Node\Expr\Include_ $expr )
$expr PhpParser\Node\Expr\Include_

parseExpr_Instanceof() защищенный Метод

protected parseExpr_Instanceof ( PhpParser\Node\Expr\InstanceOf_ $expr )
$expr PhpParser\Node\Expr\InstanceOf_

parseExpr_Isset() защищенный Метод

protected parseExpr_Isset ( PhpParser\Node\Expr\Isset_ $expr )
$expr PhpParser\Node\Expr\Isset_

parseExpr_MethodCall() защищенный Метод

protected parseExpr_MethodCall ( PhpParser\Node\Expr\MethodCall $expr )
$expr PhpParser\Node\Expr\MethodCall

parseExpr_New() защищенный Метод

protected parseExpr_New ( PhpParser\Node\Expr\New_ $expr )
$expr PhpParser\Node\Expr\New_

parseExpr_PostDec() защищенный Метод

protected parseExpr_PostDec ( PhpParser\Node\Expr\PostDec $expr )
$expr PhpParser\Node\Expr\PostDec

parseExpr_PostInc() защищенный Метод

protected parseExpr_PostInc ( PhpParser\Node\Expr\PostInc $expr )
$expr PhpParser\Node\Expr\PostInc

parseExpr_PreDec() защищенный Метод

protected parseExpr_PreDec ( PhpParser\Node\Expr\PreDec $expr )
$expr PhpParser\Node\Expr\PreDec

parseExpr_PreInc() защищенный Метод

protected parseExpr_PreInc ( PhpParser\Node\Expr\PreInc $expr )
$expr PhpParser\Node\Expr\PreInc

parseExpr_Print() защищенный Метод

protected parseExpr_Print ( PhpParser\Node\Expr\Print_ $expr )
$expr PhpParser\Node\Expr\Print_

parseExpr_PropertyFetch() защищенный Метод

protected parseExpr_PropertyFetch ( PhpParser\Node\Expr\PropertyFetch $expr )
$expr PhpParser\Node\Expr\PropertyFetch

parseExpr_ShellExec() защищенный Метод

protected parseExpr_ShellExec ( PhpParser\Node\Expr\ShellExec $expr )
$expr PhpParser\Node\Expr\ShellExec

parseExpr_StaticCall() защищенный Метод

protected parseExpr_StaticCall ( PhpParser\Node\Expr\StaticCall $expr )
$expr PhpParser\Node\Expr\StaticCall

parseExpr_StaticPropertyFetch() защищенный Метод

protected parseExpr_StaticPropertyFetch ( PhpParser\Node\Expr\StaticPropertyFetch $expr )
$expr PhpParser\Node\Expr\StaticPropertyFetch

parseExpr_Ternary() защищенный Метод

protected parseExpr_Ternary ( PhpParser\Node\Expr\Ternary $expr )
$expr PhpParser\Node\Expr\Ternary

parseExpr_UnaryMinus() защищенный Метод

protected parseExpr_UnaryMinus ( PhpParser\Node\Expr\UnaryMinus $expr )
$expr PhpParser\Node\Expr\UnaryMinus

parseExpr_UnaryPlus() защищенный Метод

protected parseExpr_UnaryPlus ( PhpParser\Node\Expr\UnaryPlus $expr )
$expr PhpParser\Node\Expr\UnaryPlus

parseExpr_Yield() защищенный Метод

protected parseExpr_Yield ( PhpParser\Node\Expr\Yield_ $expr )
$expr PhpParser\Node\Expr\Yield_

parseFunc() защищенный Метод

protected parseFunc ( Func $func, array $params, array $stmts, $implicitReturnValue )
$func Func
$params array
$stmts array

parseIf() защищенный Метод

protected parseIf ( PhpParser\Node\Stmt\If_ | PhpParser\Node\Stmt\ElseIf_ $node, Block $endBlock )
$node PhpParser\Node\Stmt\If_ | PhpParser\Node\Stmt\ElseIf_
$endBlock Block

parseListAssignment() защищенный Метод

protected parseListAssignment ( List_ $expr, Operand $rhs )
$expr PhpParser\Node\Expr\List_
$rhs Operand

parseNode() защищенный Метод

protected parseNode ( PhpParser\Node $node )
$node PhpParser\Node

parseNodes() публичный Метод

public parseNodes ( array $nodes, Block $block )
$nodes array
$block Block

parseStmt_Class() защищенный Метод

protected parseStmt_Class ( Class_ $node )
$node PhpParser\Node\Stmt\Class_

parseStmt_ClassConst() защищенный Метод

protected parseStmt_ClassConst ( ClassConst $node )
$node PhpParser\Node\Stmt\ClassConst

parseStmt_ClassMethod() защищенный Метод

protected parseStmt_ClassMethod ( ClassMethod $node )
$node PhpParser\Node\Stmt\ClassMethod

parseStmt_Const() защищенный Метод

protected parseStmt_Const ( PhpParser\Node\Stmt\Const_ $node )
$node PhpParser\Node\Stmt\Const_

parseStmt_Declare() защищенный Метод

protected parseStmt_Declare ( Declare_ $node )
$node PhpParser\Node\Stmt\Declare_

parseStmt_Do() защищенный Метод

protected parseStmt_Do ( PhpParser\Node\Stmt\Do_ $node )
$node PhpParser\Node\Stmt\Do_

parseStmt_Echo() защищенный Метод

protected parseStmt_Echo ( PhpParser\Node\Stmt\Echo_ $node )
$node PhpParser\Node\Stmt\Echo_

parseStmt_For() защищенный Метод

protected parseStmt_For ( PhpParser\Node\Stmt\For_ $node )
$node PhpParser\Node\Stmt\For_

parseStmt_Foreach() защищенный Метод

protected parseStmt_Foreach ( PhpParser\Node\Stmt\Foreach_ $node )
$node PhpParser\Node\Stmt\Foreach_

parseStmt_Function() защищенный Метод

protected parseStmt_Function ( Function_ $node )
$node PhpParser\Node\Stmt\Function_

parseStmt_Global() защищенный Метод

protected parseStmt_Global ( PhpParser\Node\Stmt\Global_ $node )
$node PhpParser\Node\Stmt\Global_

parseStmt_Goto() защищенный Метод

protected parseStmt_Goto ( PhpParser\Node\Stmt\Goto_ $node )
$node PhpParser\Node\Stmt\Goto_

parseStmt_HaltCompiler() защищенный Метод

protected parseStmt_HaltCompiler ( PhpParser\Node\Stmt\HaltCompiler $node )
$node PhpParser\Node\Stmt\HaltCompiler

parseStmt_If() защищенный Метод

protected parseStmt_If ( PhpParser\Node\Stmt\If_ $node )
$node PhpParser\Node\Stmt\If_

parseStmt_InlineHTML() защищенный Метод

protected parseStmt_InlineHTML ( PhpParser\Node\Stmt\InlineHTML $node )
$node PhpParser\Node\Stmt\InlineHTML

parseStmt_Interface() защищенный Метод

protected parseStmt_Interface ( Interface_ $node )
$node PhpParser\Node\Stmt\Interface_

parseStmt_Label() защищенный Метод

protected parseStmt_Label ( PhpParser\Node\Stmt\Label $node )
$node PhpParser\Node\Stmt\Label

parseStmt_Namespace() защищенный Метод

protected parseStmt_Namespace ( Namespace_ $node )
$node PhpParser\Node\Stmt\Namespace_

parseStmt_Nop() защищенный Метод

protected parseStmt_Nop ( PhpParser\Node\Stmt\Nop $node )
$node PhpParser\Node\Stmt\Nop

parseStmt_Property() защищенный Метод

protected parseStmt_Property ( Property $node )
$node PhpParser\Node\Stmt\Property

parseStmt_Return() защищенный Метод

protected parseStmt_Return ( PhpParser\Node\Stmt\Return_ $node )
$node PhpParser\Node\Stmt\Return_

parseStmt_Static() защищенный Метод

protected parseStmt_Static ( PhpParser\Node\Stmt\Static_ $node )
$node PhpParser\Node\Stmt\Static_

parseStmt_Switch() защищенный Метод

protected parseStmt_Switch ( PhpParser\Node\Stmt\Switch_ $node )
$node PhpParser\Node\Stmt\Switch_

parseStmt_Throw() защищенный Метод

protected parseStmt_Throw ( PhpParser\Node\Stmt\Throw_ $node )
$node PhpParser\Node\Stmt\Throw_

parseStmt_Trait() защищенный Метод

protected parseStmt_Trait ( Trait_ $node )
$node PhpParser\Node\Stmt\Trait_

parseStmt_TraitUse() защищенный Метод

protected parseStmt_TraitUse ( PhpParser\Node\Stmt\TraitUse $node )
$node PhpParser\Node\Stmt\TraitUse

parseStmt_TryCatch() защищенный Метод

protected parseStmt_TryCatch ( TryCatch $node )
$node PhpParser\Node\Stmt\TryCatch

parseStmt_Unset() защищенный Метод

protected parseStmt_Unset ( PhpParser\Node\Stmt\Unset_ $node )
$node PhpParser\Node\Stmt\Unset_

parseStmt_Use() защищенный Метод

protected parseStmt_Use ( PhpParser\Node\Stmt\Use_ $node )
$node PhpParser\Node\Stmt\Use_

parseStmt_While() защищенный Метод

protected parseStmt_While ( PhpParser\Node\Stmt\While_ $node )
$node PhpParser\Node\Stmt\While_

processAssertions() защищенный Метод

protected processAssertions ( Operand $op, Block $if, Block $else )
$op Operand
$if Block
$else Block

readAssertion() защищенный Метод

protected readAssertion ( Assertion $assert )
$assert Assertion

throwUndefinedLabelError() защищенный Метод

protected throwUndefinedLabelError ( )

Описание свойств

$anonId защищенное свойство

protected $anonId

$astParser защищенное свойство

protected $astParser

$astTraverser защищенное свойство

protected $astTraverser

$block защищенное свойство

protected Block,phpcfg $block
Результат Block

$ctx защищенное свойство

protected FuncContext,phpcfg $ctx
Результат FuncContext

$currentClass защищенное свойство

protected Literal,PHPCfg\Operand|null $currentClass
Результат PHPCfg\Operand\Literal | null

$currentNamespace защищенное свойство

protected $currentNamespace

$fileName защищенное свойство

protected $fileName

$script защищенное свойство

protected Script,phpcfg $script
Результат Script