Lumiera 0.pre.04
»edit your freedom«
Loading...
Searching...
No Matches
_DefaultBinding< ELM, enable_if< can_recursively_bind_DiffMutable< ELM > > > Struct Template Reference

#include "lib/diff/tree-mutator-diffmutable-binding.hpp"

Description

template<class ELM>
struct lib::diff::anonymous_namespace{tree-mutator-diffmutable-binding.hpp}::_DefaultBinding< ELM, enable_if< can_recursively_bind_DiffMutable< ELM > > >

Entry Point: Specialisation of the collection binding to work on a collection of DiffMutable objects, either embedded directly, or attached via smart-ptr.

Since the DiffMutable interface directly exposes a function to build a TreeMutator, a generic implementation for recursive child mutation can be supplied automatically. Moreover, if the target objects also offer a getID() function to reveal their object identity, the »Matcher« (to check applicability of some diff verb) can likewise be generated automatically.

Note
different than in the base case, recursive child mutation is thus enabled automatically.

Definition at line 151 of file tree-mutator-diffmutable-binding.hpp.

Static Public Member Functions

template<class COLL >
static auto attachTo (COLL &coll)
 

Member Function Documentation

◆ attachTo()

template<class ELM >
template<class COLL >
static auto attachTo ( COLL &  coll)
inlinestatic

Definition at line 155 of file tree-mutator-diffmutable-binding.hpp.

References DiffMutable::buildMutator(), and GenNode::idi.

+ Here is the call graph for this function:
+ Collaboration diagram for _DefaultBinding< ELM, enable_if< can_recursively_bind_DiffMutable< ELM > > >:

The documentation for this struct was generated from the following file: