dmd.backend.newman

Compiler implementation of the D programming language.

Members

Functions

NEWTEMPMANGLE
bool NEWTEMPMANGLE()
Undocumented in source. Be warned that the author may not have intended to support it.
cpp_mangle
char* cpp_mangle(Symbol* s)

'Mangle' a name for output.

cpp_operator
char* cpp_operator(int* poper, type** pt)

Convert from operator token to name. Output: *poper OPxxxx *pt set to type for user defined conversion

cpp_operator2
char* cpp_operator2(token_t* to, int* pcastoverload)

Alternate version that works on a list of token's. Input: to list of tokens Output: *pcastoverload 1 if user defined type conversion

cpp_opident
char* cpp_opident(int op)

Find identifier string associated with operator.

cpp_opidx
int cpp_opidx(int op)

Find index in oparray[] for operator.

cpp_typetostring
char* cpp_typetostring(type* t, char* prefix)

Generate and return a pointer to a string constructed from the type, appended to the prefix. Since these generated strings determine the uniqueness of names, they are also used to determine if two types are the same.

cpp_unmangleident
char* cpp_unmangleident(const(char)* p)

Convert from identifier to operator

mangle_tbl
Symbol* mangle_tbl(int flag, type* t, Classsym* stag, baseclass_t* b)

Mangle a vtbl or vbtbl name.

template_mangle
char* template_mangle(Symbol* s, param_t* arglist)

Create mangled name for template instantiation.

unmangle_pt
char* unmangle_pt(const(char)** s)
Undocumented in source. Be warned that the author may not have intended to support it.
unmangle_pt
char* unmangle_pt(const(char)** )
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.

Manifest constants

BUFIDMAX
enum BUFIDMAX;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.

Static variables

cpp_name_adelete
char[4] cpp_name_adelete;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
cpp_name_anew
char[4] cpp_name_anew;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
cpp_name_as
char[3] cpp_name_as;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
cpp_name_ct
char[3] cpp_name_ct;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
cpp_name_delete
char[3] cpp_name_delete;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
cpp_name_dt
char[3] cpp_name_dt;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
cpp_name_new
char[3] cpp_name_new;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
cpp_name_primdt
char[4] cpp_name_primdt;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
cpp_name_priminv
char[4] cpp_name_priminv;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
cpp_name_scaldeldt
char[4] cpp_name_scaldeldt;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
cpp_name_vc
char[4] cpp_name_vc;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
oparray
OPTABLE[57] oparray;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.

Structs

Mangle
struct Mangle
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
MangleInuse
struct MangleInuse
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
OPTABLE
struct OPTABLE
token_t
struct token_t
Undocumented in source.

Meta