Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using a local clone.

dmd.cxxfrontend

Contains C++ interfaces for interacting with DMD as a library.
Authors:
Expressions* getAttributes(UserAttributeDeclaration a);
atrtibsem.d
const(char)* toCppMangleItanium(Dsymbol s);
mangle/cpp.d
Expression ctfeInterpret(Expression e);
dinterpret.d
const(char)* mangleExact(FuncDeclaration fd);
mangle/package.d
void gendocfile(Module m, const char* ddoctext_ptr, size_t ddoctext_length, const char* datetime, ErrorSink eSink, ref OutBuffer outbuf);
doc.d
FuncDeclaration search_toString(StructDeclaration sd);
dstruct.d
void dsymbolSemantic(Dsymbol dsym, Scope* sc);
dsymbolsem.d
inout(Expression) isExpression(inout RootObject o);
dtemplate.d
void genCppHdrFiles(ref Modules ms, ErrorSink eSink);
dtoh.d
Expression getDefaultValue(EnumDeclaration ed, Loc loc);
enumsem.d
void expandTuples(Expressions* exps, ArgumentLabels* names = null);
expressionsem.d
FuncDeclaration genCfunc(Parameters* fparams, Type treturn, const(char)* name, StorageClass stc = STC.none);
funcsem.d
void genhdrfile(Module m, bool doFuncBodies, ref OutBuffer buf);
hdrgen.d
Statement asmSemantic(AsmStatement s, Scope* sc);
iasm.d
Statement gccAsmSemantic(GccAsmStatement s, Scope* sc);
iasmgcc.d
Initializer initializerSemantic(Initializer init, Scope* sc, ref Type tx, NeedInterpret needInterpret);
initsem.d
void json_generate(ref Modules modules, ref OutBuffer buf);
json.d
Expression optimize(Expression e, int result, bool keepLvalue = false);
optimize.d
void semantic2(Dsymbol dsym, Scope* sc);
semantic2.d
void semantic3(Dsymbol dsym, Scope* sc);
semantic3.d
Statement statementSemantic(Statement s, Scope* sc);
statementsem.d
bool tpsemantic(TemplateParameter tp, Scope* sc, TemplateParameters* parameters);
templateparamsem.d
bool hasDeprecatedAliasThis(Type type);
typesem.d
bool genTypeInfo(Expression e, Loc loc, Type torig, Scope* sc);
typinf.d
bool declareParameter(TemplateParameter tp, Scope* sc);
templatesem.d