Lumiera
0.pre.03
»edit your freedom«
|
Definition at line 162 of file gen-node.hpp.
Public Member Functions | |
template<typename X > | |
DataCap (X &&x) | |
DataCap (DataCap const &)=default | |
DataCap (DataCap &&)=default | |
DataCap (DataCap &o) | |
Rec::scopeIter | childIter () const |
visit children of a nested Record<GenNode> | |
Locator | expand () const |
template<typename X > | |
X & | get () |
template<typename X > | |
X const & | get () const |
template<> | |
Rec & | get () |
especially when accessing for a Record, a payload of type RecordRef<Record<GenNode>> (aka RecRef) will be automatically dereferenced. More... | |
template<> | |
Rec const & | get () const |
bool | hasAttribute (string key) const |
bool | isNested () const |
determine if payload constitutes a nested scope ("object") | |
bool | matchBool (bool) const |
bool | matchData (DataCap const &) const |
Implementation of content equality test, delgating to content. More... | |
bool | matchDbl (double) const |
bool | matchLuid (hash::LuidH) const |
bool | matchNum (int64_t) const |
bool | matchRec (RecRef const &) const |
bool | matchRec (Rec const &) const |
bool | matchTime (time::TimeValue) const |
bool | matchTxt (string const &) const |
operator string () const | |
DataCap & | operator= (DataCap const &)=default |
DataCap & | operator= (DataCap &&)=default |
string | recordType () const |
peek into the type field of a nested Record<GenNode> More... | |
template<typename X > | |
std::optional< X > | retrieveAttribute (string key) const |
peek into the attributes of a nested Record | |
Public Member Functions inherited from Variant< DataValues > | |
Variant (X &&x) | |
Variant (Variant &ref) | |
Variant (Variant const &ref) | |
Variant (Variant &&rref) | |
void | accept (Visitor &visitor) |
bool | accept (Predicate &visitor) const |
string | accept (Renderer &visitor) const |
X & | get () |
X const & | get () const |
operator string () const | |
diagnostic helper | |
Variant & | operator= (X x) |
Variant & | operator= (Variant &ovar) |
Variant & | operator= (Variant const &ovar) |
Variant & | operator= (Variant &&rvar) |
Classes | |
struct | Locator |
Private Member Functions | |
Rec * | maybeAccessNestedRec () |
Additional Inherited Members | |
Public Types inherited from Variant< DataValues > | |
enum | |
using | FirstMatching = variant::FirstMatchingType< DataValues, _P_ > |
Metafunction to pick the first of the variant's types, which satisfies the given trait or predicate template. More... | |
using | VisitorConstFunc = typename variant::VFunc< RET >::template VisitorInterface< meta::ConstAll< typename DataValues ::List > > |
using | VisitorFunc = typename variant::VFunc< RET >::template VisitorInterface< DataValues > |
Protected Member Functions inherited from Variant< DataValues > | |
Buff< X > & | buff () |
Buffer & | buffer () |
Buffer const & | buffer () const |
X * | maybeGet () |
bool matchData | ( | DataCap const & | o | ) | const |
Implementation of content equality test, delgating to content.
error::Logic | when the given other DataCap does not hold a value of the same type than this DataCap. |
special treatment to allow matching a RecRef with an Record or RecRef on the other side
Definition at line 87 of file gen-node.cpp.
|
inline |
Core operation to expand nested scopes recursively
Definition at line 661 of file gen-node.hpp.
|
inline |
peek into the type field of a nested Record<GenNode>
Definition at line 769 of file gen-node.hpp.
Referenced by TrackPresenter::buildMutator().
|
inlineprivate |
helper to possibly peek into a nested record
Definition at line 749 of file gen-node.hpp.
|
inline |
especially when accessing for a Record, a payload of type RecordRef<Record<GenNode>>
(aka RecRef) will be automatically dereferenced.
Effectively this allows a GenNode with a RecRef payload to "stand in" for a node holding a full Record inline. And it allows the construction of a special Ref-GenNode , which even shares the identity (the ID) of the referenced record-GenNode.
Definition at line 729 of file gen-node.hpp.
Referenced by WrappedStandardExeBuilder::__call__().