Compiler implementation of the D programming language.
We've mistakenly parsed
t as a type. Redo
t as an Expression.
|Type ||mistaken type|
Perform semantic analysis on a type.
|Type ||Type AST node|
|Loc ||the location of the type|
Typewith completed semantic analysis,
Terrorif errors were encountered
Compile the MixinType, returning the type AST.
Doesn't run semantic() on the returned type.
|TypeMixin ||mixin to compile as a type|
|Loc ||location for error messages|
If an identical type to
type is in
type.stringtable, return the latter one. Otherwise, add it to
type.stringtable. Some types don't get merged and are returned as-is.
|Type ||Type to check against existing types|
Calculate built-in properties which just the type is necessary.
|Type ||the type for which the property is calculated|
|Loc ||the location where the property is encountered|
|Identifier ||the identifier of the property|
|int ||if flag & 1, don't report "not a property" error and just return NULL.|
Resolve type 'mt' to either type, symbol, or expression. If errors happened, resolved to Type.terror.
|Type ||type to be resolved|
|Loc ||the location where the type is encountered|
|Scope* ||the scope of the type|
|Expression* ||is set if t is an expression|
|Type* ||is set if t is a type|
|Dsymbol* ||is set if t is a symbol|
|bool ||true if in type id|
Access the members of the object e. This type is same as e.type.
|Type ||type for which the dot expression is used|
|Scope* ||instantiating scope|
|Expression ||expression to convert|
|Identifier ||identifier being used|
|int ||DotExpFlag bit flags|
Get the the default initialization expression for a type.
|Type ||the type for which the init expression is returned|
|Loc ||the location where the expression needs to be evaluated|
© 1999–2019 The D Language Foundation
Licensed under the Boost License 1.0.