Interface IContextExpression<T>
-
- All Superinterfaces:
IExpression
public interface IContextExpression<T> extends IExpression
This is an expression that will need access to the global variableeverything
.- 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 IEvaluationContext
createContext(Class<? extends T> elementClass, Iterator<T> everything)
Creates a new context to be passed to a subsequent evaluation.IEvaluationContext
createContext(Class<? extends T> elementClass, IIndexProvider<T> indexProvider)
Creates a new context to be passed to a subsequent evaluation.Object[]
getParameters()
Returns the parameters that this context expression was created with.Iterator<T>
iterator(IEvaluationContext context)
Evaluate the expression and return the expected collection result as an iterator-
Methods inherited from interface org.eclipse.equinox.p2.metadata.expression.IExpression
accept, evaluate, getExpressionType, toLDAPString, toString
-
-
-
-
Method Detail
-
createContext
IEvaluationContext createContext(Class<? extends T> elementClass, IIndexProvider<T> indexProvider)
Creates a new context to be passed to a subsequent evaluation. The context will have the variable 'everything' set to an expression that represents the
everything
iterator filtered for instances ofelementClass
.The values of the iterator will be copied if necessary (when everything is referenced more then once).
- Parameters:
elementClass
- the class of the iterator elementsindexProvider
- The index provider that represents all queried material.- Returns:
- A new evaluation context.
-
createContext
IEvaluationContext createContext(Class<? extends T> elementClass, Iterator<T> everything)
Creates a new context to be passed to a subsequent evaluation. The context will have the variable 'everything' set to an expression that represents the
everything
iterator filtered for instances ofelementClass
.The values of the iterator will be copied if necessary (when everything is referenced more then once).
- Parameters:
elementClass
- the class of the iterator elementseverything
- The iterator that represents all queried material.- Returns:
- A new evaluation context.
-
getParameters
Object[] getParameters()
Returns the parameters that this context expression was created with.- Returns:
- An array of parameters, possibly empty but never
null
.
-
iterator
Iterator<T> iterator(IEvaluationContext context)
Evaluate the expression and return the expected collection result as an iterator- Parameters:
context
- The evaluation context- Returns:
- The result of the evaluation.
-
-