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.staticcond
Compiler implementation of the
D programming language.
Authors:
License:
Source staticcond.d
Documentation https://dlang.org/phobos/dmd_staticcond.html
- bool
evalStaticCondition(Scope*sc, Expressionoriginal, Expressione, out boolerrors, Expressions*negatives= null); - Semantically analyze and then evaluate a static condition at compile time. This is special because short circuit operators &&, || and ?: at the top level are not semantically analyzed if the result of the expression is not necessary.Parameters:
Scope* scinstantiating scope Expression originaloriginal expression, for error messages Expression eresulting expression bool errorsset to true if errors occurred Expressions* negativesarray to store negative clauses Returns:true if evaluates to true - const(char)*
visualizeStaticCondition(Expressionoriginal, Expressioninstantiated, const Expression[]negatives, boolfull, ref uintitemCount); - Format a static condition as a tree-like structure, marking failed and bypassed expressions.Parameters:
Expression originaloriginal expression Expression instantiatedinstantiated expression Expression[] negativesarray with negative clauses from instantiatedexpressionbool fullcontrols whether it shows the full output or only failed parts uint itemCountreturns the number of written clauses Returns:formatted string or null if the expressions were null, or if the instantiated expression is not based on the original one
Copyright © 1999-2019 by the D Language Foundation | Page generated by
Ddoc on Sun Sep 1 19:49:41 2019