code.subst
Class Subst

java.lang.Object
  extended by code.subst.Subst
Direct Known Subclasses:
IdSubst, VarSubst

public abstract class Subst
extends java.lang.Object

Abstract base class of all substitutions. A substitution is a mapping from variables to terms. The mapping is computed incrementally.

Since:
June 17, 2003
Author:
Sergio Antoy

Field Summary
static IdSubst id
          Identity substitution.
 
Constructor Summary
Subst()
           
 
Method Summary
abstract
<R,T> R
accept(code.subst.visitor.SubstVisitor<R,T> v, T o)
           
abstract  Term getBinding(Variable variable)
          Return the binding of a variable.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

id

public static final IdSubst id
Identity substitution. It is a static constant since there is only one identity. The constructor of identity substitutions is protected, thus this constant is the only device to obtain an identity substitution.

Constructor Detail

Subst

public Subst()
Method Detail

getBinding

public abstract Term getBinding(Variable variable)
Return the binding of a variable.

Parameters:
variable - The variable to tell the binding
Returns:
The binding of the argument.

accept

public abstract <R,T> R accept(code.subst.visitor.SubstVisitor<R,T> v,
                               T o)