Gromacs  2025-dev-20240710-afbd73d
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
keyvaluetreebuilder.h File Reference
#include <initializer_list>
#include <string>
#include <utility>
#include <vector>
#include "gromacs/utility/any.h"
#include "gromacs/utility/gmxassert.h"
#include "gromacs/utility/keyvaluetree.h"
+ Include dependency graph for keyvaluetreebuilder.h:
+ This graph shows which files directly or indirectly include this file:


Declares classes for building the data structures in keyvaluetree.h.

These are separate from the data structures to enforce clear separation of the APIs, and to make the data structure immutable after construction.

For the main use case described in mdrun modules, they are mainly used internally, but currently gmx::KeyValueTreeObjectBuilder (and everything it references) is exposed for more complex transforms through gmx::IKeyValueTreeTransformRules.

Teemu Murtola


class  gmx::KeyValueTreeBuilder
 Root builder for creating trees that have an object at the root. More...
class  gmx::KeyValueTreeValueBuilder
 Builder for KeyValueTreeValue objects. More...
class  gmx::KeyValueTreeUniformArrayBuilder< T >
 Builder for KeyValueTreeArray objects where all elements are of type T. More...
class  gmx::KeyValueTreeObjectArrayBuilder
 Builder for KeyValueTreeArray objects where all elements are KeyValueTreeObject objects. More...
class  gmx::KeyValueTreeObjectBuilder
 Builder for KeyValueTreeObject objects. More...