## com.google.javascript.jscomp
Class SymbolTable.Symbol

    java.lang.Object
      com.google.javascript.rhino.jstype.SimpleSlot
          com.google.javascript.jscomp.SymbolTable.Symbol

All Implemented Interfaces:
  StaticSlot<JSType>, Serializable

Enclosing class:
  SymbolTable

    public static final class SymbolTable.Symbol

extends SimpleSlot

See Also:
  Serialized Form

Method Summary
`SymbolTable.Reference` | `defineReferenceAt(Node n)`
`SymbolTable.Reference` | `getDeclaration()` Gets the declaration of this symbol.
`Node` | `getDeclarationNode()`
`FunctionType` | `getFunctionType()`
`JSDocInfo` | `getJSDocInfo()` Gets the JSDoc for this slot.
`SymbolTable.SymbolScope` | `getPropertyScope()`
`String` | `getSourceFileName()`
`boolean` | `inExterns()`
`boolean` | `inGlobalScope()`
`boolean` | `isDocOnlyParameter()` Whether this is a variable that's only in JSDoc.
`boolean` | `isLexicalVariable()` Whether this is a variable in a lexical scope.
`boolean` | `isProperty()` Whether this is a property of another variable.
`String` | `toString()`

Methods inherited from class com.google.javascript.rhino.jstype.SimpleSlot
`getName, getType, isTypeInferred`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Method Detail

### getDeclaration

    public SymbolTable.Reference getDeclaration()

  Description copied from interface: `StaticSlot`
  Gets the declaration of this symbol. May not exist.

  Specified by:
    `getDeclaration` in interface `StaticSlot<JSType>`
  Overrides:
    `getDeclaration` in class `SimpleSlot`

### getFunctionType

    public FunctionType getFunctionType()

### defineReferenceAt

    public SymbolTable.Reference defineReferenceAt(Node n)

### inGlobalScope

    public boolean inGlobalScope()

### inExterns

    public boolean inExterns()

### getDeclarationNode

    public Node getDeclarationNode()

### getSourceFileName

    public String getSourceFileName()

### getPropertyScope

    public SymbolTable.SymbolScope getPropertyScope()

### getJSDocInfo

    public JSDocInfo getJSDocInfo()

  Description copied from interface: `StaticSlot`
  Gets the JSDoc for this slot.

  Specified by:
    `getJSDocInfo` in interface `StaticSlot<JSType>`
  Overrides:
    `getJSDocInfo` in class `SimpleSlot`

### isProperty

    public boolean isProperty()

  Whether this is a property of another variable.

### isLexicalVariable

    public boolean isLexicalVariable()

  Whether this is a variable in a lexical scope.

### isDocOnlyParameter

    public boolean isDocOnlyParameter()

  Whether this is a variable that's only in JSDoc.

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`