SYNOPSIS

#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)\fC [inline]\fP

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)\fC [inline]\fP

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\fC [inline]\fP

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\fC [inline]\fP

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.

std::string kdb::Context::operator[] (std::string const &layer) const\fC [inline]\fP

Lookup value for a current active layer

Parameters:

layer the name of the requested layer

Author

Generated automatically by Doxygen for Elektra from the source code.