dil.ast.Types

Members

Classes

ArrayType
class ArrayType

$(BNF /ArrayType := DynamicArray | StaticArray | SliceArray | AssociativeArray /DynamicArray := T "[" "]" /StaticArray := T "[" E "]" /SliceArray := T "[" E ".." E "]" # for slicing tuples /AssociativeArray := T "[" T "]" /)

BaseClassType
class BaseClassType

$(BNF BaseClassType := Protection? BasicType)

DelegateType
class DelegateType

$(BNF DelegateType := ReturnType delegate ParameterList)

FunctionType
class FunctionType

$(BNF FunctionType := ReturnType function ParameterList)

IdentifierType
class IdentifierType

$(BNF IdentifierType := Type? Identifier)

IllegalType
class IllegalType

Syntax error.

IntegralType
class IntegralType

$(BNF IntegralType := char | int | float | ...)

ModifierType
class ModifierType

$(BNF ModifierType := ModAttrType | ModParenType /ModAttrType := Modifier Type /ModParenType := Modifier "(" Type ")" /Modifier := const | immutable | shared | inout)

ModuleScopeType
class ModuleScopeType

$(BNF ModuleScopeType := ".")

PointerType
class PointerType

$(BNF PointerType:= Type "*")

TmplInstanceType
class TmplInstanceType

$(BNF TemplateInstanceType := / Identifier "!" (TemplateArgumentList | TemplateArgumentSingle))

TypeofType
class TypeofType

$(BNF TypeofType := typeof "(" (Expression | return) ")")

Meta

Authors

Aziz Köksal

License

GPL3 $(Maturity average)