ConForM.CoopnTools.CoKer.CoopnMgr
Class CoopnVariableSymbol

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

public class CoopnVariableSymbol
extends CoopnSymbol
implements CoopnSyntacticParamSymbol

Coopn variable.

See Also:
CoopnElement, Serialized Form

Constructor Summary
CoopnVariableSymbol(CoopnName name, CoopnModuleName module, CoopnType type)
          Simple constructor.
CoopnVariableSymbol(CoopnName name, CoopnModuleName module, CoopnType type, java.lang.String comment)
          Simple constructor.
CoopnVariableSymbol(CoopnName name, java.lang.String identifier, CoopnModuleName module, CoopnType type)
          Simple constructor.
CoopnVariableSymbol(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.
 java.lang.String kind()
          Kind retrieving method.
 CoopnSyntacticElement paramType()
          Get an element, representing the "type" (in a broad sense) of the parameter.
 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.
 ConForM.CoopnTools.CoKer.CoopnMgr.CoopnTextMgr.CoopnTextElement toCompleteText(CoopnSymbolTable table)
          Complete textual elements conversion method.
 ConForM.CoopnTools.CoKer.CoopnMgr.CoopnTextMgr.CoopnTextElement toText()
          Textual elements conversion method.
 CoopnType type()
          Return the type.
 java.lang.Object unmodifiableCopy()
          Copy the element into an unmodifiable structure.
 
Methods inherited from class ConForM.CoopnTools.CoKer.CoopnMgr.CoopnSymbol
arity, cloneCoopnElement, comment, compareTo, decompose, equalsCoopnSymbol, equivalentCoopnSymbol, hashCode, identifier, indexCoopnSymbol, interpret, 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.CoopnSyntacticSymbol
comment, identifier, symbolModule, symbolModuleKind, symbolName
 
Methods inherited from interface ConForM.CoopnTools.CoKer.CoopnSyntacticElement
hashCode, toCompleteString, toCompleteString, toCompleteString, toString, toString, toString
 

Constructor Detail

CoopnVariableSymbol

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

CoopnVariableSymbol

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

CoopnVariableSymbol

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

CoopnVariableSymbol

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

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 CoopnSymbol
Following copied from interface: ConForM.CoopnTools.CoKer.CoopnSyntacticSymbol
Returns:
a string defining the symbol kind.

pureCOOPN

public boolean pureCOOPN()
Description copied from class: CoopnElement
Pure COOPN verification method. Must be modified by the elements which may alterate the result.
Overrides:
pureCOOPN in class CoopnElement
Following copied from class: ConForM.CoopnTools.CoKer.CoopnMgr.CoopnElement
Returns:
true iff this object is in pure CO-OPN language.

pureCOIL

public boolean pureCOIL()
Description copied from class: CoopnElement
Pure COIL-COOPN2C verification method. Must be modified by the elements which may alterate the result.
Overrides:
pureCOIL in class CoopnElement
Following copied from class: ConForM.CoopnTools.CoKer.CoopnMgr.CoopnElement
Returns:
true iff this object is in pure COIL language.

type

public CoopnType type()
Return the type.
Returns:
the type

paramType

public CoopnSyntacticElement paramType()
Get an element, representing the "type" (in a broad sense) of the parameter. More precisely, by "type", we intent the information added to the symbol name, characterising the parameter.
Specified by:
paramType in interface CoopnSyntacticParamSymbol
Returns:
the parameter "type".

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 CoopnElement
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 CoopnSymbol
Following copied from class: ConForM.CoopnTools.CoKer.CoopnMgr.CoopnSymbol
Returns:
true iff both symbols are equivalents.

toText

public ConForM.CoopnTools.CoKer.CoopnMgr.CoopnTextMgr.CoopnTextElement toText()
Description copied from class: CoopnElement
Textual elements conversion method. Must be defined in the inherited classes. This routine converts an element into a user-friendly textual element representing it. The string interpretation of this element is very intuitive by a user, but may be incorrect in the sense that it may be rejected by a checker.
Overrides:
toText in class CoopnElement
Following copied from class: ConForM.CoopnTools.CoKer.CoopnMgr.CoopnElement
Returns:
a CoopnTextElement image.

toCompleteText

public ConForM.CoopnTools.CoKer.CoopnMgr.CoopnTextMgr.CoopnTextElement toCompleteText(CoopnSymbolTable table)
Description copied from class: CoopnElement
Complete textual elements conversion method. Must be defined in the inherited classes. This routine converts an element into a correct textual element representing it. The string interpretation of this element will be accepted by a checker, but may be difficult to read by users, due to the additionnal information, like parenthesis and so on.
Overrides:
toCompleteText in class CoopnElement
Following copied from class: ConForM.CoopnTools.CoKer.CoopnMgr.CoopnElement
Parameters:
table - the symbol table used to generate symbol references
Returns:
a CoopnTextElement image.

toCoco

public ConForM.CoopnTools.CoKer.CoopnMgr.CoopnCocoMgr.CoopnCocoElement toCoco(CoopnSymbolTable table)
                                                                       throws java.lang.IllegalArgumentException
Description copied from class: CoopnElement
CoCo conversion method. Must be defined in the inherited classes. This routine convert an element into a string representing it in a CO-opn COnpact form.
Overrides:
toCoco in class CoopnElement
Following copied from class: ConForM.CoopnTools.CoKer.CoopnMgr.CoopnElement
Parameters:
origin - the module which generated the Coco conversion
table - the symbol table used to generate symbol references
Returns:
a String image of the element.
Throws:
java.lang.IllegalArgumentException - A used symbol is not in the symbol table.

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 CoopnElement
Following copied from interface: ConForM.CoopnTools.CoKer.CoopnSyntacticElement
Returns:
a clone object.

unmodifiableCopy

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