public class TypeFilterConstraint extends VariableDeferredPConstraint implements ITypeConstraint
IInputKey
.
The InputKey is typically not enumerable. If it is enumerable, use TypeConstraint
instead, so that the PConstraint carries over the property of enumerability.
ITypeConstraint.TypeConstraintUtil
PConstraint.CompareByMonotonousID
Constructor and Description |
---|
TypeFilterConstraint(PBody pBody,
Tuple variablesTuple,
IInputKey inputKey) |
Modifier and Type | Method and Description |
---|---|
java.util.Set<PVariable> |
getDeducedVariables()
The set of variables whose potential values can be enumerated (once all non-deduced variables have known values).
|
java.util.Set<PVariable> |
getDeferringVariables() |
TypeJudgement |
getEquivalentJudgement() |
java.util.Map<java.util.Set<PVariable>,java.util.Set<PVariable>> |
getFunctionalDependencies(IQueryMetaContext context)
A (preferably minimal) cover of known functional dependencies between variables.
|
java.util.Set<TypeJudgement> |
getImpliedJudgements(IQueryMetaContext context)
Returns type information implied by this constraint.
|
IInputKey |
getInputKey() |
Tuple |
getVariablesTuple() |
isReadyAt
checkSanity, delete, getAffectedVariables, getMonotonousID, getPSystem, replaceVariable, toString
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
checkSanity, delete, getAffectedVariables, getMonotonousID, replaceVariable
public Tuple getVariablesTuple()
public IInputKey getInputKey()
public TypeJudgement getEquivalentJudgement()
getEquivalentJudgement
in interface ITypeConstraint
public java.util.Set<TypeJudgement> getImpliedJudgements(IQueryMetaContext context)
ITypeInfoProviderConstraint
getImpliedJudgements
in interface ITypeInfoProviderConstraint
public java.util.Set<PVariable> getDeducedVariables()
PConstraint
getDeducedVariables
in interface PConstraint
public java.util.Set<PVariable> getDeferringVariables()
getDeferringVariables
in class VariableDeferredPConstraint
public java.util.Map<java.util.Set<PVariable>,java.util.Set<PVariable>> getFunctionalDependencies(IQueryMetaContext context)
PConstraint
getFunctionalDependencies
in interface PConstraint
getFunctionalDependencies
in class BasePConstraint