31#ifndef DRAIN_SMARTMAP_TOOLS_H
32#define DRAIN_SMARTMAP_TOOLS_H
34#include <drain/Reference.h>
83 template <
class M,
class F>
85 void get(
const M & m,
const typename M::key_type & key, F & value){
86 typename M::const_iterator it = m.find(key);
98 typedef std::list<std::string> keylist_t;
101 template <
class M,
class S,
bool STRICT=true>
103 void setCastableValues(M & dst,
const std::map<std::string,S> & srcMap) {
105 for (
const typename std::map<std::string,S>::value_type & entry: srcMap){
106 MapTools::setValue<M,drain::Castable,STRICT>(dst, entry.first, (
const drain::Castable &) entry.second);
122 template <
class M,
class S>
125 setCastableValues<M,S,false>(dst, src);
130 template <
class M,
bool STRICT=true>
132 void setValues(M & dst,
const std::initializer_list<Variable::init_pair_t > &l){
133 for (
const auto & entry: l){
134 drain::MapTools::setValue<M,Variable,STRICT>(dst, entry.first, entry.second);
VariableT is a final class applied through typedefs Variable, Reference and FlexibleVariable.
Definition VariableT.h:87
Definition DataSelector.cpp:1277