View Javadoc

    1   package net.sourceforge.pmd.symboltable;
    2
    3   import java.util.Collections;
    4   import java.util.List;
    5   import java.util.Map;
    6
    7   /**
    8    * Implementation of Scope for source types that are simpler than java sources.
    9    * 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  }