
it.unibz.inf.ontop.iq.node.impl.QueryModifierNodeImpl Maven / Gradle / Ivy
package it.unibz.inf.ontop.iq.node.impl;
import com.google.common.collect.ImmutableSet;
import it.unibz.inf.ontop.injection.IntermediateQueryFactory;
import it.unibz.inf.ontop.iq.IQTree;
import it.unibz.inf.ontop.iq.node.QueryModifierNode;
import it.unibz.inf.ontop.iq.node.VariableNullability;
import it.unibz.inf.ontop.model.term.ImmutableExpression;
import it.unibz.inf.ontop.model.term.NonVariableTerm;
import it.unibz.inf.ontop.model.term.Variable;
import it.unibz.inf.ontop.substitution.Substitution;
import it.unibz.inf.ontop.utils.VariableGenerator;
public abstract class QueryModifierNodeImpl extends QueryNodeImpl implements QueryModifierNode {
protected QueryModifierNodeImpl(IntermediateQueryFactory iqFactory) {
super(iqFactory);
}
@Override
public VariableNullability getVariableNullability(IQTree child) {
return child.getVariableNullability();
}
@Override
public boolean isConstructed(Variable variable, IQTree child) {
return child.isConstructed(variable);
}
@Override
public IQTree propagateDownConstraint(ImmutableExpression constraint, IQTree child, VariableGenerator variableGenerator) {
return iqFactory.createUnaryIQTree(this, child.propagateDownConstraint(constraint, variableGenerator));
}
@Override
public ImmutableSet> getPossibleVariableDefinitions(IQTree child) {
return child.getPossibleVariableDefinitions();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy