ThisDeclaration

For the "this" parameter to member functions

extern (C++) final
class ThisDeclaration : VarDeclaration {}

Inherited Members

From VarDeclaration

isDataseg
bool isDataseg()

Does symbol go into data segment? Includes extern variables.

isThreadlocal
bool isThreadlocal()

Does symbol go into thread local storage?

isCTFE
bool isCTFE()

Can variable be read and written by CTFE?

canTakeAddressOf
bool canTakeAddressOf()

Return true if we can take the address of this variable.

needsScopeDtor
bool needsScopeDtor()

Return true if variable needs to call the destructor.

callScopeDtor
Expression callScopeDtor(Scope* sc)

If a variable has a scope destructor call, return call for it. Otherwise, return NULL.

getConstInitializer
Expression getConstInitializer(bool needFullType = true)

If variable has a constant expression initializer, get it. Otherwise, return null.

expandInitializer
Expression expandInitializer(Loc loc)

Helper function for the expansion of manifest constant.

checkNestedReference
bool checkNestedReference(Scope* sc, Loc loc)

Check to see if this variable is actually in an enclosing function rather than the current one. Update nestedrefs[], closureVars[] and outerVars[].

enclosesLifetimeOf
bool enclosesLifetimeOf(VarDeclaration v)

Determine if this has a lifetime that lasts past the destruction of v

addMaybe
void addMaybe(VarDeclaration v)

Add variable to maybes[]. When a maybescope variable v is assigned to a maybescope variable this, we cannot determine if this is actually scope until the semantic analysis for the function is completed. Thus, we save the data until then.

Meta