public class BuildHelper
extends java.lang.Object
Constructor and Description |
---|
BuildHelper() |
Modifier and Type | Method and Description |
---|---|
static boolean |
areAllVariablesDetermined(SubPlan plan,
java.util.Collection<PVariable> determining,
IQueryMetaContext context) |
static boolean |
areVariablesDetermined(SubPlan plan,
java.util.Collection<PVariable> determining,
java.util.Collection<PVariable> determined,
IQueryMetaContext context) |
static void |
finalCheck(PBody pSystem,
SubPlan plan,
IQueryMetaContext context)
Verifies whether all constraints are enforced and exported parameters are present.
|
static PConstraint |
getAnyUnenforcedConstraint(PBody pSystem,
SubPlan plan)
Finds an arbitrary constraint that is not enforced at the given plan.
|
static SubPlan |
trimUnneccessaryVariables(SubPlanFactory planFactory,
SubPlan plan,
boolean onlyIfNotDetermined,
IQueryMetaContext context)
Reduces the number of tuples by trimming (existentially quantifying) the set of variables that
are visible in the subplan,
are not exported parameters,
have all their constraints already enforced in the subplan,
and thus will not be needed anymore.
|
public static SubPlan trimUnneccessaryVariables(SubPlanFactory planFactory, SubPlan plan, boolean onlyIfNotDetermined, IQueryMetaContext context)
onlyIfNotDetermined
- if true, no trimming performed unless there is at least one such variablepublic static boolean areAllVariablesDetermined(SubPlan plan, java.util.Collection<PVariable> determining, IQueryMetaContext context)
public static boolean areVariablesDetermined(SubPlan plan, java.util.Collection<PVariable> determining, java.util.Collection<PVariable> determined, IQueryMetaContext context)
public static PConstraint getAnyUnenforcedConstraint(PBody pSystem, SubPlan plan)
pSystem
- plan
- public static void finalCheck(PBody pSystem, SubPlan plan, IQueryMetaContext context) throws QueryProcessingException
pSystem
- plan
- QueryProcessingException