|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--ConForM.CoopnTools.CoKer.CoopnMgr.SymbolCollection | +--ConForM.CoopnTools.CoKer.CoopnMgr.CoopnSymbolTable
Coopn symbol table. A symbol table contains all the symbols necessary to the definition of a module. More precisely, it contains (1) every symbols defined in the module; (2) recursively every symbol used in the definitions of the symbols belonging to (1); (3) every USE and USE CONTEXT symbols defined recursively in an used module; (4) every SUBSORT and SUBTYPE symbol defined recursively in an used module.
CoopnElement
Fields inherited from interface ConForM.CoopnTools.CoKer.CoopnMgr.CoopnSymbolCollectionConstants |
ADTAXIOM, ADTTHEOREM, CLASSAXIOM, CLASSCREATION, CLASSDESTRUCTION, CLASSGATE, CLASSMETHOD, CLASSTHEOREM, CONTEXTAXIOM, CONTEXTGATE, CONTEXTMETHOD, CONTEXTTHEOREM, GENERATOR, INITIAL, METATERM, OBJECT, OPERATION, PLACE, SORT, SUBSORT, SUBTYPE, SYMBOLKINDNUMBER, TRANSITION, TYPE, USE, USECONTEXT, VARIABLE |
Constructor Summary | |
CoopnSymbolTable(int size)
Simple constructor. |
Method Summary | |
void |
addDefinedSymbol(CoopnSymbol symbol,
boolean external,
int pos)
Add a defined symbol. |
void |
addUsedSymbol(CoopnSymbol symbol,
boolean external,
int pos)
Add an used symbol. |
java.lang.Object |
clone()
|
boolean |
defined(CoopnSymbol symbol)
Look if a symbol is used or defined in the table. |
boolean |
equals(java.lang.Object obj)
|
boolean |
external(CoopnSymbol symbol)
Look if a symbol is external or internal in the table. |
int |
getIndex(CoopnSymbol symbol)
Look in the table for a symbol. |
CoopnSymbol |
getSymbol(int pos)
Look in the table for a symbol. |
int |
indexOf(CoopnSymbol symbol)
Look in the table for a symbol. |
int |
size()
return the size of the symbol table. |
ConForM.CoopnTools.CoKer.CoopnMgr.CoopnCocoMgr.CoopnCocoElement |
toCoco(CoopnSymbolTable table)
|
java.lang.Object |
unmodifiableCopy()
|
Methods inherited from class ConForM.CoopnTools.CoKer.CoopnMgr.SymbolCollection |
add, cloneSymbolCollection, compatibleKind, defined, dependencies, equ, equ, external, hashCode, index, less, less, lessOrEqu, lessOrEqu, size, symbol, symbolKindNumber, symbolToKind, unifiable, unifiable, unmodifiableCollection |
Methods inherited from class java.lang.Object |
finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public CoopnSymbolTable(int size) throws java.lang.IllegalArgumentException
Method Detail |
public void addUsedSymbol(CoopnSymbol symbol, boolean external, int pos)
symbol
- the symbol to addexternal
- true iff the symbol is used in the interfacepos
- the symbol indexjava.lang.IllegalArgumentException
- The index in invalid or already assigned.public void addDefinedSymbol(CoopnSymbol symbol, boolean external, int pos)
symbol
- the symbol to addexternal
- true iff the symbol is used in the interfacepos
- the symbol indexjava.lang.IllegalArgumentException
- The index in invalid or already assigned.public int size()
public CoopnSymbol getSymbol(int pos)
pos
- the indexjava.lang.IllegalArgumentException
- The index in invalid.public int getIndex(CoopnSymbol symbol)
symbol
- the symbol to getpublic int indexOf(CoopnSymbol symbol) throws java.lang.IllegalArgumentException
java.lang.IllegalArgumentException
- The symbol is not found in the table.public boolean defined(CoopnSymbol symbol)
java.lang.IllegalArgumentException
- The symbol is not found in the table.public boolean external(CoopnSymbol symbol)
java.lang.IllegalArgumentException
- The symbol is not found in the table.public boolean equals(java.lang.Object obj)
equals
in class SymbolCollection
public ConForM.CoopnTools.CoKer.CoopnMgr.CoopnCocoMgr.CoopnCocoElement toCoco(CoopnSymbolTable table) throws java.lang.IllegalArgumentException
public java.lang.Object unmodifiableCopy()
unmodifiableCopy
in class SymbolCollection
public java.lang.Object clone()
clone
in class SymbolCollection
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |