tom.engine.adt.tomslot.types
Class Slot

java.lang.Object
  extended by tom.engine.adt.tomslot.TomSlotAbstractType
      extended by tom.engine.adt.tomslot.types.Slot
All Implemented Interfaces:
Comparable, shared.SharedObject, shared.SharedObjectWithID, Visitable
Direct Known Subclasses:
PairSlotAppl

public abstract class Slot
extends TomSlotAbstractType


Field Summary
protected static IdConverter idConv
           
 
Fields inherited from class tom.engine.adt.tomslot.TomSlotAbstractType
atermFactory, factory
 
Constructor Summary
protected Slot()
          Sole constructor.
 
Method Summary
static Slot fromStream(InputStream stream)
          Returns a tom.engine.adt.tomslot.types.Slot from a Stream without any conversion
static Slot fromStream(InputStream stream, ATermConverter atConv)
          Apply a conversion on the ATerm contained in the Stream and returns a tom.engine.adt.tomslot.types.Slot from it
static Slot fromString(String s)
          Returns a tom.engine.adt.tomslot.types.Slot from a String without any conversion
static Slot fromString(String s, ATermConverter atConv)
          Apply a conversion on the ATerm contained in the String and returns a tom.engine.adt.tomslot.types.Slot from it
static Slot fromTerm(aterm.ATerm trm)
          Returns a tom.engine.adt.tomslot.types.Slot from an ATerm without any conversion
static Slot fromTerm(aterm.ATerm trm, ATermConverter atConv)
          Apply a conversion on the ATerm and returns a tom.engine.adt.tomslot.types.Slot
 TomTerm getAppl()
          Returns the subterm corresponding to the slot Appl
 TomName getSlotName()
          Returns the subterm corresponding to the slot SlotName
 boolean isPairSlotAppl()
          Returns true if the term is rooted by the symbol PairSlotAppl
 int length()
          Returns the length of the list
 Slot reverse()
          Returns an inverted term
 Slot setAppl(TomTerm _arg)
          Returns a new term where the subterm corresponding to the slot Appl is replaced by the term given in argument.
 Slot setSlotName(TomName _arg)
          Returns a new term where the subterm corresponding to the slot SlotName 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.tomslot.TomSlotAbstractType
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

Slot

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

Method Detail

isPairSlotAppl

public boolean isPairSlotAppl()
Returns true if the term is rooted by the symbol PairSlotAppl

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

getAppl

public TomTerm getAppl()
Returns the subterm corresponding to the slot Appl

Returns:
the subterm corresponding to the slot Appl

setAppl

public Slot setAppl(TomTerm _arg)
Returns a new term where the subterm corresponding to the slot Appl 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 Appl is replaced by _arg

getSlotName

public TomName getSlotName()
Returns the subterm corresponding to the slot SlotName

Returns:
the subterm corresponding to the slot SlotName

setSlotName

public Slot setSlotName(TomName _arg)
Returns a new term where the subterm corresponding to the slot SlotName 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 SlotName is replaced by _arg

toATerm

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

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

fromTerm

public static Slot fromTerm(aterm.ATerm trm)
Returns a tom.engine.adt.tomslot.types.Slot 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 Slot fromString(String s)
Returns a tom.engine.adt.tomslot.types.Slot from a String without any conversion

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

fromStream

public static Slot fromStream(InputStream stream)
                       throws IOException
Returns a tom.engine.adt.tomslot.types.Slot 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 Slot fromTerm(aterm.ATerm trm,
                            ATermConverter atConv)
Apply a conversion on the ATerm and returns a tom.engine.adt.tomslot.types.Slot

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 Slot fromString(String s,
                              ATermConverter atConv)
Apply a conversion on the ATerm contained in the String and returns a tom.engine.adt.tomslot.types.Slot from it

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

fromStream

public static Slot fromStream(InputStream stream,
                              ATermConverter atConv)
                       throws IOException
Apply a conversion on the ATerm contained in the Stream and returns a tom.engine.adt.tomslot.types.Slot 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 Slot reverse()
Returns an inverted term

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