01: package net.sourceforge.pmd.symboltable;
02:
03: import java.util.Collections;
04: import java.util.List;
05: import java.util.Map;
06:
07: /**
08: * Implementation of Scope for source types that are simpler than java sources.
09: * It implements the methods only when necessary not to break at runtime
10: * when Violations are handled.
11: *
12: * @author pieter_van_raemdonck - Application Engineers NV/SA - www.ae.be
13: */
14: public class DummyScope implements Scope {
15:
16: private Scope parent;
17:
18: public Map<VariableNameDeclaration, List<NameOccurrence>> getVariableDeclarations() {
19: return Collections.emptyMap();
20: }
21:
22: public Map<ClassNameDeclaration, List<NameOccurrence>> getClassDeclarations() {
23: return Collections.emptyMap();
24: }
25:
26: public void addDeclaration(ClassNameDeclaration decl) {
27: }
28:
29: public void addDeclaration(VariableNameDeclaration decl) {
30: }
31:
32: public void addDeclaration(MethodNameDeclaration decl) {
33: }
34:
35: public boolean contains(NameOccurrence occ) {
36: return false;
37: }
38:
39: public NameDeclaration addVariableNameOccurrence(NameOccurrence occ) {
40: return null;
41: }
42:
43: public void setParent(Scope parent) {
44: this .parent = parent;
45: }
46:
47: public Scope getParent() {
48: return parent;
49: }
50:
51: public ClassScope getEnclosingClassScope() {
52: return new ClassScope();
53: }
54:
55: public SourceFileScope getEnclosingSourceFileScope() {
56: return new SourceFileScope();
57: }
58:
59: public MethodScope getEnclosingMethodScope() {
60: return null;
61: }
62:
63: }
|