Package 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

Modifier and Type
Method
Description
`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 Details

### 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`