ConForM.CoopnTools.CoKer.CoopnMgr
Class CoopnObjectSymbolVariable

java.lang.Object
  |
  +--ConForM.CoopnTools.CoKer.CoopnMgr.CoopnElement
        |
        +--ConForM.CoopnTools.CoKer.CoopnMgr.CoopnSymbol
              |
              +--ConForM.CoopnTools.CoKer.CoopnMgr.CoopnObjectSymbol
                    |
                    +--ConForM.CoopnTools.CoKer.CoopnMgr.CoopnObjectSymbolVariable
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable, CoopnMetaElement, CoopnSyntacticElement, CoopnSyntacticParamSymbol, CoopnSyntacticSymbol, java.io.Serializable

public class CoopnObjectSymbolVariable
extends CoopnObjectSymbol
implements CoopnSyntacticParamSymbol, CoopnMetaElement

Coopn object VARIABLE.

See Also:
, Serialized Form

Constructor Summary
CoopnObjectSymbolVariable(CoopnName name, CoopnModuleName module, CoopnType type)
          Simple constructor.
CoopnObjectSymbolVariable(CoopnName name, CoopnModuleName module, CoopnType type, java.lang.String comment)
          Simple constructor.
CoopnObjectSymbolVariable(CoopnName name, java.lang.String identifier, CoopnModuleName module, CoopnType type)
          Simple constructor.
CoopnObjectSymbolVariable(CoopnName name, java.lang.String identifier, CoopnModuleName module, CoopnType type, java.lang.String comment)
          Simple constructor.
 
Method Summary
 java.lang.Object clone()
          Cloning method.
 boolean equals(java.lang.Object obj)
          Equality method.
 boolean equivalent(java.lang.Object obj)
          Equivalence testing method.
 CoopnElement interpret(CoopnSubstitution sigma)
          Interpretation of this element according to a substitution.
 java.lang.String kind()
          Kind retrieving method.
 boolean pureCOIL()
          Pure COIL-COOPN2C verification method.
 boolean pureCOOPN()
          Pure COOPN verification method.
 ConForM.CoopnTools.CoKer.CoopnMgr.CoopnCocoMgr.CoopnCocoElement toCoco(CoopnSymbolTable table)
          CoCo conversion method.
 java.lang.Object unmodifiableCopy()
          Copy the element into an unmodifiable structure.
 
Methods inherited from class ConForM.CoopnTools.CoKer.CoopnMgr.CoopnObjectSymbol
paramType, toCompleteText, toText, type
 
Methods inherited from class ConForM.CoopnTools.CoKer.CoopnMgr.CoopnSymbol
arity, cloneCoopnElement, comment, compareTo, decompose, equalsCoopnSymbol, equivalentCoopnSymbol, hashCode, identifier, indexCoopnSymbol, module, name, symbolModule, symbolModuleKind, symbolName, toTextCoopnSymbol, unmodifiableSymbol, usedCoopnSymbol
 
Methods inherited from class ConForM.CoopnTools.CoKer.CoopnMgr.CoopnElement
toCompleteString, toCompleteString, toCompleteString, toCompleteString, toCompleteString, toCompleteString, toCompleteText, toCompleteTokens, toCompleteTokens, toCompleteTokens, toCompleteTokens, toCompleteTokens, toCompleteTokens, toString, toString, toString, toTokens, toTokens, toTokens
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface ConForM.CoopnTools.CoKer.CoopnSyntacticParamSymbol
paramType
 
Methods inherited from interface ConForM.CoopnTools.CoKer.CoopnSyntacticSymbol
comment, identifier, symbolModule, symbolModuleKind, symbolName
 
Methods inherited from interface ConForM.CoopnTools.CoKer.CoopnSyntacticElement
hashCode, toCompleteString, toCompleteString, toCompleteString, toString, toString, toString
 

Constructor Detail

CoopnObjectSymbolVariable

public CoopnObjectSymbolVariable(CoopnName name,
                                 java.lang.String identifier,
                                 CoopnModuleName module,
                                 CoopnType type)
                          throws java.lang.IllegalArgumentException,
                                 CoopnTypingProblemException
Simple constructor.

CoopnObjectSymbolVariable

public CoopnObjectSymbolVariable(CoopnName name,
                                 CoopnModuleName module,
                                 CoopnType type)
                          throws java.lang.IllegalArgumentException,
                                 CoopnTypingProblemException
Simple constructor.

CoopnObjectSymbolVariable

public CoopnObjectSymbolVariable(CoopnName name,
                                 java.lang.String identifier,
                                 CoopnModuleName module,
                                 CoopnType type,
                                 java.lang.String comment)
                          throws java.lang.IllegalArgumentException,
                                 CoopnTypingProblemException
Simple constructor.

CoopnObjectSymbolVariable

public CoopnObjectSymbolVariable(CoopnName name,
                                 CoopnModuleName module,
                                 CoopnType type,
                                 java.lang.String comment)
                          throws java.lang.IllegalArgumentException,
                                 CoopnTypingProblemException
Simple constructor.
Method Detail

interpret

public CoopnElement interpret(CoopnSubstitution sigma)
Description copied from class: CoopnSymbol
Interpretation of this element according to a substitution. Actually returns a clone of the element itself. This strategy is valid for all symbols, except for meta-element symbols.
Overrides:
interpret in class CoopnSymbol
Following copied from class: ConForM.CoopnTools.CoKer.CoopnMgr.CoopnSymbol
Parameters:
sigma - the substitution; cannot be null
Returns:
a clone of the element, as the interpretation of a symbol is usually the same symbol.

kind

public java.lang.String kind()
Description copied from interface: CoopnSyntacticSymbol
Kind retrieving method. This method must be defined in the inherited classes for returning a string allowing the user to know what kind of symbol this is.
Specified by:
kind in interface CoopnSyntacticSymbol
Overrides:
kind in class CoopnObjectSymbol
Following copied from interface: ConForM.CoopnTools.CoKer.CoopnSyntacticSymbol
Returns:
a string defining the symbol kind.

equals

public boolean equals(java.lang.Object obj)
Description copied from interface: CoopnSyntacticElement
Equality method. Must be defined in the inherited classes.
Specified by:
equals in interface CoopnSyntacticElement
Overrides:
equals in class CoopnObjectSymbol
Following copied from interface: ConForM.CoopnTools.CoKer.CoopnSyntacticElement
Parameters:
obj - the object to compare
Returns:
true iff this object and the parameter are equals.

equivalent

public boolean equivalent(java.lang.Object obj)
Description copied from class: CoopnSymbol
Equivalence testing method. This method must be defined in the inherited classes for returning a boolean deciding if this symbol is equivalent to the parameter. Two symbols are equivalents if they are equals, or if they are equals when source modules are not considered. For instance, transition "T" in "Module1" and transition "T" in "Module2" are are not equal, but are equivalent.
Overrides:
equivalent in class CoopnObjectSymbol
Following copied from class: ConForM.CoopnTools.CoKer.CoopnMgr.CoopnSymbol
Returns:
true iff both symbols are equivalents.

pureCOOPN

public boolean pureCOOPN()
Pure COOPN verification method.
Specified by:
pureCOOPN in interface CoopnMetaElement
Overrides:
pureCOOPN in class CoopnObjectSymbol
Returns:
false, as meta elements are not pure CO-OPN.

pureCOIL

public boolean pureCOIL()
Pure COIL-COOPN2C verification method.
Specified by:
pureCOIL in interface CoopnMetaElement
Overrides:
pureCOIL in class CoopnObjectSymbol
Returns:
false, as meta elements are not pure COIL.

toCoco

public ConForM.CoopnTools.CoKer.CoopnMgr.CoopnCocoMgr.CoopnCocoElement toCoco(CoopnSymbolTable table)
                                                                       throws java.lang.UnsupportedOperationException
CoCo conversion method. Throws an unsupported operation exception, as meta elements cannot be translated into coco elements.
Specified by:
toCoco in interface CoopnMetaElement
Overrides:
toCoco in class CoopnObjectSymbol
Parameters:
table - the symbol table used to generate symbol references
Returns:
a coco image of the element.
Throws:
java.lang.IllegalArgumentException - A used symbol is not in the symbol table.
java.lang.UnsupportedOperationException - Alway thrown, by definition.

unmodifiableCopy

public java.lang.Object unmodifiableCopy()
Description copied from class: CoopnElement
Copy the element into an unmodifiable structure.
Overrides:
unmodifiableCopy in class CoopnObjectSymbol
Following copied from class: ConForM.CoopnTools.CoKer.CoopnMgr.CoopnElement
Returns:
an unmodififable clone of the element.

clone

public java.lang.Object clone()
Description copied from interface: CoopnSyntacticElement
Cloning method. Must be defined in the inherited classes.
Specified by:
clone in interface CoopnSyntacticElement
Overrides:
clone in class CoopnObjectSymbol
Following copied from interface: ConForM.CoopnTools.CoKer.CoopnSyntacticElement
Returns:
a clone object.