org.xmloperator.lambda2.term.model
Interface Abstraction

All Superinterfaces:
Term
All Known Implementing Classes:
Abstraction0Impl

public interface Abstraction
extends Term

Abstraction of a Term relatively to a set of linear variables.


Field Summary
 
Fields inherited from interface org.xmloperator.lambda2.term.model.Term
TYPE_ABSTRACTION, TYPE_APPLICATION, TYPE_VARIABLE
 
Method Summary
 Term getBody()
          Returns the body of this Abstraction.
 Variable getBoundVariable(int index)
          Returns the bound Variable of this Abstraction, with the given index.
 int getBoundVariableCount()
          Returns the count of linear bound variables of this Abstraction.
 
Methods inherited from interface org.xmloperator.lambda2.term.model.Term
buildAbstraction, buildAbstraction, buildAbstraction, buildApplication, buildApplication, freeVariables, getTermType, isAbstraction, isApplication, isVariable, toText
 

Method Detail

getBody

public Term getBody()
Returns the body of this Abstraction.

Returns:
the body of this Abstraction.

getBoundVariableCount

public int getBoundVariableCount()
Returns the count of linear bound variables of this Abstraction.

Returns:
the count of linear bound variables of this Abstraction.

getBoundVariable

public Variable getBoundVariable(int index)
Returns the bound Variable of this Abstraction, with the given index.

Parameters:
index - an index between 0 and boundVariableCount -1.
Returns:
the bound Variable of this Abstraction, with the given index.