net.sourceforge.pmd.lang.java.symboltable

## Class SourceFileScope

- java.lang.Object
- - net.sourceforge.pmd.lang.java.symboltable.AbstractScope
  - - net.sourceforge.pmd.lang.java.symboltable.SourceFileScope

- All Implemented Interfaces:
    Scope

      public class SourceFileScope
      extends AbstractScope

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected Map<ClassNameDeclaration,List<NameOccurrence>>` | `classNames`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SourceFileScope()`
    `SourceFileScope(String image)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addDeclaration(ClassNameDeclaration classDecl)` Add a class declaration to this scope
    `void` | `addDeclaration(MethodNameDeclaration decl)` Add a method declaration to this scope
    `void` | `addDeclaration(VariableNameDeclaration decl)` Add a variable declaration to this scope
    `NameDeclaration` | `addVariableNameOccurrence(NameOccurrence occ)` Adds a NameOccurrence to this scope - only call this after getting a true back from contains()
    `protected NameDeclaration` | `findVariableHere(NameOccurrence occ)`
    `Map<ClassNameDeclaration,List<NameOccurrence>>` | `getClassDeclarations()` Returns a Map (VariableNameDeclaration->List(NameOccurrence,NameOccurrence)) of declarations that exist at this scope
    `ClassScope` | `getEnclosingClassScope()` Goes searching up the tree for this scope's enclosing ClassScope This is handy if you're buried down in a LocalScope and need to hop up to the ClassScope to find a method name.
    `MethodScope` | `getEnclosingMethodScope()` Goes searching up the tree for this scope's enclosing MethodScope This is handy if you're buried down in a LocalScope and need to hop up to the MethodScope to find a method parameter.
    `SourceFileScope` | `getEnclosingSourceFileScope()` Goes searching up the tree for this scope's enclosing SourceFileScope This is handy if you're buried down in a LocalScope and need to hop up to the SourceFileScope to find a class name.
    `String` | `getPackageName()`
    `Map<VariableNameDeclaration,List<NameOccurrence>>` | `getVariableDeclarations()` Returns a Map (VariableNameDeclaration->List(NameOccurrence,NameOccurrence)) of declarations that exist at this scope
    `String` | `toString()`

    - ### Methods inherited from class net.sourceforge.pmd.lang.java.symboltable.AbstractScope

      `contains, getParent, glomNames, setParent`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### classNames

          protected Map<ClassNameDeclaration,List<NameOccurrence>> classNames

  - ### Constructor Detail

    - #### SourceFileScope

          public SourceFileScope()

    - #### SourceFileScope

          public SourceFileScope(String image)

  - ### Method Detail

    - #### getEnclosingClassScope

          public ClassScope getEnclosingClassScope()

      Description copied from interface: `Scope`
      Goes searching up the tree for this scope's enclosing ClassScope This is handy if you're buried down in a LocalScope and need to hop up to the ClassScope to find a method name.
      Specified by:
        `getEnclosingClassScope` in interface `Scope`
      Overrides:
        `getEnclosingClassScope` in class `AbstractScope`

    - #### getEnclosingMethodScope

          public MethodScope getEnclosingMethodScope()

      Description copied from interface: `Scope`
      Goes searching up the tree for this scope's enclosing MethodScope This is handy if you're buried down in a LocalScope and need to hop up to the MethodScope to find a method parameter.
      Specified by:
        `getEnclosingMethodScope` in interface `Scope`
      Overrides:
        `getEnclosingMethodScope` in class `AbstractScope`

    - #### getPackageName

          public String getPackageName()

    - #### getEnclosingSourceFileScope

          public SourceFileScope getEnclosingSourceFileScope()

      Description copied from interface: `Scope`
      Goes searching up the tree for this scope's enclosing SourceFileScope This is handy if you're buried down in a LocalScope and need to hop up to the SourceFileScope to find a class name.
      Specified by:
        `getEnclosingSourceFileScope` in interface `Scope`
      Overrides:
        `getEnclosingSourceFileScope` in class `AbstractScope`

    - #### addDeclaration

          public void addDeclaration(ClassNameDeclaration classDecl)

      Description copied from interface: `Scope`
      Add a class declaration to this scope
      Specified by:
        `addDeclaration` in interface `Scope`
      Overrides:
        `addDeclaration` in class `AbstractScope`

    - #### addDeclaration

          public void addDeclaration(MethodNameDeclaration decl)

      Description copied from interface: `Scope`
      Add a method declaration to this scope
      Specified by:
        `addDeclaration` in interface `Scope`
      Overrides:
        `addDeclaration` in class `AbstractScope`

    - #### addDeclaration

          public void addDeclaration(VariableNameDeclaration decl)

      Description copied from interface: `Scope`
      Add a variable declaration to this scope

    - #### getClassDeclarations

          public Map<ClassNameDeclaration,List<NameOccurrence>> getClassDeclarations()

      Description copied from interface: `Scope`
      Returns a Map (VariableNameDeclaration->List(NameOccurrence,NameOccurrence)) of declarations that exist at this scope
      Specified by:
        `getClassDeclarations` in interface `Scope`
      Overrides:
        `getClassDeclarations` in class `AbstractScope`

    - #### getVariableDeclarations

          public Map<VariableNameDeclaration,List<NameOccurrence>> getVariableDeclarations()

      Description copied from interface: `Scope`
      Returns a Map (VariableNameDeclaration->List(NameOccurrence,NameOccurrence)) of declarations that exist at this scope

    - #### addVariableNameOccurrence

          public NameDeclaration addVariableNameOccurrence(NameOccurrence occ)

      Description copied from interface: `Scope`
      Adds a NameOccurrence to this scope - only call this after getting a true back from contains()

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

    - #### findVariableHere

          protected NameDeclaration findVariableHere(NameOccurrence occ)

      Specified by:
        `findVariableHere` in class `AbstractScope`

Copyright © 2002-2013 InfoEther. All Rights Reserved.