Clover coverage report - PMD - 3.7
Coverage timestamp: Wed May 31 2006 09:25:59 EDT
file stats: LOC: 85   Methods: 0
NCLOC: 16   Classes: 1
 
 Source file Conditionals Statements Methods TOTAL
Scope.java - - - -
coverage
 1    /**
 2    * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
 3    */
 4    package net.sourceforge.pmd.symboltable;
 5   
 6    import java.util.Map;
 7   
 8    /**
 9    * Provides methods which all scopes must implement
 10    * <p/>
 11    * See JLS 6.3 for a description of scopes
 12    */
 13    public interface Scope {
 14   
 15    /**
 16    * Returns a Map (VariableNameDeclaration->List(NameOccurrence,NameOccurrence)) of declarations that
 17    * exist at this scope
 18    */
 19    Map getVariableDeclarations();
 20   
 21    /**
 22    * Returns a Map (VariableNameDeclaration->List(NameOccurrence,NameOccurrence)) of declarations that
 23    * exist at this scope
 24    */
 25    Map getClassDeclarations();
 26   
 27    /**
 28    * Add a class declaration to this scope
 29    */
 30    void addDeclaration(ClassNameDeclaration decl);
 31   
 32    /**
 33    * Add a variable declaration to this scope
 34    */
 35    void addDeclaration(VariableNameDeclaration decl);
 36   
 37    /**
 38    * Add a method declaration to this scope
 39    */
 40    void addDeclaration(MethodNameDeclaration decl);
 41   
 42    /**
 43    * Tests whether or not a NameOccurrence is directly contained in the scope
 44    * Note that this search is just for this scope - it doesn't go diving into any
 45    * child scopes.
 46    */
 47    boolean contains(NameOccurrence occ);
 48   
 49    /**
 50    * Adds a NameOccurrence to this scope - only call this after getting
 51    * a true back from contains()
 52    */
 53    NameDeclaration addVariableNameOccurrence(NameOccurrence occ);
 54   
 55    /**
 56    * Points this scope to its parent
 57    */
 58    void setParent(Scope parent);
 59   
 60    /**
 61    * Retrieves this scope's parent
 62    */
 63    Scope getParent();
 64   
 65    /**
 66    * Goes searching up the tree for this scope's enclosing ClassScope
 67    * This is handy if you're buried down in a LocalScope and need to
 68    * hop up to the ClassScope to find a method name.
 69    */
 70    ClassScope getEnclosingClassScope();
 71   
 72    /**
 73    * Goes searching up the tree for this scope's enclosing SourceFileScope
 74    * This is handy if you're buried down in a LocalScope and need to
 75    * hop up to the SourceFileScope to find a class name.
 76    */
 77    SourceFileScope getEnclosingSourceFileScope();
 78   
 79    /**
 80    * Goes searching up the tree for this scope's enclosing SourceFileScope
 81    * This is handy if you're buried down in a LocalScope and need to
 82    * hop up to the MethodScope to find a method parameter.
 83    */
 84    MethodScope getEnclosingMethodScope();
 85    }