aterm
Interface ATermFactory

All Known Implementing Classes:
PureFactory

public interface ATermFactory

An ATermFactory is responsible for making new ATerms. A factory can create a new ATerm by parsing a String, by making it via one of the many "make" methods, or by reading it from an InputStream.


Field Summary
static byte START_OF_SHARED_TEXT_FILE
           
 
Method Summary
 aterm.ATerm importTerm(aterm.ATerm term)
          Creates an ATerm by importing it from another ATermFactory.
 aterm.ATerm make(aterm.ATerm pattern, java.util.List args)
          Creates a new ATerm given a pattern and a list of arguments.
 aterm.ATerm make(java.lang.String trm)
          Equivalent of parse.
 aterm.ATerm make(java.lang.String pattern, java.util.List args)
          Creates a new ATerm given a string pattern and a list of arguments.
 aterm.ATerm make(java.lang.String pattern, java.lang.Object arg1)
          Creates a new ATerm given a pattern and a single argument.
 aterm.ATerm make(java.lang.String pattern, java.lang.Object arg1, java.lang.Object arg2)
          Creates a new ATerm given a pattern and a fixed number of arguments.
 aterm.ATerm make(java.lang.String pattern, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3)
          Creates a new ATerm given a pattern and a fixed number of arguments.
 aterm.ATerm make(java.lang.String pattern, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4)
          Creates a new ATerm given a pattern and a fixed number of arguments.
 aterm.ATerm make(java.lang.String pattern, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5)
          Creates a new ATerm given a pattern and a fixed number of arguments.
 aterm.ATerm make(java.lang.String pattern, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5, java.lang.Object arg6)
          Creates a new ATerm given a pattern and a fixed number of arguments.
 aterm.ATerm make(java.lang.String pattern, java.lang.Object arg1, java.lang.Object arg2, java.lang.Object arg3, java.lang.Object arg4, java.lang.Object arg5, java.lang.Object arg6, java.lang.Object arg7)
          Creates a new ATerm given a pattern and a fixed number of arguments.
 aterm.AFun makeAFun(java.lang.String name, int arity, boolean isQuoted)
          Creates an AFun object
 aterm.ATermAppl makeAppl(aterm.AFun fun)
          Creates a function application.
 aterm.ATermAppl makeAppl(aterm.AFun fun, aterm.ATerm arg)
          Creates a function application.
 aterm.ATermAppl makeAppl(aterm.AFun fun, aterm.ATerm[] args)
          Creates a function application.
 aterm.ATermAppl makeAppl(aterm.AFun fun, aterm.ATerm arg1, aterm.ATerm arg2)
          Creates a function application.
 aterm.ATermAppl makeAppl(aterm.AFun fun, aterm.ATerm arg1, aterm.ATerm arg2, aterm.ATerm arg3)
          Creates a function application.
 aterm.ATermAppl makeAppl(aterm.AFun fun, aterm.ATerm arg1, aterm.ATerm arg2, aterm.ATerm arg3, aterm.ATerm arg4)
          Creates a function application.
 aterm.ATermAppl makeAppl(aterm.AFun fun, aterm.ATerm arg1, aterm.ATerm arg2, aterm.ATerm arg3, aterm.ATerm arg4, aterm.ATerm arg5)
          Creates a function application.
 aterm.ATermAppl makeAppl(aterm.AFun fun, aterm.ATerm arg1, aterm.ATerm arg2, aterm.ATerm arg3, aterm.ATerm arg4, aterm.ATerm arg5, aterm.ATerm arg6)
          Creates a function application.
 aterm.ATermAppl makeAppl(aterm.AFun fun, aterm.ATermList args)
          Creates a function application.
 aterm.ATermBlob makeBlob(byte[] data)
          Creates an ATermBlob (Binary Large OBject).
 aterm.ATermInt makeInt(int val)
          Creates a new ATermInt object
 aterm.ATermList makeList()
          Creates an empty ATermList object
 aterm.ATermList makeList(aterm.ATerm single)
          Creates a singleton ATermList object.
 aterm.ATermList makeList(aterm.ATerm head, aterm.ATermList tail)
          Creates a head-tail style ATermList.
 aterm.ATermPlaceholder makePlaceholder(aterm.ATerm type)
          Creates an ATermPlaceholder object.
 aterm.ATermReal makeReal(double val)
          Creates a new ATermReal object
 aterm.ATerm parse(java.lang.String trm)
          Creates a new ATerm by parsing a string.
 aterm.ATerm readFromBinaryFile(java.io.InputStream stream)
          Creates an ATerm from a binary stream.
 aterm.ATerm readFromFile(java.io.InputStream stream)
          Creates an ATerm from a stream.
 aterm.ATerm readFromFile(java.lang.String file)
          Creates an ATerm from a given filename.
 aterm.ATerm readFromSharedTextFile(java.io.InputStream stream)
          Creates an ATerm from a shared text stream.
 aterm.ATerm readFromTextFile(java.io.InputStream stream)
          Creates an ATerm from a text stream.
 

Field Detail

START_OF_SHARED_TEXT_FILE

public static final byte START_OF_SHARED_TEXT_FILE
See Also:
Constant Field Values
Method Detail

parse

public aterm.ATerm parse(java.lang.String trm)
Creates a new ATerm by parsing a string.

Parameters:
trm - the string representation of the term
Returns:
the parsed term.
See Also:
make(String)

make

public aterm.ATerm make(java.lang.String trm)
Equivalent of parse.

Parameters:
trm - the string representation of the term
Returns:
the parsed term.
See Also:
parse(String)

make

public aterm.ATerm make(java.lang.String pattern,
                        java.util.List args)
Creates a new ATerm given a string pattern and a list of arguments. First the string pattern is parsed into an ATerm. Then the holes in the pattern are filled with arguments taken from the supplied list of arguments.

Parameters:
pattern - the string pattern containing a placeholder for each argument.
args - the list of arguments to be filled into the placeholders.
Returns:
the constructed term.

make

public aterm.ATerm make(aterm.ATerm pattern,
                        java.util.List args)
Creates a new ATerm given a pattern and a list of arguments. The holes in the pattern are filled with arguments taken from the supplied list of arguments.

Parameters:
pattern - the pattern containing a placeholder for each argument.
args - the list of arguments to be filled into the placeholders.
Returns:
the constructed term.

make

public aterm.ATerm make(java.lang.String pattern,
                        java.lang.Object arg1)
Creates a new ATerm given a pattern and a single argument. This convenience method creates an ATerm from a pattern and one argument.

Parameters:
pattern - the pattern containing a placeholder for the argument.
arg1 - the argument to be filled into the hole.
Returns:
the constructed term.

make

public aterm.ATerm make(java.lang.String pattern,
                        java.lang.Object arg1,
                        java.lang.Object arg2)
Creates a new ATerm given a pattern and a fixed number of arguments. This convenience method creates an ATerm from a pattern and two arguments.

Parameters:
pattern - the pattern containing a placeholder for the arguments.
arg1 - the argument to be filled into the first hole.
arg2 - the argument to be filled into the second hole.
Returns:
the constructed term.

make

public aterm.ATerm make(java.lang.String pattern,
                        java.lang.Object arg1,
                        java.lang.Object arg2,
                        java.lang.Object arg3)
Creates a new ATerm given a pattern and a fixed number of arguments. This convenience method creates an ATerm from a pattern and three arguments.

Parameters:
pattern - the pattern containing a placeholder for the arguments.
arg1 - the argument to be filled into the first hole.
arg2 - the argument to be filled into the second hole.
arg3 - the argument to be filled into the third hole.
Returns:
the constructed term.

make

public aterm.ATerm make(java.lang.String pattern,
                        java.lang.Object arg1,
                        java.lang.Object arg2,
                        java.lang.Object arg3,
                        java.lang.Object arg4)
Creates a new ATerm given a pattern and a fixed number of arguments. This convenience method creates an ATerm from a pattern and four arguments.

Parameters:
pattern - the pattern containing a placeholder for the arguments.
arg1 - the argument to be filled into the first hole.
arg2 - the argument to be filled into the second hole.
arg3 - the argument to be filled into the third hole.
arg4 - the argument to be filled into the fourth hole.
Returns:
the constructed term.

make

public aterm.ATerm make(java.lang.String pattern,
                        java.lang.Object arg1,
                        java.lang.Object arg2,
                        java.lang.Object arg3,
                        java.lang.Object arg4,
                        java.lang.Object arg5)
Creates a new ATerm given a pattern and a fixed number of arguments. This convenience method creates an ATerm from a pattern and five arguments.

Parameters:
pattern - the pattern containing a placeholder for the arguments.
arg1 - the argument to be filled into the first hole.
arg2 - the argument to be filled into the second hole.
arg3 - the argument to be filled into the third hole.
arg4 - the argument to be filled into the fourth hole.
arg5 - the argument to be filled into the fifth hole.
Returns:
the constructed term.

make

public aterm.ATerm make(java.lang.String pattern,
                        java.lang.Object arg1,
                        java.lang.Object arg2,
                        java.lang.Object arg3,
                        java.lang.Object arg4,
                        java.lang.Object arg5,
                        java.lang.Object arg6)
Creates a new ATerm given a pattern and a fixed number of arguments. This convenience method creates an ATerm from a pattern and six arguments.

Parameters:
pattern - the pattern containing a placeholder for the arguments.
arg1 - the argument to be filled into the first hole.
arg2 - the argument to be filled into the second hole.
arg3 - the argument to be filled into the third hole.
arg4 - the argument to be filled into the fourth hole.
arg5 - the argument to be filled into the fifth hole.
arg6 - the argument to be filled into the sixth hole.
Returns:
the constructed term.

make

public aterm.ATerm make(java.lang.String pattern,
                        java.lang.Object arg1,
                        java.lang.Object arg2,
                        java.lang.Object arg3,
                        java.lang.Object arg4,
                        java.lang.Object arg5,
                        java.lang.Object arg6,
                        java.lang.Object arg7)
Creates a new ATerm given a pattern and a fixed number of arguments. This convenience method creates an ATerm from a pattern and seven arguments.

Parameters:
pattern - the pattern containing a placeholder for the arguments.
arg1 - the argument to be filled into the first hole.
arg2 - the argument to be filled into the second hole.
arg3 - the argument to be filled into the third hole.
arg4 - the argument to be filled into the fourth hole.
arg5 - the argument to be filled into the fifth hole.
arg6 - the argument to be filled into the sixth hole.
arg7 - the argument to be filled into the seventh hole.
Returns:
the constructed term.

makeInt

public aterm.ATermInt makeInt(int val)
Creates a new ATermInt object

Parameters:
val - the integer value to be stored.
Returns:
the constructed ATermInt object.

makeReal

public aterm.ATermReal makeReal(double val)
Creates a new ATermReal object

Parameters:
val - the double value to be stored.
Returns:
the constructed ATermReal object.

makeList

public aterm.ATermList makeList()
Creates an empty ATermList object

Returns:
the (empty) ATermList.

makeList

public aterm.ATermList makeList(aterm.ATerm single)
Creates a singleton ATermList object.

Parameters:
single - the element to be placed in the list.
Returns:
the singleton ATermList object.

makeList

public aterm.ATermList makeList(aterm.ATerm head,
                                aterm.ATermList tail)
Creates a head-tail style ATermList.

Parameters:
head - the head of the list.
tail - the tail of the list.
Returns:
the constructed ATermList.

makePlaceholder

public aterm.ATermPlaceholder makePlaceholder(aterm.ATerm type)
Creates an ATermPlaceholder object.

Parameters:
type - the type of the hole in the placeholder.
Returns:
the constructed ATermPlaceholder.

makeBlob

public aterm.ATermBlob makeBlob(byte[] data)
Creates an ATermBlob (Binary Large OBject).

Parameters:
data - the data to be stored in the blob.
Returns:
the constructed ATermBlob.

makeAFun

public aterm.AFun makeAFun(java.lang.String name,
                           int arity,
                           boolean isQuoted)
Creates an AFun object

Parameters:
name - the name of the function symbol.
arity - the arity of the function symbol.
isQuoted - whether the function symbol is quoted ("foo") or not (foo).
Returns:
the constructed AFun.

makeAppl

public aterm.ATermAppl makeAppl(aterm.AFun fun)
Creates a function application.

Parameters:
fun - the function symbol of the application.
Returns:
the constructed function application.

makeAppl

public aterm.ATermAppl makeAppl(aterm.AFun fun,
                                aterm.ATerm arg)
Creates a function application.

Parameters:
fun - the function symbol of the application.
arg - the argument of the application.
Returns:
the constructed function application.

makeAppl

public aterm.ATermAppl makeAppl(aterm.AFun fun,
                                aterm.ATerm arg1,
                                aterm.ATerm arg2)
Creates a function application.

Parameters:
fun - the function symbol of the application.
arg1 - the first argument of the application.
arg2 - the second argument of the application.
Returns:
the constructed function application.

makeAppl

public aterm.ATermAppl makeAppl(aterm.AFun fun,
                                aterm.ATerm arg1,
                                aterm.ATerm arg2,
                                aterm.ATerm arg3)
Creates a function application.

Parameters:
fun - the function symbol of the application.
arg1 - the first argument of the application.
arg2 - the second argument of the application.
arg3 - the third argument of the application.
Returns:
the constructed function application.

makeAppl

public aterm.ATermAppl makeAppl(aterm.AFun fun,
                                aterm.ATerm arg1,
                                aterm.ATerm arg2,
                                aterm.ATerm arg3,
                                aterm.ATerm arg4)
Creates a function application.

Parameters:
fun - the function symbol of the application.
arg1 - the first argument of the application.
arg2 - the second argument of the application.
arg3 - the third argument of the application.
arg4 - the fourth argument of the application.
Returns:
the constructed function application.

makeAppl

public aterm.ATermAppl makeAppl(aterm.AFun fun,
                                aterm.ATerm arg1,
                                aterm.ATerm arg2,
                                aterm.ATerm arg3,
                                aterm.ATerm arg4,
                                aterm.ATerm arg5)
Creates a function application.

Parameters:
fun - the function symbol of the application.
arg1 - the first argument of the application.
arg2 - the second argument of the application.
arg3 - the third argument of the application.
arg4 - the fourth argument of the application.
arg5 - the fifth argument of the application.
Returns:
the constructed function application.

makeAppl

public aterm.ATermAppl makeAppl(aterm.AFun fun,
                                aterm.ATerm arg1,
                                aterm.ATerm arg2,
                                aterm.ATerm arg3,
                                aterm.ATerm arg4,
                                aterm.ATerm arg5,
                                aterm.ATerm arg6)
Creates a function application.

Parameters:
fun - the function symbol of the application.
arg1 - the first argument of the application.
arg2 - the second argument of the application.
arg3 - the third argument of the application.
arg4 - the fourth argument of the application.
arg5 - the fifth argument of the application.
arg6 - the sixth argument of the application.
Returns:
the constructed function application.

makeAppl

public aterm.ATermAppl makeAppl(aterm.AFun fun,
                                aterm.ATerm[] args)
Creates a function application.

Parameters:
fun - the function symbol of the application.
args - an array containing the arguments.
Returns:
the constructed function application.

makeAppl

public aterm.ATermAppl makeAppl(aterm.AFun fun,
                                aterm.ATermList args)
Creates a function application.

Parameters:
fun - the function symbol of the application.
args - an ATermList containing the arguments.
Returns:
the constructed function application.

readFromTextFile

public aterm.ATerm readFromTextFile(java.io.InputStream stream)
                             throws java.io.IOException
Creates an ATerm from a text stream.

Parameters:
stream - the inputstream to read the ATerm from.
Returns:
the parsed ATerm.
java.io.IOException

readFromSharedTextFile

public aterm.ATerm readFromSharedTextFile(java.io.InputStream stream)
                                   throws java.io.IOException
Creates an ATerm from a shared text stream.

Parameters:
stream - the inputstream to read the ATerm from.
Returns:
the parsed ATerm.
java.io.IOException

readFromBinaryFile

public aterm.ATerm readFromBinaryFile(java.io.InputStream stream)
                               throws java.io.IOException
Creates an ATerm from a binary stream.

Parameters:
stream - the inputstream to read the ATerm from.
Returns:
the parsed ATerm.
java.io.IOException

readFromFile

public aterm.ATerm readFromFile(java.io.InputStream stream)
                         throws java.io.IOException
Creates an ATerm from a stream. This function determines the type of stream (text, shared, binary) and parses the ATerm accordingly.

Parameters:
stream - the inputstream to read the ATerm from.
Returns:
the parsed ATerm.
java.io.IOException

readFromFile

public aterm.ATerm readFromFile(java.lang.String file)
                         throws java.io.IOException
Creates an ATerm from a given filename.

Parameters:
file - the filename to read the ATerm from.
Returns:
the parsed ATerm.
java.io.IOException

importTerm

public aterm.ATerm importTerm(aterm.ATerm term)
Creates an ATerm by importing it from another ATermFactory.

Parameters:
term - the term (possibly from another ATermFactory) to rebuild in this factory.
Returns:
the imported ATerm.