Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
a local clone.
dmd.typesem
Compiler implementation of the
D programming language.
Authors:
License:
Source typesem.d
Documentation https://dlang.org/phobos/dmd_typesem.html
- Type
typeSemantic
(Typet
, Locloc
, Scope*sc
); - Perform semantic analysis on a type.Parameters:
Type t
Type AST node Loc loc
the location of the type Scope* sc
context Returns:Type with completed semantic analysis, Terror if errors were encountered - static Type
merge
(Typetype
); - Expression
getProperty
(Typet
, ref const Locloc
, Identifierident
, intflag
); - Calculate built-in properties which just the type is necessary.Parameters:
Type t
the type for which the property is calculated Loc loc
the location where the property is encountered Identifier ident
the identifier of the property int flag
if flag & 1, don't report "not a property" error and just return NULL. - void
resolve
(Typemt
, ref const Locloc
, Scope*sc
, Expression*pe
, Type*pt
, Dsymbol*ps
, boolintypeid
= false); - Resolve type 'mt' to either type, symbol, or expression. If errors happened, resolved to Type.terror.Parameters:
Type mt
type to be resolved Loc loc
the location where the type is encountered Scope* sc
the scope of the type Expression* pe
is set if t is an expression Type* pt
is set if t is a type Dsymbol* ps
is set if t is a symbol bool intypeid
true if in type id - Expression
dotExp
(Typemt
, Scope*sc
, Expressione
, Identifierident
, intflag
); - Access the members of the object e. This type is same as e.type.Parameters:
Type mt
type for which the dot expression is used Scope* sc
instantiating scope Expression e
expression to convert Identifier ident
identifier being used int flag
DotExpFlag bit flags Returns:resulting expression with e.ident resolved
Copyright © 1999-2018 by the D Language Foundation | Page generated by
Ddoc on Wed May 2 06:30:52 2018