Interface Substitutable<R>

Type Parameters:
R - the substituted result type
All Known Subinterfaces:
Atom, ComputedAtom, Constant, EvaluableFunction, FOFormula, FOFormulaConjunction, FOFormulaDisjunction, FOFormulaNegation, FOQuery<Formula>, Literal<T>, LogicalFunctionalTerm, SpecializableLogicalFunctionalTerm, Term, Variable
All Known Implementing Classes:
AbstractLogicalFunctionalTermImpl, AtomImpl, CompoundFOFormula, ComputedAtomImpl, ConstantImpl, EvaluableFunctionImpl, FOConjunctionFactBaseWrapper, FOConjunctionImpl, FODisjunctionImpl, FONegationImpl, FOQueryImpl, FreshVariableImpl, GroundFunctionalTermImpl, LiteralImpl, SpecializableLogicalFunctionalTermImpl, TermPartition, VariableImpl

public interface Substitutable<R>
Object that can produce an image of itself under a substitution.
  • Method Summary

    Modifier and Type
    Method
    Description
    default R
    Applies the given substitution to this object.
    applySubstitution(Substitution substitution, boolean evaluate)
    Applies the given substitution to this object.
  • Method Details

    • applySubstitution

      default R applySubstitution(Substitution substitution)
      Applies the given substitution to this object.
      Parameters:
      substitution - the substitution to apply
      Returns:
      a new instance with the substitution applied
    • applySubstitution

      R applySubstitution(Substitution substitution, boolean evaluate)
      Applies the given substitution to this object.
      Parameters:
      substitution - the substitution to apply
      evaluate - whether evaluable subterms should be forced
      Returns:
      a new instance with the substitution applied