Package org.eclipse.core.expressions
Class ExpressionInfo
java.lang.Object
org.eclipse.core.expressions.ExpressionInfo
A status object describing information about an expression tree.
This information can for example be used to decide whether an
expression tree has to be reevaluated if the value of some
variables changes.
This class is not intended to be extended by clients.
- Since:
- 3.2
- Restriction:
- This class is not intended to be subclassed by clients.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Marks the given property (the fully qualified name of aPropertyTester
property) as accessed.void
addMisBehavingExpressionType
(Class<?> clazz) Adds the given class to the list of misbehaving classes.void
addVariableNameAccess
(String name) Marks the given variable as accessed.String[]
Returns the set of accessedPropertyTester
properties.String[]
Returns the set of accessed variables.Class<?>[]
Returns the set of expression types which don't reimplement the newExpression.collectExpressionInfo(ExpressionInfo)
method.boolean
Returnstrue
if the default variable is accessed by the expression tree.boolean
Returnstrue
if the system property is accessed by the expression tree.void
Marks the default variable as accessed.void
Marks the system property as accessed.void
merge
(ExpressionInfo other) Merges this reevaluation information with the given info.void
Merges this reevaluation information with the given info ignoring the default variable access.
-
Constructor Details
-
ExpressionInfo
public ExpressionInfo()
-
-
Method Details
-
hasDefaultVariableAccess
public boolean hasDefaultVariableAccess()Returnstrue
if the default variable is accessed by the expression tree.- Returns:
- whether the default variable is accessed or not
-
markDefaultVariableAccessed
public void markDefaultVariableAccessed()Marks the default variable as accessed. -
hasSystemPropertyAccess
public boolean hasSystemPropertyAccess()Returnstrue
if the system property is accessed by the expression tree.- Returns:
- whether the system property is accessed or not
-
markSystemPropertyAccessed
public void markSystemPropertyAccessed()Marks the system property as accessed. -
getAccessedVariableNames
Returns the set of accessed variables.- Returns:
- the set of accessed variables
-
addVariableNameAccess
Marks the given variable as accessed.- Parameters:
name
- the accessed variable
-
getAccessedPropertyNames
Returns the set of accessedPropertyTester
properties.- Returns:
- the fully qualified names of accessed properties, or an empty array
- Since:
- 3.4
- See Also:
-
addAccessedPropertyName
Marks the given property (the fully qualified name of aPropertyTester
property) as accessed.- Parameters:
name
- the fully qualified property name- Since:
- 3.4
- See Also:
-
getMisbehavingExpressionTypes
Returns the set of expression types which don't reimplement the newExpression.collectExpressionInfo(ExpressionInfo)
method. If one expression in the expression tree didn't implement the method, then no optimizations can be done. Returnsnull
if all expressions implement the method.- Returns:
- the set of expression types which don't implement the
computeReevaluationInfo
method, ornull
if all do
-
addMisBehavingExpressionType
Adds the given class to the list of misbehaving classes.- Parameters:
clazz
- the class to add.
-
merge
Merges this reevaluation information with the given info.- Parameters:
other
- the information to merge with
-
mergeExceptDefaultVariable
Merges this reevaluation information with the given info ignoring the default variable access.- Parameters:
other
- the information to merge with
-