20#include <unordered_set>
23#define PARSERS_DECL_FOR_SINGLE( Type ) GAUDI_API StatusCode parse( Type& result, std::string_view input );
25#define PARSERS_DECL_FOR_PAIR( FirstType, SecondType ) \
26 GAUDI_API StatusCode parse( std::pair<FirstType, SecondType>& result, std::string_view input );
28#define PARSERS_DECL_FOR_LIST( InnerType ) \
29 GAUDI_API StatusCode parse( std::vector<InnerType>& result, std::string_view input );
31#define PARSERS_DECL_FOR_SET( InnerType ) \
32 GAUDI_API StatusCode parse( std::set<InnerType>& result, std::string_view input ); \
33 GAUDI_API StatusCode parse( std::unordered_set<InnerType>& result, std::string_view input );
35#define PARSERS_DECL_FOR_STRMAP( ValueType ) \
36 GAUDI_API StatusCode parse( std::map<std::string, ValueType>& result, std::string_view input ); \
37 GAUDI_API StatusCode parse( std::map<std::string, ValueType, std::less<>>& result, std::string_view input );
346 template <typename K, typename V, typename M>
348 return parse(
static_cast<M&
>( result ), input );
393 template <
class T,
unsigned int N>
395 typedef std::vector<T> _Vct;
402 std::copy( tmp.begin(), tmp.end(), result );
413 template <
unsigned int N>
416 std::fill_n( result, N,
' ' );
421 if ( N == tmp.size() ) {
422 std::copy( tmp.begin(), tmp.end(), result );
423 }
else if ( N + 2 == tmp.size() && (
'\'' == tmp[0] ||
'\"' == tmp[0] ) && ( tmp[0] == tmp[tmp.size() - 1] ) ) {
424 std::copy( tmp.begin() + 1, tmp.end() - 1, result );
#define PARSERS_DECL_FOR_SET(InnerType)
#define PARSERS_DECL_FOR_SINGLE(Type)
#define PARSERS_DECL_FOR_PAIR(FirstType, SecondType)
#define PARSERS_DECL_FOR_LIST(InnerType)
#define PARSERS_DECL_FOR_STRMAP(ValueType)
Simple helper class for description of 1D-histogram The class is targeted to act as the primary "hist...
This class is used for returning status codes from appropriate routines.
constexpr static const auto SUCCESS
constexpr static const auto FAILURE
std::pair< int, int > IntPair
parse the bool value
StatusCode parse(GaudiUtils::HashMap< K, V > &result, std::string_view input)
Basic parser for the types of HashMap used in DODBasicMapper.
std::pair< double, double > DoublePair
This file provides a Grammar for the type Gaudi::Accumulators::Axis It allows to use that type from p...