LArSoft
v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
|
#include "intermediate_table.h"
Public Types | |
typedef extended_value::atom_t | atom_t |
typedef extended_value::complex_t | complex_t |
typedef extended_value::sequence_t | sequence_t |
typedef extended_value::table_t | table_t |
typedef table_t::iterator | iterator |
typedef table_t::const_iterator | const_iterator |
Public Member Functions | |
intermediate_table () | |
bool | empty () const |
bool | exists (std::string const &name) const |
void | erase (std::string const &name, 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< tt::is_numeric< T >::value, bool >::type | 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 &name, bool in_prolog, value_tag tag, boost::any const &value) |
bool | insert (std::string const &name, extended_value const &value) |
bool | insert (std::string const &name, extended_value &&value) |
extended_value const & | find (std::string const &name) const |
extended_value * | locate (std::string const &name) |
extended_value & | update (std::string const &name) |
Private Member Functions | |
extended_value * | pre_insert_ (std::string const &name, extended_value const &value) |
std::pair< extended_value *, bool > | locate_ (std::string const &name, bool in_prolog=false) |
std::vector< std::string > | split (std::string const &name) const |
Private Attributes | |
extended_value | ex_val |
Definition at line 64 of file intermediate_table.h.
Definition at line 113 of file intermediate_table.h.
Definition at line 114 of file intermediate_table.h.
Definition at line 118 of file intermediate_table.h.
Definition at line 117 of file intermediate_table.h.
Definition at line 115 of file intermediate_table.h.
Definition at line 116 of file intermediate_table.h.
intermediate_table::intermediate_table | ( | ) |
Definition at line 53 of file intermediate_table.cc.
const_iterator intermediate_table::begin | ( | ) | const |
Definition at line 58 of file intermediate_table.cc.
References ex_val, and fhicl::extended_value::value.
bool intermediate_table::empty | ( | void | ) | const |
Definition at line 72 of file intermediate_table.cc.
References ex_val, and fhicl::extended_value::value.
Referenced by art::BasicOptionsHandler::doProcessOptions().
const_iterator intermediate_table::end | ( | void | ) | const |
Definition at line 64 of file intermediate_table.cc.
References ex_val, and fhicl::extended_value::value.
void intermediate_table::erase | ( | std::string const & | name, |
bool | in_prolog = false |
||
) |
Definition at line 183 of file intermediate_table.cc.
References fhicl::cant_find, ex_val, shims::map< Key, T, Compare, Allocator >::find(), fhicl::PROTECT_ERROR, fhicl::PROTECT_IGNORE, fhicl::protection_violation, s, fhicl::SEQUENCE, split(), fhicl::TABLE, and fhicl::unimplemented.
Referenced by art::BasicOutputOptionsHandler::doCheckOptions(), art::DebugOptionsHandler::doProcessOptions(), and art::FileCatalogOptionsHandler::doProcessOptions().
bool intermediate_table::exists | ( | std::string const & | name | ) | const |
Definition at line 149 of file intermediate_table.cc.
References shims::map< Key, T, Compare, Allocator >::end(), ex_val, shims::map< Key, T, Compare, Allocator >::find(), fhicl::extended_value::is_a(), s, fhicl::SEQUENCE, split(), 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 & | name | ) | const |
if | item does not exist. |
Definition at line 115 of file intermediate_table.cc.
References fhicl::cant_find, shims::map< Key, T, Compare, Allocator >::end(), ex_val, shims::map< Key, T, Compare, Allocator >::find(), fhicl::extended_value::is_a(), s, fhicl::SEQUENCE, split(), fhicl::TABLE, and fhicl::extended_value::value.
Referenced by art::BasicPostProcessor::doProcessOptions(), art::detail::exists_outside_prolog(), fhicl::detail::it_value_get< T, typename tt::disable_if< std::is_reference< T >::value|| std::is_pointer< T >::value >::type >::operator()(), fhicl::detail::it_value_get< std::complex< U >, typename tt::disable_if< std::is_reference< std::complex< U > >::value|| std::is_pointer< std::complex< U > >::value >::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()(), and fhicl::detail::it_value_get< intermediate_table::table_t const & >::operator()().
|
inline |
Definition at line 283 of file intermediate_table.h.
Referenced by art::BasicOutputOptionsHandler::doCheckOptions(), art::BasicOutputOptionsHandler::doProcessOptions(), art::DebugOptionsHandler::doProcessOptions(), and art::FileCatalogOptionsHandler::doProcessOptions().
bool intermediate_table::insert | ( | std::string const & | name, |
bool | in_prolog, | ||
value_tag | tag, | ||
boost::any const & | value | ||
) |
Definition at line 80 of file intermediate_table.cc.
Referenced by put(), putEmptySequence(), putEmptyTable(), and putNil().
bool intermediate_table::insert | ( | std::string const & | name, |
extended_value const & | value | ||
) |
Definition at line 89 of file intermediate_table.cc.
References pre_insert_(), and fhicl::detail::atom::value().
bool intermediate_table::insert | ( | std::string const & | name, |
extended_value && | value | ||
) |
Definition at line 100 of file intermediate_table.cc.
References pre_insert_(), and fhicl::detail::atom::value().
|
inline |
Definition at line 373 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 267 of file intermediate_table.cc.
References fhicl::cant_find, ex_val, fhicl::extended_value::is_a(), fhicl::NIL, fhicl::extended_value::pretty_src_info(), fhicl::PROTECT_ERROR, fhicl::PROTECT_IGNORE, fhicl::extended_value::protection, fhicl::protection_violation, s, fhicl::SEQUENCE, fhicl::extended_value::set_prolog(), split(), fhicl::TABLE, and fhicl::extended_value::value.
Referenced by locate(), pre_insert_(), and update().
|
private |
Definition at line 244 of file intermediate_table.cc.
References shims::map< Key, T, Compare, Allocator >::end(), shims::map< Key, T, Compare, Allocator >::erase(), ex_val, shims::map< Key, T, Compare, Allocator >::find(), fhicl::extended_value::in_prolog, locate_(), fhicl::NIL, fhicl::extended_value::protection, fhicl::protection_violation, split(), and fhicl::extended_value::value.
Referenced by insert().
|
inline |
Definition at line 290 of file intermediate_table.h.
References fhicl::detail::encode(), insert(), and fhicl::STRING.
Referenced by art::BasicOutputOptionsHandler::doCheckOptions(), art::ProcessingOptionsHandler::doProcessOptions(), art::BasicOutputOptionsHandler::doProcessOptions(), art::DebugOptionsHandler::doProcessOptions(), art::BasicSourceOptionsHandler::doProcessOptions(), art::FileCatalogOptionsHandler::doProcessOptions(), art::BasicOptionsHandler::doProcessOptions(), and put().
|
inline |
Definition at line 298 of file intermediate_table.h.
References fhicl::detail::encode(), insert(), and fhicl::STRING.
|
inline |
Definition at line 306 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 315 of file intermediate_table.h.
References fhicl::COMPLEX, fhicl::detail::encode(), and insert().
|
inline |
Definition at line 328 of file intermediate_table.h.
References put(), putEmptySequence(), util::flags::to_string(), and fhicl::detail::atom::value().
|
inline |
Definition at line 346 of file intermediate_table.h.
References fhicl::detail::encode(), insert(), and fhicl::NUMBER.
|
inline |
Definition at line 353 of file intermediate_table.h.
References insert(), and fhicl::SEQUENCE.
Referenced by art::ProcessingOptionsHandler::doProcessOptions(), and put().
|
inline |
Definition at line 360 of file intermediate_table.h.
References insert(), and fhicl::TABLE.
Referenced by art::DebugOptionsHandler::doProcessOptions(), and art::ensureTable().
|
inline |
Definition at line 366 of file intermediate_table.h.
References fhicl::detail::encode(), insert(), and fhicl::NIL.
|
private |
Definition at line 322 of file intermediate_table.cc.
References shims::isSnippetMode().
Referenced by erase(), exists(), find(), locate_(), and pre_insert_().
|
inline |
if | not able to be updated. |
Definition at line 384 of file intermediate_table.h.
References locate_(), and fhicl::protection_violation.
Referenced by art::BasicPostProcessor::doProcessOptions().
|
private |
Definition at line 151 of file intermediate_table.h.
Referenced by begin(), empty(), end(), erase(), exists(), find(), locate_(), and pre_insert_().