Initial implementation of symbols and scopes with symbol table.
[charm.git] / src / langs / charj / src / charj / translator / LocalScope.java
1 package charj.translator;
2
3 import java.util.LinkedHashMap;
4 import java.util.Map;
5
6 public class LocalScope extends SymbolWithScope implements Scope {
7     Scope parent;
8     Map members = new LinkedHashMap();
9
10     public LocalScope(
11             SymbolTable symtab, 
12             Scope parent) 
13     {
14         super(symtab);
15         this.parent = parent;
16     }
17
18     public Scope getEnclosingScope() 
19     {
20         return parent;
21     }
22
23     public Map getMembers() 
24     {
25         return members;
26     }
27
28     /** A local scope's name is the parent method's scope */
29     public String getScopeName() 
30     {
31         return parent.getScopeName();
32     }
33
34     public String toString() 
35     {
36         return members.toString();
37     }
38 }