Class RelationEvaluation
java.lang.Object
tools.refinery.interpreter.matchers.psystem.BasePConstraint
tools.refinery.interpreter.matchers.psystem.EnumerablePConstraint
tools.refinery.interpreter.matchers.psystem.basicdeferred.RelationEvaluation
- All Implemented Interfaces:
IMultiQueryReference
,PConstraint
,PTraceable
A constraint which prescribes the evaluation of custom Java logic that takes an arbitrary number of input relations
and produces one output relation. Contrast this to
ExpressionEvaluation
, which produces a single output value
given an input tuple.
The assumption is that the relation evaluation logic is not incremental, that is, it can only perform from-scratch
computation of the output relation given the complete input relations. To this end, the relation evaluator always
receives the complete input relations with all their contents as input. However, the evaluator engine makes sure that
the output of the relation evaluation is at least "seemingly" incremental. This means that the underlying computation
network computes the delta on the output compared to the previous output and only propagates the delta further.- Since:
- 2.8
-
Field Summary
Fields inherited from class tools.refinery.interpreter.matchers.psystem.EnumerablePConstraint
variablesTuple
Fields inherited from class tools.refinery.interpreter.matchers.psystem.BasePConstraint
pBody
Fields inherited from interface tools.refinery.interpreter.matchers.psystem.PConstraint
COMPARE_BY_MONOTONOUS_ID
-
Constructor Summary
ConstructorsConstructorDescriptionRelationEvaluation
(PBody body, Tuple variablesTuple, List<PQuery> inputQueries, IRelationEvaluator evaluator) -
Method Summary
Modifier and TypeMethodDescriptionMethods inherited from class tools.refinery.interpreter.matchers.psystem.EnumerablePConstraint
doReplaceVariable, getDeducedVariables, getVariableInTuple, getVariablesTuple, toStringRest, toStringRestRest
Methods inherited from class tools.refinery.interpreter.matchers.psystem.BasePConstraint
checkSanity, delete, getAffectedVariables, getBody, getFunctionalDependencies, getMonotonousID, getPSystem, replaceVariable, toString
-
Constructor Details
-
RelationEvaluation
public RelationEvaluation(PBody body, Tuple variablesTuple, List<PQuery> inputQueries, IRelationEvaluator evaluator)
-
-
Method Details
-
getEvaluator
-
getReferredQueries
- Specified by:
getReferredQueries
in interfaceIMultiQueryReference
-