standup.joke
Class Precondition

java.lang.Object
  extended by standup.unify.UnifiableCompound
      extended by standup.joke.Precondition
All Implemented Interfaces:
Unifiable

public class Precondition
extends UnifiableCompound

A Precondition represents a lexical precondition as used to define Schemas and output specification function Clauses. It is a special type of UnifiableCompound where the functor is a string constant and the arguments are all variables.

Author:
Ruli Manurung

Field Summary
 
Fields inherited from class standup.unify.UnifiableCompound
arguments, functor
 
Constructor Summary
Precondition(Element element)
          Constructor for instantiating a Precondition specified in an XML Element.
Precondition(UnifiableConstant funct, UnifiableListVar vars)
           
 
Method Summary
static UnifiableListVar doArguments(Element element)
          Returns a UnifiableList of the arguments encoded in an XML element.
static List<Precondition> doPreconditionList(Element E)
           
 Precondition duplicate()
          Returns a deep copy of this UnifiableCompound.
 UnifiableListVar getArguments()
           
 UnifiableConstant getFunctor()
           
 void setFunctor(UnifiableConstant newFunct)
           
 
Methods inherited from class standup.unify.UnifiableCompound
equals, getArity, hashCode, readXML, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Precondition

public Precondition(UnifiableConstant funct,
                    UnifiableListVar vars)

Precondition

public Precondition(Element element)
Constructor for instantiating a Precondition specified in an XML Element.

Parameters:
element -
Method Detail

getFunctor

public UnifiableConstant getFunctor()
Overrides:
getFunctor in class UnifiableCompound

setFunctor

public void setFunctor(UnifiableConstant newFunct)

duplicate

public Precondition duplicate()
Description copied from class: UnifiableCompound
Returns a deep copy of this UnifiableCompound.

Specified by:
duplicate in interface Unifiable
Overrides:
duplicate in class UnifiableCompound
See Also:
Unifiable.duplicate()

doPreconditionList

public static List<Precondition> doPreconditionList(Element E)

doArguments

public static UnifiableListVar doArguments(Element element)
Returns a UnifiableList of the arguments encoded in an XML element. Currently it does not handle embedded lists or arbitrary constant values: arguments can be either Variables, string Constants, or Compounds (whose arguments can be either Variables, string Constants, or similar Compounds).

Parameters:
element -
Returns:
UnifiableList of arguments.

getArguments

public UnifiableListVar getArguments()
Overrides:
getArguments in class UnifiableCompound