Lumiera  0.pre.03
command-storage-holder.hpp File Reference

Go to the source code of this file.


A passive container record holding the actual command arguments & UNDO state.

Effectively, this is the top level CmdClosure Implementation, which in turn delegates to sub-closures for the operation arguments and for UNDO management. While all command objects themselves have a common type (type erasure), the actual argument tuple and the state memento for UNDO can't. Especially, the size of arguments and memento will depend on their respective types. Thus, to manage somehow the storage of this data, we create a common holder, which can than be managed by a custom allocator / object pool.

See also
CmdClosure storage of command arguments
MementoTie wiring of UNDO functions & memento
UndoMutation execution of UNDO

Definition in file command-storage-holder.hpp.


class  StorageHolder< SIG, MEM >
 This is "the" top level CmdClosure implementation. More...


 Proc-Layer implementation namespace root.
 Proc-Layer dispatcher, controller and administrative facilities.