## com.google.javascript.rhino.jstype
Interface StaticScope<T>

Type Parameters:
  `T` - The type of information stored about the slot

All Known Implementing Classes:
  AbstractStaticScope, EnumElementType, EnumType, FunctionType, MapBasedScope, NoObjectType, NoType, ObjectType, Scope, SymbolTable.SymbolScope, TemplateType, UnknownType

    public interface StaticScope<T>

The `StaticScope` interface must be implemented by any object that defines variables for the purposes of static analysis. It is distinguished from the `Scriptable` class that Rhino normally uses to represent a runtime scope.

Method Summary
`StaticSlot<T>` | `getOwnSlot(String name)` Like `getSlot` but does not recurse into parent scopes.
`StaticScope<T>` | `getParentScope()` Returns the scope enclosing this one or null if none.
`Node` | `getRootNode()` Returns the root node associated with this scope.
`StaticSlot<T>` | `getSlot(String name)` Returns any defined slot within this scope for this name.
`T` | `getTypeOfThis()` Returns the expected type of `this` in the current scope.

Method Detail

### getRootNode

    Node getRootNode()

  Returns the root node associated with this scope. May be null.

### getParentScope

    StaticScope<T> getParentScope()

  Returns the scope enclosing this one or null if none.

### getSlot

    StaticSlot<T> getSlot(String name)

  Returns any defined slot within this scope for this name. This call continues searching through parent scopes if a slot with this name is not found in the current scope.

  Parameters:
    `name` - The name of the variable slot to look up.
  Returns:
    The defined slot for the variable, or `null` if no definition exists.

### getOwnSlot

    StaticSlot<T> getOwnSlot(String name)

  Like `getSlot` but does not recurse into parent scopes.

### getTypeOfThis

    T getTypeOfThis()

  Returns the expected type of `this` in the current scope.