|
| | ResultHandle (Handle< T > const &handle) |
| | The result read.
|
| template<typename Class, typename Member> |
| Handle< Member > | at (Member Class::*member) const =delete |
| | Not available: bind the result with let first, auto r = screen.let("r", m.result());, then read r.at(...).
|
| Handle< Any > | at (std::string_view field) const =delete |
| | Not available: bind the result with let first, auto r = screen.let("r", m.result());, then read r.at(...).
|
| Public Member Functions inherited from morph::ui::author::Handle< T > |
|
| Handle ()=default |
| | An absent handle.
|
| bool | present () const noexcept |
| | Whether the handle holds an expression.
|
| Json const & | json () const |
| | The expression's JSON.
|
| Handle< Member > | at (Member Class::*member) const |
| | A field of the value, by member pointer: a renamed field is a compile error.
|
| Handle | orElse (Handle const &fallback) const |
| | The value, or a fallback when it is null.
|
template<typename T>
class morph::ui::author::ResultHandle< T >
A mutation's result: a Handle with no field reads.
A result is not a named read, so a field of it cannot be read in place: the screen binds it first, auto r = screen.let("r", m.result());, and reads r.at(...). The at overloads are deleted, so the mistake is a compile error at the call rather than a refusal when the screen is registered. It converts to Handle<T> wherever a handle is taken.
- Template Parameters
-
Definition at line 1396 of file author.hpp.