Compiler implementation of the D programming language.
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.
| Scope* sc | instantiating scope | 
| Expression original | original expression, for error messages | 
| Expression e | resulting expression | 
| bool errors | set to trueif errors occurred | 
| Expressions* negatives | array to store negative clauses | 
Format a static condition as a tree-like structure, marking failed and bypassed expressions.
| Expression original | original expression | 
| Expression instantiated | instantiated expression | 
| Expression[] negatives | array with negative clauses from instantiatedexpression | 
| bool full | controls whether it shows the full output or only failed parts | 
| uint itemCount | returns the number of written clauses | 
null if the expressions were null, or if the instantiated expression is not based on the original one
    © 1999–2019 The D Language Foundation
Licensed under the Boost License 1.0.
    https://dlang.org/phobos/dmd_staticcond.html