tom.engine.adt.il.types
Class Symbol

java.lang.Object
  extended by tom.engine.adt.il.IlAbstractType
      extended by tom.engine.adt.il.types.Symbol
All Implemented Interfaces:
Comparable, shared.SharedObject, shared.SharedObjectWithID, Visitable
Direct Known Subclasses:
fsymbol

public abstract class Symbol
extends IlAbstractType


Field Summary
protected static IdConverter idConv
           
 
Fields inherited from class tom.engine.adt.il.IlAbstractType
atermFactory, factory
 
Constructor Summary
protected Symbol()
          Sole constructor.
 
Method Summary
static Symbol fromStream(InputStream stream)
          Returns a tom.engine.adt.il.types.Symbol from a Stream without any conversion
static Symbol fromStream(InputStream stream, ATermConverter atConv)
          Apply a conversion on the ATerm contained in the Stream and returns a tom.engine.adt.il.types.Symbol from it
static Symbol fromString(String s)
          Returns a tom.engine.adt.il.types.Symbol from a String without any conversion
static Symbol fromString(String s, ATermConverter atConv)
          Apply a conversion on the ATerm contained in the String and returns a tom.engine.adt.il.types.Symbol from it
static Symbol fromTerm(aterm.ATerm trm)
          Returns a tom.engine.adt.il.types.Symbol from an ATerm without any conversion
static Symbol fromTerm(aterm.ATerm trm, ATermConverter atConv)
          Apply a conversion on the ATerm and returns a tom.engine.adt.il.types.Symbol
 String getName()
          Returns the subterm corresponding to the slot Name
 boolean isfsymbol()
          Returns true if the term is rooted by the symbol fsymbol
 int length()
          Returns the length of the list
 Symbol reverse()
          Returns an inverted term
 Symbol setName(String _arg)
          Returns a new term where the subterm corresponding to the slot Name is replaced by the term given in argument.
 aterm.ATerm toATerm()
          Returns an ATerm representation of this term.
 
Methods inherited from class tom.engine.adt.il.IlAbstractType
compareTo, compareToLPO, convertATermToBoolean, convertATermToChar, convertATermToDouble, convertATermToFloat, convertATermToInt, convertATermToLong, convertATermToString, getUniqueIdentifier, setUniqueIdentifier, symbolName, toString, toStringBuilder
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface shared.SharedObject
duplicate, equivalent, hashCode
 
Methods inherited from interface tom.library.sl.Visitable
getChildAt, getChildCount, getChildren, setChildAt, setChildren
 

Field Detail

idConv

protected static IdConverter idConv
Constructor Detail

Symbol

protected Symbol()
Sole constructor. (For invocation by subclass constructors, typically implicit.)

Method Detail

isfsymbol

public boolean isfsymbol()
Returns true if the term is rooted by the symbol fsymbol

Returns:
true if the term is rooted by the symbol fsymbol

getName

public String getName()
Returns the subterm corresponding to the slot Name

Returns:
the subterm corresponding to the slot Name

setName

public Symbol setName(String _arg)
Returns a new term where the subterm corresponding to the slot Name is replaced by the term given in argument. Note that there is no side-effect: a new term is returned and the original term is left unchanged

Parameters:
_arg - the value of the new subterm
Returns:
a new term where the subterm corresponding to the slot Name is replaced by _arg

toATerm

public aterm.ATerm toATerm()
Returns an ATerm representation of this term.

Specified by:
toATerm in class IlAbstractType
Returns:
null to indicate to sub-classes that they have to work

fromTerm

public static Symbol fromTerm(aterm.ATerm trm)
Returns a tom.engine.adt.il.types.Symbol from an ATerm without any conversion

Parameters:
trm - ATerm to handle to retrieve a Gom term
Returns:
the term from the ATerm

fromString

public static Symbol fromString(String s)
Returns a tom.engine.adt.il.types.Symbol from a String without any conversion

Parameters:
s - String containing the ATerm
Returns:
the term from the String

fromStream

public static Symbol fromStream(InputStream stream)
                         throws IOException
Returns a tom.engine.adt.il.types.Symbol from a Stream without any conversion

Parameters:
stream - stream containing the ATerm
Returns:
the term from the Stream
Throws:
IOException - if a problem occurs with the stream

fromTerm

public static Symbol fromTerm(aterm.ATerm trm,
                              ATermConverter atConv)
Apply a conversion on the ATerm and returns a tom.engine.adt.il.types.Symbol

Parameters:
trm - ATerm to convert into a Gom term
atConv - ATermConverter used to convert the ATerm
Returns:
the Gom term
Throws:
IllegalArgumentException

fromString

public static Symbol fromString(String s,
                                ATermConverter atConv)
Apply a conversion on the ATerm contained in the String and returns a tom.engine.adt.il.types.Symbol from it

Parameters:
s - String containing the ATerm
atConv - ATerm Converter used to convert the ATerm
Returns:
the Gom term

fromStream

public static Symbol fromStream(InputStream stream,
                                ATermConverter atConv)
                         throws IOException
Apply a conversion on the ATerm contained in the Stream and returns a tom.engine.adt.il.types.Symbol from it

Parameters:
stream - stream containing the ATerm
atConv - ATerm Converter used to convert the ATerm
Returns:
the Gom term
Throws:
IOException

length

public int length()
Returns the length of the list

Returns:
the length of the list
Throws:
IllegalArgumentException - if the term is not a list

reverse

public Symbol reverse()
Returns an inverted term

Returns:
the inverted list
Throws:
IllegalArgumentException - if the term is not a list