View source code
Display the source code in dmd/dfa/fast/expression.d from which thispage was generated on github.
Report a bug
If you spot a problem with this page, click here to create aGitHub 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 usinglocal clone.

Function dmd.dfa.fast.expression.ExpressionWalker.seeEqual

Handles equality checks (e.g., x == y).

dmd.dfa.fast.structure.DFALatticeRef seeEqual(
  dmd.dfa.fast.structure.DFALatticeRef lhs,
  dmd.dfa.fast.structure.DFALatticeRef rhs,
  bool truthiness,
  Type lhsType,
  Type rhsType
);

This is critical for control flow. If the DFA sees if (x == null), this function records that relationship so the StatementWalker can create a scope where x is known to be null.

Authors

Richard (Rikki) Andrew Cattermole

License

Boost License 1.0