Elektra  0.8.10
Public Member Functions
kdb::Context Class Reference

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
Tthe layer to activate
Argsthe types for the arguments to pass to layer construction
Parameters
argsthe 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_namethe name with placeholders to be used for attaching
observerthe 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_namethe 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_namethe keyname with placeholders to evaluate
on_layerthe 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
layerthe name of the requested layer
Returns
the layer

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