Provides a context for configuration.
More...
#include <contextual.hpp>
Inherits kdb::Subject.
Public Member Functions |
std::string | operator[] (std::string const &layer) const |
void | attachByName (std::string const &key_name, Observer &observer) |
std::string | evaluate (std::string const &key_name) const |
std::string | evaluate (std::string const &key_name, std::function< bool(std::string const &, std::string &, bool in_group)> const &on_layer) const |
template<typename T , typename... Args> |
void | activate (Args &&...args) |
| Globally activate the layer.
|
Detailed Description
Provides a context for configuration.
Is a subject for observers.
Holds currently active layers and allows global/scoped activation of layers.
Member Function Documentation
template<typename T , typename... Args>
void kdb::Context::activate |
( |
Args &&... |
args | ) |
|
|
inline |
Globally activate the layer.
- Template Parameters
-
T | the layer to activate |
Args | the types for the arguments to pass to layer construction |
- Parameters
-
args | the arguments to pass to layer construction |
void kdb::Context::attachByName |
( |
std::string const & |
key_name, |
|
|
Observer & |
observer |
|
) |
| |
|
inline |
Attach observer using to all events given by its specification (name)
- Parameters
-
key_name | the name with placeholders to be used for attaching |
observer | the observer to attach to |
std::string kdb::Context::evaluate |
( |
std::string const & |
key_name | ) |
const |
|
inline |
Evaluate a specification (name) and return a key name under current context
- Parameters
-
key_name | the name with placeholders to be evaluated |
std::string kdb::Context::evaluate |
( |
std::string const & |
key_name, |
|
|
std::function< bool(std::string const &, std::string &, bool in_group)> const & |
on_layer |
|
) |
| const |
|
inline |
Evaluate specification with this context.
- Parameters
-
key_name | the keyname with placeholders to evaluate |
on_layer | the function to be called for every placeholder found |
- on_layer is called for every layer in the
- specification.
- Returns
- the evaluated string
std::string kdb::Context::operator[] |
( |
std::string const & |
layer | ) |
const |
|
inline |
Lookup value for a current active layer
- Parameters
-
layer | the name of the requested layer |
- Returns
- the layer
The documentation for this class was generated from the following file: