Interface IMatchExpression<T>
-
- All Superinterfaces:
IExpression
public interface IMatchExpression<T> extends IExpression
A match expression is a boolean expression matching a candidate of a specific type. AnIEvaluationContextis needed in order to evaluate a match and this class provides two ways of doing that. Either a context is created first and then reused in several subsequent calls toisMatch(IEvaluationContext, Object)or, if no repeated calls are expected, theisMatch(Object)method can be used. It will then create a context on each call.- Since:
- 2.0
-
-
Field Summary
-
Fields inherited from interface org.eclipse.equinox.p2.metadata.expression.IExpression
TYPE_ALL, TYPE_AND, TYPE_ARRAY, TYPE_ASSIGNMENT, TYPE_AT, TYPE_COLLECT, TYPE_CONDITION, TYPE_EQUALS, TYPE_EXISTS, TYPE_FIRST, TYPE_FLATTEN, TYPE_FUNCTION, TYPE_GREATER, TYPE_GREATER_EQUAL, TYPE_INTERSECT, TYPE_LAMBDA, TYPE_LATEST, TYPE_LESS, TYPE_LESS_EQUAL, TYPE_LIMIT, TYPE_LITERAL, TYPE_MATCHES, TYPE_MEMBER, TYPE_NOT, TYPE_NOT_EQUALS, TYPE_OR, TYPE_PARAMETER, TYPE_PIPE, TYPE_SELECT, TYPE_TRAVERSE, TYPE_UNION, TYPE_UNIQUE, TYPE_VARIABLE
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description IEvaluationContextcreateContext()Creates a new context to be passed to repeated subsequent evaluations.Object[]getParameters()Returns the parameters that this match expression was created with.booleanisMatch(IEvaluationContext context, T candidate)This method assignscandidateto the 'this' variable of thecontextand then evaluates the expression.booleanisMatch(T candidate)This method creates a new evaluation context and assigns thecandidateto the 'this' variable of thecontextand then evaluates the expression.-
Methods inherited from interface org.eclipse.equinox.p2.metadata.expression.IExpression
accept, evaluate, getExpressionType, toLDAPString, toString
-
-
-
-
Method Detail
-
createContext
IEvaluationContext createContext()
Creates a new context to be passed to repeated subsequent evaluations. The context will introduce 'this' as an uninitialized variable and make the parameters available.
- Returns:
- A new evaluation context.
-
getParameters
Object[] getParameters()
Returns the parameters that this match expression was created with.- Returns:
- An array of parameters, possibly empty but never
null.
-
isMatch
boolean isMatch(T candidate)
This method creates a new evaluation context and assigns thecandidateto the 'this' variable of thecontextand then evaluates the expression. This is essentially a short form forisMatch(createContext(), candidate)
.- Parameters:
candidate- The object to test.- Returns:
- the result of the evaluation.
-
isMatch
boolean isMatch(IEvaluationContext context, T candidate)
This method assignscandidateto the 'this' variable of thecontextand then evaluates the expression.- Parameters:
context- A contextcandidate- The object to test.- Returns:
- the result of the evaluation.
-
-