code.term
Interface TermImpl

All Known Implementing Classes:
TermImplBuiltin, TermImplChar, TermImplFloat, TermImplInt, TermImplOpaque, TermImplRef, TermImplString, TermImplUser, Variable

public interface TermImpl

The interface that all term implmentation must implement. This interface just has data accessor methods (except for accept). All methods that perform "actions" on the implementation are put into vistors and utilize the implementations accept method.

Since:
June 17, 2003
Author:
Sergio Antoy

Method Summary
<R,T> R
accept(code.term.visitor.TermVisitor<R,T> v, T o)
          This method accepts the visitor.
 Term[] getArgument()
          Returns the list of arguments for this term.
 Term getArgument(byte number)
          Gets the argument attribute of the TermImpl object
 Instruction[] getCode()
          Gets the code attribute of the TermImpl object
 byte getKind()
          Gets the kind attribute of the TermImpl object
 int getRoot()
          Returns the root id for this term.
 java.lang.String getRootSymbol()
          Returns the root symbol.
 boolean isHNF()
          Gets the hNF attribute of the TermImpl object
 boolean isNF()
          Gets the nF attribute of the TermImpl object
 

Method Detail

getRoot

int getRoot()
Returns the root id for this term.

Returns:
The root value

getRootSymbol

java.lang.String getRootSymbol()
Returns the root symbol.

Returns:
The rootSymbol value

getArgument

Term[] getArgument()
Returns the list of arguments for this term.

Returns:
The argument value

getArgument

Term getArgument(byte number)
Gets the argument attribute of the TermImpl object

Parameters:
number - Description of the Parameter
Returns:
The argument value

getKind

byte getKind()
             throws UndefinedSymbol
Gets the kind attribute of the TermImpl object

Returns:
The kind value
Throws:
UndefinedSymbol - Description of the Exception

isHNF

boolean isHNF()
Gets the hNF attribute of the TermImpl object

Returns:
The hNF value

isNF

boolean isNF()
Gets the nF attribute of the TermImpl object

Returns:
The nF value

getCode

Instruction[] getCode()
                      throws UndefinedSymbol
Gets the code attribute of the TermImpl object

Returns:
The code value
Throws:
UndefinedSymbol - Description of the Exception

accept

<R,T> R accept(code.term.visitor.TermVisitor<R,T> v,
               T o)
This method accepts the visitor. The code for this method should be return v.accept(this,o);

Parameters:
v -
o -
Returns:
Object