LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
#include "intermediate_table.h"
Public Types | |
using | atom_t = extended_value::atom_t |
using | complex_t = extended_value::complex_t |
using | sequence_t = extended_value::sequence_t |
using | table_t = extended_value::table_t |
using | iterator = table_t::iterator |
using | const_iterator = table_t::const_iterator |
Public Member Functions | |
bool | empty () const |
bool | exists (std::string const &key) const |
void | erase (std::string const &key, bool in_prolog=false) |
template<typename T > | |
T | get (std::string const &name) |
bool | put (std::string const &name, std::string const &value, bool in_prolog=false) |
bool | put (std::string const &name, char const *value, bool in_prolog=false) |
bool | put (std::string const &name, bool value, bool in_prolog=false) |
template<typename T > | |
bool | put (std::string const &name, std::complex< T > const &value, bool in_prolog=false) |
template<typename T > | |
bool | put (std::string const &name, std::vector< T > const &value, bool in_prolog=false) |
template<typename T > | |
std::enable_if_t< tt::is_numeric< T >::value, bool > | put (std::string const &name, T value, bool in_prolog=false) |
bool | putEmptySequence (std::string const &name, bool in_prolog=false) |
bool | putEmptyTable (std::string const &name, bool in_prolog=false) |
bool | putNil (std::string const &name, bool in_prolog=false) |
const_iterator | begin () const |
const_iterator | end () const |
bool | insert (std::string const &key, bool in_prolog, value_tag tag, std::any const &value) |
bool | insert (std::string const &key, extended_value const &value) |
bool | insert (std::string const &key, extended_value &&value) |
extended_value const & | find (std::string const &key) const |
extended_value * | locate (std::string const &key) |
extended_value & | update (std::string const &key) |
template<typename T > | |
std::enable_if< tt::is_numeric< T >::value, bool >::type | put (std::string const &key, T const value, bool const in_prolog) |
Private Member Functions | |
extended_value * | pre_insert_ (std::string const &key, extended_value const &value) |
std::pair< extended_value *, bool > | locate_ (std::string const &key, bool in_prolog=false) |
Static Private Member Functions | |
static std::vector< std::string > | split (std::string const &key) |
Private Attributes | |
extended_value | ex_val {false, TABLE, table_t{}} |
Definition at line 65 of file intermediate_table.h.
Definition at line 110 of file intermediate_table.h.
Definition at line 111 of file intermediate_table.h.
Definition at line 115 of file intermediate_table.h.
Definition at line 114 of file intermediate_table.h.
Definition at line 112 of file intermediate_table.h.
Definition at line 113 of file intermediate_table.h.
const_iterator intermediate_table::begin | ( | ) | const |
Definition at line 57 of file intermediate_table.cc.
References util::begin().
bool intermediate_table::empty | ( | ) | const |
Definition at line 71 of file intermediate_table.cc.
References util::empty().
Referenced by art::BasicOptionsHandler::doProcessOptions().
const_iterator intermediate_table::end | ( | void | ) | const |
Definition at line 63 of file intermediate_table.cc.
References util::end().
void intermediate_table::erase | ( | std::string const & | key, |
bool | in_prolog = false |
||
) |
Definition at line 174 of file intermediate_table.cc.
References fhicl::cant_find, shims::map< Key, T, Compare, Allocator >::find(), fhicl::protection_violation, fhicl::SEQUENCE, fhicl::TABLE, and fhicl::unimplemented.
Referenced by art::BasicOutputOptionsHandler::doCheckOptions(), art::DebugOptionsHandler::doProcessOptions(), art::FileCatalogOptionsHandler::doProcessOptions(), and art::detail::prune_config_if_enabled().
bool intermediate_table::exists | ( | std::string const & | key | ) | const |
Definition at line 143 of file intermediate_table.cc.
References shims::map< Key, T, Compare, Allocator >::find(), fhicl::extended_value::is_a(), fhicl::SEQUENCE, fhicl::TABLE, and fhicl::extended_value::value.
Referenced by art::ensureTable(), and art::detail::exists_outside_prolog().
extended_value const & intermediate_table::find | ( | std::string const & | key | ) | const |
if | item does not exist. |
Definition at line 112 of file intermediate_table.cc.
References fhicl::cant_find, shims::map< Key, T, Compare, Allocator >::find(), fhicl::extended_value::is_a(), fhicl::SEQUENCE, fhicl::TABLE, and fhicl::extended_value::value.
Referenced by art::detail::exists_outside_prolog(), fhicl::detail::it_value_get< T, typename tt::disable_if< std::is_reference_v< T >|| std::is_pointer_v< T > >::type >::operator()(), fhicl::detail::it_value_get< std::complex< U >, typename tt::disable_if< std::is_reference_v< std::complex< U > >|| std::is_pointer_v< std::complex< U > > >::type >::operator()(), fhicl::detail::it_value_get< intermediate_table::sequence_t >::operator()(), fhicl::detail::it_value_get< intermediate_table::sequence_t const & >::operator()(), fhicl::detail::it_value_get< intermediate_table::table_t >::operator()(), fhicl::detail::it_value_get< intermediate_table::table_t const & >::operator()(), art::detail::path_specs(), and art::detail::prune_config_if_enabled().
|
inline |
Definition at line 274 of file intermediate_table.h.
Referenced by art::BasicOutputOptionsHandler::doCheckOptions(), art::BasicOutputOptionsHandler::doProcessOptions(), art::DebugOptionsHandler::doProcessOptions(), art::FileCatalogOptionsHandler::doProcessOptions(), art::detail::path_specs(), and art::run_art().
bool intermediate_table::insert | ( | std::string const & | key, |
bool | in_prolog, | ||
value_tag | tag, | ||
std::any const & | value | ||
) |
Definition at line 79 of file intermediate_table.cc.
Referenced by put(), putEmptySequence(), putEmptyTable(), and putNil().
bool intermediate_table::insert | ( | std::string const & | key, |
extended_value const & | value | ||
) |
Definition at line 88 of file intermediate_table.cc.
References value.
bool intermediate_table::insert | ( | std::string const & | key, |
extended_value && | value | ||
) |
Definition at line 99 of file intermediate_table.cc.
References value.
|
inline |
Definition at line 366 of file intermediate_table.h.
References locate_().
Referenced by fhicl::detail::it_value_get< intermediate_table::sequence_t & >::operator()(), and fhicl::detail::it_value_get< intermediate_table::table_t & >::operator()().
|
private |
Definition at line 257 of file intermediate_table.cc.
References fhicl::cant_find, fhicl::extended_value::is_a(), fhicl::NIL, fhicl::extended_value::pretty_src_info(), fhicl::extended_value::protection, fhicl::protection_violation, fhicl::SEQUENCE, fhicl::extended_value::set_prolog(), fhicl::TABLE, and fhicl::extended_value::value.
Referenced by locate(), and update().
|
private |
Definition at line 234 of file intermediate_table.cc.
References fhicl::extended_value::in_prolog, fhicl::NIL, fhicl::extended_value::protection, and fhicl::protection_violation.
|
inline |
Definition at line 281 of file intermediate_table.h.
References fhicl::detail::encode(), insert(), and fhicl::STRING.
Referenced by art::BasicOutputOptionsHandler::doCheckOptions(), art::ProcessingOptionsHandler::doProcessOptions(), art::DebugOptionsHandler::doProcessOptions(), art::BasicOutputOptionsHandler::doProcessOptions(), art::BasicSourceOptionsHandler::doProcessOptions(), art::FileCatalogOptionsHandler::doProcessOptions(), art::BasicOptionsHandler::doProcessOptions(), art::detail::prune_config_if_enabled(), and put().
|
inline |
Definition at line 289 of file intermediate_table.h.
References fhicl::detail::encode(), insert(), and fhicl::STRING.
|
inline |
Definition at line 297 of file intermediate_table.h.
References fhicl::BOOL, fhicl::detail::encode(), and insert().
bool fhicl::intermediate_table::put | ( | std::string const & | name, |
std::complex< T > const & | value, | ||
bool | in_prolog = false |
||
) |
Definition at line 306 of file intermediate_table.h.
References fhicl::COMPLEX, fhicl::detail::encode(), and insert().
|
inline |
Definition at line 319 of file intermediate_table.h.
References put(), putEmptySequence(), util::to_string(), and value.
std::enable_if_t<tt::is_numeric<T>::value, bool> fhicl::intermediate_table::put | ( | std::string const & | name, |
T | value, | ||
bool | in_prolog = false |
||
) |
|
inline |
Definition at line 337 of file intermediate_table.h.
References fhicl::detail::encode(), insert(), and fhicl::NUMBER.
|
inline |
Definition at line 345 of file intermediate_table.h.
References insert(), and fhicl::SEQUENCE.
Referenced by art::ProcessingOptionsHandler::doProcessOptions(), and put().
|
inline |
Definition at line 352 of file intermediate_table.h.
References insert(), and fhicl::TABLE.
Referenced by art::DebugOptionsHandler::doProcessOptions(), and art::ensureTable().
|
inline |
Definition at line 359 of file intermediate_table.h.
References fhicl::detail::encode(), insert(), and fhicl::NIL.
|
staticprivate |
|
inline |
if | not able to be updated. |
Definition at line 377 of file intermediate_table.h.
References locate_(), and fhicl::protection_violation.
|
private |
Definition at line 149 of file intermediate_table.h.