Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

com.port80.eclipse.csharp.llk.ast
Class LLKScope  view LLKScope download LLKScope.java

java.lang.Object
  extended bycom.port80.eclipse.csharp.llk.parser.LLKNode
      extended bycom.port80.eclipse.csharp.llk.ast.LLKScope
All Implemented Interfaces:
java.lang.Cloneable, ILLKScope
Direct Known Subclasses:
Accessor, Method, Property, RootContext, Type

public class LLKScope
extends com.port80.eclipse.csharp.llk.parser.LLKNode
implements ILLKScope


Field Summary
(package private)  com.port80.eclipse.csharp.llk.parser.ILLKMain main
           
private  java.util.Map symTable
          The symbol table itself (name->Symbol).
 
Fields inherited from class com.port80.eclipse.csharp.llk.parser.LLKNode
first, firstToken, lastToken, modifier, name, namePosition, next, parent, text, type
 
Constructor Summary
LLKScope(int id)
           
 
Method Summary
 java.lang.Object clone()
          This method may be called to create a new copy of the Object.
 void dumpScope(java.lang.String indent)
           
 ISymbol getMethod(java.lang.String sig)
           
protected  ISymbol getSymbol(java.lang.String key)
          Lookup a symbol.
 java.util.Map getSymTable()
           
 ISymbol getType(java.lang.String key)
           
 ISymbol getVar(java.lang.String key)
           
 void init(com.port80.eclipse.csharp.llk.parser.ILLKMain main)
           
 java.util.Set keySet()
           
 ISymbol putMethod(java.lang.String key, ISymbol sym)
           
 ISymbol putSymbol(ISymbol sym)
           
protected  ISymbol putSymbol(java.lang.String key, ISymbol typeObject)
           
 void putSymbolList(java.util.List a)
          Put ISymbol in List into symbol table.
 ISymbol putType(java.lang.String key, ISymbol sym)
           
 ISymbol putVar(java.lang.String key, ISymbol sym)
           
 void setSymTable(java.util.Map table)
           
 
Methods inherited from class com.port80.eclipse.csharp.llk.parser.LLKNode
accept, addAll, addChild, addChild, addModifier, ASSERT, checkDistinct, childrenAccept, childrenCount, countDescendent, detach, dumpXml, dumpXml, findDescendent, getChild, getColumn, getFirstChild, getFirstToken, getLastChild, getLastToken, getLine, getLocationString, getModifier, getName, getNameOffset, getNamePosition, getNextSibling, getParent, getText, getType, hasAncestor, hasChildren, hasDescendent, hasDescendent, hasModifier, hasOneOrLessChild, hasOnlyDescendent, hasOnlyDescendent, hasSingleChild, indexOf, init, init, prependChild, removeChild, removeChildren, removeModifier, setFirstToken, setLastToken, setModifier, setName, setNamePosition, setParent, setText, setType, toString
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.port80.eclipse.csharp.llk.ast.ILLKScope
getName
 

Field Detail

main

com.port80.eclipse.csharp.llk.parser.ILLKMain main

symTable

private java.util.Map symTable
The symbol table itself (name->Symbol).

Constructor Detail

LLKScope

public LLKScope(int id)
Method Detail

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
Description copied from class: java.lang.Object
This method may be called to create a new copy of the Object. The typical behavior is as follows:
  • o == o.clone() is false
  • o.getClass() == o.clone().getClass() is true
  • o.equals(o) is true

However, these are not strict requirements, and may be violated if necessary. Of the three requirements, the last is the most commonly violated, particularly if the subclass does not override Object.equals(Object)>Object.equals(Object) 55 .

If the Object you call clone() on does not implement java.lang.Cloneable (which is a placeholder interface), then a CloneNotSupportedException is thrown. Notice that Object does not implement Cloneable; this method exists as a convenience for subclasses that do.

Object's implementation of clone allocates space for the new Object using the correct class, without calling any constructors, and then fills in all of the new field values with the old field values. Thus, it is a shallow copy. However, subclasses are permitted to make a deep copy.

All array types implement Cloneable, and override this method as follows (it should never fail):

 public Object clone()
 {
   try
     {
       super.clone();
     }
   catch (CloneNotSupportedException e)
     {
       throw new InternalError(e.getMessage());
     }
 }
 


init

public void init(com.port80.eclipse.csharp.llk.parser.ILLKMain main)

getSymTable

public java.util.Map getSymTable()

setSymTable

public void setSymTable(java.util.Map table)

putSymbol

public ISymbol putSymbol(ISymbol sym)
Specified by:
putSymbol in interface ILLKScope

putType

public ISymbol putType(java.lang.String key,
                       ISymbol sym)
Specified by:
putType in interface ILLKScope

putVar

public ISymbol putVar(java.lang.String key,
                      ISymbol sym)
Specified by:
putVar in interface ILLKScope

putMethod

public ISymbol putMethod(java.lang.String key,
                         ISymbol sym)
Specified by:
putMethod in interface ILLKScope

putSymbolList

public void putSymbolList(java.util.List a)
Put ISymbol in List into symbol table.

Specified by:
putSymbolList in interface ILLKScope

getType

public ISymbol getType(java.lang.String key)
Specified by:
getType in interface ILLKScope

getVar

public ISymbol getVar(java.lang.String key)
Specified by:
getVar in interface ILLKScope

getMethod

public ISymbol getMethod(java.lang.String sig)
Specified by:
getMethod in interface ILLKScope

keySet

public java.util.Set keySet()
Specified by:
keySet in interface ILLKScope

putSymbol

protected ISymbol putSymbol(java.lang.String key,
                            ISymbol typeObject)

getSymbol

protected ISymbol getSymbol(java.lang.String key)
Lookup a symbol.


dumpScope

public void dumpScope(java.lang.String indent)
Specified by:
dumpScope in interface ILLKScope