Provides a context for configuration.
More...
#include <kdbcontext.hpp>
Inherits kdb::Subject.
Inherited by kdb::ThreadContext.
Public Member Functions |
std::string | operator[] (std::string const &layer) const |
| Lookup value for a current active layer.
|
size_t | size () const |
void | attachByName (std::string const &key_name, ValueObserver &observer) |
| Attach observer using to all events given by its specification (name)
|
std::string | evaluate (std::string const &key_name) const |
| Evaluate a specification (name) and return a key name under current context.
|
std::string | evaluate (std::string const &key_name, std::function< bool(std::string const &, std::string &, bool in_group)> const &on_layer) const |
| Evaluate specification with this context.
|
template<typename T , typename... Args> |
std::shared_ptr< Layer > | 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>
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 |
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 |
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
- Returns:
- size of all current layers (to be used with operator[])
The documentation for this class was generated from the following file: