AngouriMath

Navigation

← Back to list of members

SubsumesCore​(AngouriMath.​Core.​Transformations.​Matching.​MatchPattern,​System.​Collections.​Generic.​Dictionary{System.​String,​AngouriMath.​Core.​Transformations.​Matching.​MatchPattern})

 Method (no overloads)

Summary

A hole is the most general thing a pattern can be, and it subsumes whatever it is
allowed to stand for — subject to the two constraints it may carry.

Remarks

A where predicate is arbitrary code over an expression, so what it admits
cannot be read off the pattern and this refuses rather than guesses.
A required type is checked against what the other pattern guarantees at its
root, which is RequiredRootType — a necessary condition, and here the
direction that makes it usable: a pattern whose root is always a Divf is
certainly matched by a hole asking for an Entity. A pattern that guarantees
nothing, an Exact literal among them, is refused: two entities can be equal
without being the same runtime type, so a literal's own type is not what it
guarantees.
Then the assignment. A hole seen for the second time must stand for the same thing
it stood for the first time, which is what makes Mulf(a, a) strictly less
general than Mulf(a, b) rather than equally general.

























Angouri © 2019-2023 · Project's repo · Site's repo · Octicons · Transparency · 4378 pages online