|
morph 0.1.0
Asynchronous bridge between GUI thread and business models
|
Condition: field's engaged value equals literal. An unengaged field is not vacuously satisfied here (unlike the comparison kinds) — a field with no value cannot equal anything, so equals returns false while the field is unengaged.
More...
#include <forms.hpp>
Public Member Functions | |
| constexpr bool | test (const A &action) const noexcept |
Evaluates the condition against action. | |
| glz::generic_u64 | emitNode () const |
| Emits this condition's x-rules JSON node. | |
Public Attributes | |
| V A::* | field |
| Pointer to the member this condition inspects. | |
| L | literal |
| The literal to compare the field's engaged value against. | |
Static Public Attributes | |
| static constexpr detail::RuleKind | kind = detail::RuleKind::Equals |
| The wire "kind" this condition emits: "equals". | |
| static constexpr bool | isCondition = true |
| Usable as a nested condition: this node's test() is a function of the action, so composing it into an and/or/not tree changes what that tree evaluates to. | |
Condition: field's engaged value equals literal. An unengaged field is not vacuously satisfied here (unlike the comparison kinds) — a field with no value cannot equal anything, so equals returns false while the field is unengaged.
| V | Field member type. |
| A | Action type the field belongs to. |
| L | Literal type (must satisfy RuleLiteral). |
|
inlinenodiscardconstexprnoexcept |
|
inlinenodiscard |
| V A::* morph::forms::Equals< V, A, L >::field |
| L morph::forms::Equals< V, A, L >::literal |
|
staticconstexpr |
|
staticconstexpr |