Evaluation of statements in PHP.
Strategy summary
|
eval-php-cases(Strategy s, Strategy sunit, Strategy rule-union, ATerm unit)
|
n/a
|
statements.str
|
php-evaluate-case(Strategy main)
|
Evaluates a case statement
|
statements.str
|
php-evaluate-elseif(Strategy main)
|
n/a
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
Echo, map evaluation over all expressions in list
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
The Declare-construct
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
If-statement without else or else-if
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
n/a
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
If-statement with else or else-if
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
n/a
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
If-statement with else and no else-ifs
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
If-statement with else and else-ifs
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
n/a
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
n/a
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
n/a
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
Evaluates a while
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
n/a
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
Evaluates a dowhile
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
Evaluates a for
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
n/a
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
Evaluates a foreach
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
n/a
|
statements.str
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
n/a
|
statements.str
|
Strategy details
|
ATerm
|
php-evaluate-case(Strategy main)
|
Evaluates a case statement
|
|
ATerm
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
Echo, map evaluation over all expressions in list
|
|
ATerm
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
The Declare-construct
|
|
ATerm
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
If-statement without else or else-if.Condition is always evaluated, block is only checked.
type
|
If(cond,stats) -> If(cond,stats)
|
|
|
ATerm
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
If-statement with else or else-if.Condition is always evaluated, block is only checked.
type
|
If(cond,stats,List(ElseIf)) -> If(cond,stats,List(ElseIf))
|
|
|
ATerm
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
If-statement with else and no else-ifs.Condition is always evaluated, block is only checked.
type
|
If(cond,stats,List(ElseIf)) -> If(cond,stats,List(ElseIf))
|
|
|
ATerm
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
If-statement with else and else-ifs.Condition is always evaluated, block is only checked.
type
|
If(cond,stats,List(ElseIf)) -> If(cond,stats,List(ElseIf))
|
|
|
ATerm
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
Evaluates a while. Condition is evaluated atleast onceFile within a while might be included, but nothing is sure.
|
|
ATerm
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
Evaluates a dowhile.DoWhile always takes 1 iteration for sure. After this it acts like a normal while.
type
|
DoWhile() -> DoWhile()
|
|
|
ATerm
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
Evaluates a for.Is almost like the normal while. Initialization and test are performedatleast once while the rest is performed on every iteration.
|
|
ATerm
|
statement-const-prop(Strategy main, Strategy rule-union, Strategy rule-intersect)
|
Evaluates a foreach.Foreach is just a while with some extra initializations.
type
|
ForEach() -> ForEach()
|
|
|