Scope

Contains symbols and supports lookup of symbols by cursor position.

Constructors

this
this()
Undocumented in source.
this
this(uint begin, uint end)

Destructor

~this
~this()
Undocumented in source.

Postblit

this(this)
this(this)
Undocumented in source.

Members

Functions

addSymbol
void addSymbol(DSymbol* symbol, bool owns)

Adds the given symbol to this scope.

getFirstSymbolByNameAndCursor
DSymbol* getFirstSymbolByNameAndCursor(istring name, size_t cursorPosition)
Undocumented in source. Be warned that the author may not have intended to support it.
getScopeByCursor
Scope* getScopeByCursor(size_t cursorPosition)
getSymbolsAtGlobalScope
inout(DSymbol)*[] getSymbolsAtGlobalScope(istring name)

Returns an array of symbols that are present at global scope

getSymbolsByName
inout(DSymbol)*[] getSymbolsByName(istring name)
getSymbolsByNameAndCursor
DSymbol*[] getSymbolsByNameAndCursor(istring name, size_t cursorPosition)
getSymbolsInCursorScope
DSymbol*[] getSymbolsInCursorScope(size_t cursorPosition)
hasSymbolRecursive
bool hasSymbolRecursive(const(DSymbol)* symbol)
Undocumented in source. Be warned that the author may not have intended to support it.
symbols
auto symbols()
Undocumented in source. Be warned that the author may not have intended to support it.

Variables

children
UnrolledList!(Scope*, Mallocator, false) children;

Child scopes

endLocation
uint endLocation;

End location of this scope in bytes

parent
Scope* parent;

The scope that contains this one

startLocation
uint startLocation;

Start location of this scope in bytes

Meta