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 Tarray = dmd.mtype.Tarray; 48 alias Taarray = dmd.mtype.Taarray; 49 alias Tbool = dmd.mtype.Tbool; 50 alias Tchar = dmd.mtype.Tchar; 51 alias Tdchar = dmd.mtype.Tdchar; 52 alias Tdelegate = dmd.mtype.Tdelegate; 53 alias Tenum = dmd.mtype.Tenum; 54 alias Terror = dmd.mtype.Terror; 55 alias Tfloat32 = dmd.mtype.Tfloat32; 56 alias Tfloat64 = dmd.mtype.Tfloat64; 57 alias Tfloat80 = dmd.mtype.Tfloat80; 58 alias Tfunction = dmd.mtype.Tfunction; 59 alias Tpointer = dmd.mtype.Tpointer; 60 alias Tident = dmd.mtype.Tident; 61 alias Tint8 = dmd.mtype.Tint8; 62 alias Tint16 = dmd.mtype.Tint16; 63 alias Tint32 = dmd.mtype.Tint32; 64 alias Tint64 = dmd.mtype.Tint64; 65 alias Tsarray = dmd.mtype.Tsarray; 66 alias Tstruct = dmd.mtype.Tstruct; 67 alias Tuns8 = dmd.mtype.Tuns8; 68 alias Tuns16 = dmd.mtype.Tuns16; 69 alias Tuns32 = dmd.mtype.Tuns32; 70 alias Tuns64 = dmd.mtype.Tuns64; 71 alias Tvoid = dmd.mtype.Tvoid; 72 alias Twchar = dmd.mtype.Twchar; 73 74 alias ParameterList = dmd.mtype.ParameterList; 75 alias VarArg = dmd.mtype.VarArg; 76 alias STC = dmd.declaration.STC; 77 alias Dsymbol = dmd.dsymbol.Dsymbol; 78 alias Dsymbols = dmd.dsymbol.Dsymbols; 79 alias Prot = dmd.dsymbol.Prot; 80 81 alias stcToBuffer = dmd.hdrgen.stcToBuffer; 82 alias linkageToChars = dmd.hdrgen.linkageToChars; 83 alias protectionToChars = dmd.hdrgen.protectionToChars; 84 85 alias isType = dmd.dtemplate.isType; 86 alias isExpression = dmd.dtemplate.isExpression; 87 alias isTuple = dmd.dtemplate.isTuple; 88 89 }