View source code
Display the source code in dmd/expressionsem.d from which this
page was generated on github.
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
local clone.
Module dmd.expressionsem
Semantic analysis of expressions.
Specification
($LINK2 https://dlang.org/spec/expression.html, Expressions)
Documentation
https://dlang.org/phobos/dmd_expressionsem.html
Coverage
https://codecov.io/gh/dlang/dmd/src/master/src/dmd/expressionsem.d
Functions
Name | Description |
---|---|
arrayExpressionSemantic(exps, sc, preserveErrors)
|
Perform semantic() on an array of Expressions. |
binSemantic(e, sc)
|
Helper function for easy error propagation. If error occurs, returns ErrorExp. Otherwise returns NULL. |
checkAddressable(e, sc)
|
This check ensures that the object in exp can have its address taken, or
issue a diagnostic error.
|
checkAddressVar(sc, exp, v)
|
Determine if exp , which gets its address taken, can do so safely.
|
checkSharedAccess(e, sc, returnRef)
|
If expression is shared, check that we can access it. Give error message if not. |
dotIdSemanticProp(exp, sc, flag)
|
Resolve properties, i.e. e1 , without seeing UFCS.
|
expressionsToString(buf, sc, exps)
|
Perform semantic analysis and CTFE on expressions to produce a string. |
getThisSkipNestedFuncs(loc, sc, s, ad, e1, t, var, flag)
|
Helper function for getRightThis() .
Gets this of the next outer aggregate.
|
getVarExp(em, loc, sc)
|
Returns em as a VariableExp
|
makeThis2Argument(loc, sc, fd)
|
Make a dual-context container for use as a this argument.
|
resolveIsPackage(sym)
|
Determines whether a symbol represents a module or package (Used as a helper for is(type == module) and is(type == package)) |
resolveOpDollar(sc, ae, pe0)
|
Runs semantic on ae.arguments. Declares temporary variables if '$' was used. |
resolveOpDollar(sc, ae, ie, pe0)
|
Runs semantic on se.lwr and se.upr. Declares a temporary variable if '$' was used. |
resolvePropertiesOnly(sc, e1)
|
If e1 is a property function (template), resolve it. |
semanticString(sc, exp, s)
|
Resolve exp as a compile-time known string.
|
symbolToExp(s, loc, sc, hasOverloads)
|
Turn symbol s into the expression it represents.
|
toBoolean(exp, sc)
|
Try to treat exp as a boolean,
|
trySemantic(exp, sc)
|
Try to run semantic routines. If they fail, return NULL. |
unaSemantic(e, sc)
|
Helper function for easy error propagation. If error occurs, returns ErrorExp. Otherwise returns NULL. |
verifyHookExist(loc, sc, id, description, module_)
|
Make sure that the runtime hook id exists.
|
Authors
License
Copyright © 1999-2024 by the D Language Foundation | Page generated by ddox.