dmd.tocsym
Convert a D symbol to a symbol the linker understands (with mangled name).
License
Source: tocsym.d
Documentation: https://dlang.org/phobos/dmd_tocsym.html
-
Declaration
Symbol*toSymbolX(Dsymbolds, const(char)*prefix, SCsclass, type*t, const(char)*suffix);Helper
-
Declaration
Symbol*toSymbol(Dsymbols); -
Declaration
Symbol*toImport(Symbol*sym, Locloc); -
Declaration
Symbol*toImport(Declarationds);Generate import symbol from symbol.
-
Declaration
Symbol*toThunkSymbol(FuncDeclarationfd, intoffset);Thunks adjust the incoming 'this' pointer by '
offset'. -
Declaration
Classsym*fake_classsym(Identifierid);Fake a struct symbol.
-
Declaration
Symbol*toVtblSymbol(ClassDeclarationcd, boolgenCsymbol= true);This is accessible via the ClassData, but since it is frequently needed directly (like for rtti comparisons), make it directly accessible.
-
Declaration
Symbol*toInitializer(AggregateDeclarationad);Create the static initializer for the struct/class.
-
Declaration
Symbol*aaGetSymbol(TypeAArraytaa, const(char)*func, intflags);Determine the right symbol to look up an associative array element.
Input:
flags0 don't add value signature 1 add value signature -
Declaration
Symbol*toSymbol(StructLiteralExpsle); -
Declaration
Symbol*toSymbolCpp(ClassDeclarationcd);For C++ class
cd, generate an instance of _cpp_type_info_ptr and populate it with a pointer to the C++ type info.Parameters
ClassDeclarationcdC++ class
Return Value
symbol of instance of _cpp_type_info_ptr
-
Declaration
Symbol*toSymbolCppTypeInfo(ClassDeclarationcd);Generate Symbol of C++ type info for C++ class
cd.Parameters
ClassDeclarationcdC++ class
Return Value
Symbol of
cd's rtti type info -
Declaration
SrcpostoSrcpos(Locloc);Converts a Loc to backend Srcpos
Parameters
LoclocSource code location
Return Value
Srcpos backend struct corresponding to the given location