public class PConstraintInfo extends java.lang.Object implements IConstraintEvaluationContext
| Constructor and Description |
|---|
PConstraintInfo(PConstraint constraint,
java.util.Set<PVariable> boundMaskVariables,
java.util.Set<PVariable> freeMaskVariables,
java.util.Set<PConstraintInfo> sameWithDifferentBindings,
IQueryBackendContext context,
com.google.common.base.Function<IConstraintEvaluationContext,java.lang.Double> costFunction)
Instantiates the wrapper
|
| Modifier and Type | Method and Description |
|---|---|
java.util.Set<PVariable> |
getBoundVariables()
Bound variables at the time of evaluating the constraint
|
PConstraintCategory |
getCategory(PBody pBody,
java.util.Set<PVariable> boundVariables) |
PConstraint |
getConstraint()
Get the constraint to be evaluated
|
double |
getCost() |
java.util.Set<PVariable> |
getFreeVariables()
Unbound variables at the time of evaluating the constraint
|
QueryAnalyzer |
getQueryAnalyzer() |
IQueryRuntimeContext |
getRuntimeContext() |
java.util.Set<PConstraintInfo> |
getSameWithDifferentBindings() |
IQueryResultProviderAccess |
resultProviderAccess() |
java.lang.String |
toString() |
public PConstraintInfo(PConstraint constraint, java.util.Set<PVariable> boundMaskVariables, java.util.Set<PVariable> freeMaskVariables, java.util.Set<PConstraintInfo> sameWithDifferentBindings, IQueryBackendContext context, com.google.common.base.Function<IConstraintEvaluationContext,java.lang.Double> costFunction)
constraintfor - which the information is added and storedboundMaskVariablesthe - bound variables in the operation maskfreeMaskVariablesthe - free variables in the operation masksameWithDifferentBindingsduring - the planning process, multiple operation adornments are considered for a constraint, so that it
is represented by multiple plan infos. This parameter contains all plan infos that are for the same
constraint, but with different adornmentcontext - the query backend contextpublic IQueryRuntimeContext getRuntimeContext()
getRuntimeContext in interface IConstraintEvaluationContextpublic QueryAnalyzer getQueryAnalyzer()
getQueryAnalyzer in interface IConstraintEvaluationContextpublic PConstraint getConstraint()
IConstraintEvaluationContextgetConstraint in interface IConstraintEvaluationContextpublic java.util.Set<PVariable> getFreeVariables()
IConstraintEvaluationContextgetFreeVariables in interface IConstraintEvaluationContextpublic java.util.Set<PVariable> getBoundVariables()
IConstraintEvaluationContextgetBoundVariables in interface IConstraintEvaluationContextpublic java.util.Set<PConstraintInfo> getSameWithDifferentBindings()
public double getCost()
public PConstraintCategory getCategory(PBody pBody, java.util.Set<PVariable> boundVariables)
public java.lang.String toString()
toString in class java.lang.Objectpublic IQueryResultProviderAccess resultProviderAccess()
resultProviderAccess in interface IConstraintEvaluationContext