1 /// Author: Aziz Köksal 2 /// License: GPL3 3 /// $(Maturity high) 4 module dil.semantic.TypesEnum; 5 6 /// Enumeration of Type IDs. 7 enum TYP 8 { 9 Error, 10 // Basic types. 11 Char, /// char 12 WChar, /// wchar 13 DChar, /// dchar 14 Bool, /// bool 15 Int8, /// byte 16 UInt8, /// ubyte 17 Int16, /// short 18 UInt16, /// ushort 19 Int32, /// int 20 UInt32, /// uint 21 Int64, /// long 22 UInt64, /// ulong 23 Int128, /// cent 24 UInt128, /// ucent 25 Float32, /// float 26 Float64, /// double 27 Float80, /// real 28 IFloat32, /// ifloat 29 IFloat64, /// idouble 30 IFloat80, /// ireal 31 CFloat32, /// cfloat 32 CFloat64, /// cdouble 33 CFloat80, /// creal 34 Void, /// void 35 36 None, /// TypeNone in the specs. Purpose? 37 38 Parameter, /// Function parameter. 39 Parameters, /// List of function parameters. 40 41 DArray, /// Dynamic array. 42 SArray, /// Static array. 43 AArray, /// Associative array. 44 45 Enum, /// An enum. 46 Struct, /// A struct. 47 Class, /// A class. 48 Typedef, /// A typedef. 49 Function, /// A function. 50 FuncPtr, /// A function pointer. 51 Delegate, /// A delegate. 52 Pointer, /// A pointer. 53 Reference, /// A reference. 54 Identifier, /// An identifier. 55 TInstance, /// A template instance. 56 Tuple, /// A template tuple. 57 Const, /// A constant type. D2.0 58 Immutable, /// An immutable type. D2.0 59 }