View source code
Display the source code in dmd/sideeffect.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.sideeffect
Find side-effects of expressions.
Documentation
https://dlang.org/phobos/dmd_sideeffect.html
Coverage
https://codecov.io/gh/dlang/dmd/src/master/src/dmd/sideeffect.d
Functions
Name | Description |
---|---|
callSideEffectLevel(f)
|
Determine if the call of f, or function type or delegate type t1, has any side effects. |
copyToTemp(stc, name, e)
|
Build a temporary variable to copy the value of e into. |
discardValue(e)
|
The result of this expression will be discarded. Print error messages if the operation has no side effects (and hence is meaningless). |
extractSideEffect(sc, name, e0, e, alwaysCopy)
|
Build a temporary variable to extract e's evaluation, if e is not trivial. |
hasSideEffect(e, assumeImpureCalls)
|
Determine if Expression has any side effects. |
isTrivialExp(e)
|
Front-end expression rewriting should create temporary variables for non trivial sub-expressions in order to: 1. save evaluation order 2. prevent sharing of sub-expression in AST |
Authors
License
Copyright © 1999-2022 by the D Language Foundation | Page generated by ddox.