1 /** 2 * Defines AST nodes for the code generation stage. 3 * 4 * Documentation: https://dlang.org/phobos/dmd_astcodegen.html 5 * Coverage: https://codecov.io/gh/dlang/dmd/src/master/src/dmd/astcodegen.d 6 */ 7 module dmd.astcodegen; 8 9 10 struct ASTCodegen 11 { 12 public import dmd.aggregate; 13 public import dmd.aliasthis; 14 public import dmd.arraytypes; 15 public import dmd.attrib; 16 public import dmd.cond; 17 public import dmd.dclass; 18 public import dmd.declaration; 19 public import dmd.denum; 20 public import dmd.dimport; 21 public import dmd.dmodule; 22 public import dmd.dstruct; 23 public import dmd.dsymbol; 24 public import dmd.dtemplate; 25 public import dmd.dversion; 26 public import dmd.expression; 27 public import dmd.func; 28 public import dmd.hdrgen; 29 public import dmd.init; 30 public import dmd.initsem; 31 public import dmd.mtype; 32 public import dmd.nspace; 33 public import dmd.statement; 34 public import dmd.staticassert; 35 public import dmd.typesem; 36 public import dmd.ctfeexpr; 37 38 39 alias initializerToExpression = dmd.initsem.initializerToExpression; 40 alias typeToExpression = dmd.typesem.typeToExpression; 41 alias UserAttributeDeclaration = dmd.attrib.UserAttributeDeclaration; 42 alias Ensure = dmd.func.Ensure; // workaround for bug in older DMD frontends 43 44 alias MODFlags = dmd.mtype.MODFlags; 45 alias Type = dmd.mtype.Type; 46 alias Parameter = dmd.mtype.Parameter; 47 alias Taarray = dmd.mtype.Taarray; 48 alias Tbool = dmd.mtype.Tbool; 49 alias Tchar = dmd.mtype.Tchar; 50 alias Tdchar = dmd.mtype.Tdchar; 51 alias Tdelegate = dmd.mtype.Tdelegate; 52 alias Tenum = dmd.mtype.Tenum; 53 alias Terror = dmd.mtype.Terror; 54 alias Tfloat32 = dmd.mtype.Tfloat32; 55 alias Tfloat64 = dmd.mtype.Tfloat64; 56 alias Tfloat80 = dmd.mtype.Tfloat80; 57 alias Tfunction = dmd.mtype.Tfunction; 58 alias Tpointer = dmd.mtype.Tpointer; 59 alias Tident = dmd.mtype.Tident; 60 alias Tint8 = dmd.mtype.Tint8; 61 alias Tint16 = dmd.mtype.Tint16; 62 alias Tint32 = dmd.mtype.Tint32; 63 alias Tint64 = dmd.mtype.Tint64; 64 alias Tsarray = dmd.mtype.Tsarray; 65 alias Tstruct = dmd.mtype.Tstruct; 66 alias Tuns8 = dmd.mtype.Tuns8; 67 alias Tuns16 = dmd.mtype.Tuns16; 68 alias Tuns32 = dmd.mtype.Tuns32; 69 alias Tuns64 = dmd.mtype.Tuns64; 70 alias Tvoid = dmd.mtype.Tvoid; 71 alias Twchar = dmd.mtype.Twchar; 72 73 alias ParameterList = dmd.mtype.ParameterList; 74 alias VarArg = dmd.mtype.VarArg; 75 alias STC = dmd.declaration.STC; 76 alias Dsymbol = dmd.dsymbol.Dsymbol; 77 alias Dsymbols = dmd.dsymbol.Dsymbols; 78 alias Prot = dmd.dsymbol.Prot; 79 80 alias stcToBuffer = dmd.hdrgen.stcToBuffer; 81 alias linkageToChars = dmd.hdrgen.linkageToChars; 82 alias protectionToChars = dmd.hdrgen.protectionToChars; 83 84 alias isType = dmd.dtemplate.isType; 85 alias isExpression = dmd.dtemplate.isExpression; 86 alias isTuple = dmd.dtemplate.isTuple; 87 88 }