Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
fhicl::KeyMap Class Reference

#include <KeyMap.h>

Inheritance diagram for fhicl::KeyMap:
fhicl::detail::ParameterWalker< tt::const_flavor::require_const >

Public Member Functions

auto const & result () const
 
- Public Member Functions inherited from fhicl::detail::ParameterWalker< tt::const_flavor::require_const >
 ParameterWalker ()=default
 
virtual ~ParameterWalker ()=default
 
void walk_over (tt::maybe_const_t< ParameterBase, C > &)
 
bool do_before_action (tt::maybe_const_t< ParameterBase, C > &p)
 
void do_after_action (tt::maybe_const_t< ParameterBase, C > &p)
 
void do_enter_table (tt::maybe_const_t< TableBase, C > &t)
 
void do_exit_table (tt::maybe_const_t< TableBase, C > &t)
 
void do_enter_sequence (tt::maybe_const_t< SequenceBase, C > &s)
 
void do_exit_sequence (tt::maybe_const_t< SequenceBase, C > &s)
 
void do_atom (tt::maybe_const_t< AtomBase, C > &a)
 
void do_delegated_parameter (tt::maybe_const_t< DelegateBase, C > &dp)
 

Static Public Member Functions

template<typename T >
static auto get (std::string const &n)
 

Private Member Functions

void enter_table (detail::TableBase const &tb) override
 
void enter_sequence (detail::SequenceBase const &sb) override
 
void atom (detail::AtomBase const &ab) override
 
void delegated_parameter (detail::DelegateBase const &dp) override
 
void append (std::string const &k)
 

Private Attributes

std::vector< std::stringkeys_
 

Detailed Description

Definition at line 12 of file KeyMap.h.

Member Function Documentation

void fhicl::KeyMap::append ( std::string const &  k)
inlineprivate

Definition at line 56 of file KeyMap.h.

57  {
58  keys_.emplace_back(k);
59  }
std::vector< std::string > keys_
Definition: KeyMap.h:32
void fhicl::KeyMap::atom ( detail::AtomBase const &  ab)
inlineoverrideprivate

Definition at line 45 of file KeyMap.h.

46  {
47  append(ab.key());
48  }
void append(std::string const &k)
Definition: KeyMap.h:56
void fhicl::KeyMap::delegated_parameter ( detail::DelegateBase const &  dp)
inlineoverrideprivate

Definition at line 50 of file KeyMap.h.

51  {
52  append(dp.key());
53  }
void append(std::string const &k)
Definition: KeyMap.h:56
void fhicl::KeyMap::enter_sequence ( detail::SequenceBase const &  sb)
inlineoverrideprivate

Definition at line 40 of file KeyMap.h.

41  {
42  append(sb.key());
43  }
void append(std::string const &k)
Definition: KeyMap.h:56
void fhicl::KeyMap::enter_table ( detail::TableBase const &  tb)
inlineoverrideprivate

Definition at line 35 of file KeyMap.h.

36  {
37  append(tb.key());
38  }
void append(std::string const &k)
Definition: KeyMap.h:56
template<typename T >
static auto fhicl::KeyMap::get ( std::string const &  n)
inlinestatic

Definition at line 23 of file KeyMap.h.

24  {
25  KeyMap km;
26  T test{Name(n)};
27  km.walk_over(test);
28  return km.result();
29  }
ChannelGroupService::Name Name
static constexpr double km
Definition: Units.h:64
std::void_t< T > n
auto const& fhicl::KeyMap::result ( ) const
inline

Definition at line 16 of file KeyMap.h.

17  {
18  return keys_;
19  };
std::vector< std::string > keys_
Definition: KeyMap.h:32

Member Data Documentation

std::vector<std::string> fhicl::KeyMap::keys_
private

Definition at line 32 of file KeyMap.h.


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