Constant propogation for variables in PHP.
Strategy summary
|
add-php-constant-rule
|
n/a
|
variables.str
|
add-php-constant-rule(Strategy put-valid)
|
n/a
|
variables.str
|
add-php-variable-identifier-rule
|
n/a
|
variables.str
|
add-php-variable-rule
|
n/a
|
variables.str
|
add-php-variable-rule(Strategy valid-put)
|
n/a
|
variables.str
|
array-access-on-array(Strategy main, Strategy get, Strategy set, Strategy valid-get)
|
Special case for the GLOBALS array
|
variables.str
|
array-access-on-other
|
n/a
|
variables.str
|
array-access-on-string
|
n/a
|
variables.str
|
generic-arrayaccess-value
|
Generic array-acces for botht the special case for GLOBALS and the normal case
|
variables.str
|
generic-arrayaccess-value(Strategy valid-get)
|
n/a
|
variables.str
|
get-php-value-identifier
|
Makes a new identifier that is unique for each variable
|
variables.str
|
get-php-value-identifier-pair
|
n/a
|
variables.str
|
get-php-value-identifier-pair(Strategy valid-get)
|
n/a
|
variables.str
|
is-globals-array
|
n/a
|
variables.str
|
php-constant-get-value
|
n/a
|
variables.str
|
php-constant-get-value(Strategy get-valid)
|
n/a
|
variables.str
|
php-constant-put-value(ATerm ident, ATerm val)
|
n/a
|
variables.str
|
php-get-raw-variable-name
|
Extracts the name of a variable
|
variables.str
|
php-val-id-add-rule(ATerm key, ATerm val)
|
n/a
|
variables.str
|
php-val-id-get-rule
|
n/a
|
variables.str
|
php-val-id-remove-rule(ATerm key)
|
n/a
|
variables.str
|
php-variable-value
|
Get's the real value of an variable
|
variables.str
|
php-variable-value(Strategy s)
|
n/a
|
variables.str
|
remove-php-variable-rule
|
Removes the rule that maps a variable to a value
|
variables.str
|
remove-php-variable-rule(Strategy valid-remove)
|
n/a
|
variables.str
|
variable-const-prop(Strategy main, Strategy set, Strategy get, Strategy get-valid)
|
Variable-construct
|
variables.str
|
variable-const-prop(Strategy main, Strategy set, Strategy get, Strategy get-valid)
|
ConstantVariable-construct
|
variables.str
|
variable-const-prop(Strategy main, Strategy set, Strategy get, Strategy get-valid)
|
n/a
|
variables.str
|
variable-const-prop(Strategy main, Strategy set, Strategy get, Strategy get-valid)
|
n/a
|
variables.str
|
variable-const-prop(Strategy main, Strategy set, Strategy get, Strategy get-valid, Strategy array-value, Strategy string-value, Strategy other-value)
|
n/a
|
variables.str
|
Strategy details
|
ATerm
|
array-access-on-array(Strategy main, Strategy get, Strategy set, Strategy valid-get)
|
Special case for the GLOBALS array. This array holds all variables, sowe try to extract the value of that variable first. If this fails then wetry the integer value as a key.
|
|
ATerm
|
generic-arrayaccess-value
|
Generic array-acces for botht the special case for GLOBALS and thenormal case.
|
|
ATerm
|
get-php-value-identifier
|
Makes a new identifier that is unique for each variable.Reuses an old identifier if it exists, otherwise it uses thename of the variable, which should be unique in the program.
|
|
ATerm
|
php-get-raw-variable-name
|
Extracts the name of a variable. This strategy handlesall the cases that can contain a variable name.
type
|
Simple(_) OR Braced() -> String
|
|
|
ATerm
|
php-variable-value
|
Get's the real value of an variable. This means applying the strategyEvalPHPVar twice. First getting the pointer to the value and then gettingthe real value.
type
|
String -> PHPSimpleValue
|
|
|
ATerm
|
remove-php-variable-rule
|
Removes the rule that maps a variable to a value.
|
|
ATerm
|
variable-const-prop(Strategy main, Strategy set, Strategy get, Strategy get-valid)
|
Variable-construct
|
|
ATerm
|
variable-const-prop(Strategy main, Strategy set, Strategy get, Strategy get-valid)
|
ConstantVariable-construct
|
|
ATerm
|
variable-const-prop(Strategy main, Strategy set, Strategy get, Strategy get-valid)
|
No information available.
type
|
IndirectReference(_) -> PHPSimpleValue
|
|
|