Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework  master (f31105fd)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Gaudi::Parsers::PairGrammar< Iterator, PairT, Skipper > Struct Template Reference

#include </builds/gaudi/Gaudi/GaudiKernel/include/Gaudi/Parsers/Grammars.h>

Inheritance diagram for Gaudi::Parsers::PairGrammar< Iterator, PairT, Skipper >:
Collaboration diagram for Gaudi::Parsers::PairGrammar< Iterator, PairT, Skipper >:

Classes

struct  first
 
struct  second
 

Public Types

typedef PairT ResultT
 
typedef PairT::first_type first_type
 
typedef PairT::second_type second_type
 

Public Member Functions

 PairGrammar ()
 
 PairGrammar (const std::string &delimeter)
 

Public Attributes

Grammar_< Iterator, typename PairT::first_type, Skipper >::Grammar key
 
Grammar_< Iterator, typename PairT::second_type, Skipper >::Grammar value
 
qi::rule< Iterator, char()> begin
 
qi::rule< Iterator, void(char)> end
 
qi::rule< Iterator, ResultT(), qi::locals< char >, Skipperpair
 
qi::rule< Iterator, ResultT(), Skipperpair_in
 

Detailed Description

template<typename Iterator, typename PairT, typename Skipper>
struct Gaudi::Parsers::PairGrammar< Iterator, PairT, Skipper >

Definition at line 331 of file Grammars.h.

Member Typedef Documentation

◆ first_type

template<typename Iterator , typename PairT , typename Skipper >
typedef PairT::first_type Gaudi::Parsers::PairGrammar< Iterator, PairT, Skipper >::first_type

Definition at line 334 of file Grammars.h.

◆ ResultT

template<typename Iterator , typename PairT , typename Skipper >
typedef PairT Gaudi::Parsers::PairGrammar< Iterator, PairT, Skipper >::ResultT

Definition at line 333 of file Grammars.h.

◆ second_type

template<typename Iterator , typename PairT , typename Skipper >
typedef PairT::second_type Gaudi::Parsers::PairGrammar< Iterator, PairT, Skipper >::second_type

Definition at line 335 of file Grammars.h.

Constructor & Destructor Documentation

◆ PairGrammar() [1/2]

template<typename Iterator , typename PairT , typename Skipper >
Gaudi::Parsers::PairGrammar< Iterator, PairT, Skipper >::PairGrammar ( )
inline

Definition at line 340 of file Grammars.h.

340 : PairGrammar( "," ) {}

◆ PairGrammar() [2/2]

template<typename Iterator , typename PairT , typename Skipper >
Gaudi::Parsers::PairGrammar< Iterator, PairT, Skipper >::PairGrammar ( const std::string delimeter)
inline

Definition at line 341 of file Grammars.h.

341  : PairGrammar::base_type( pair ) {
342  begin = enc::char_( '(' )[qi::_val = ')'] | enc::char_( '[' )[qi::_val = ']'];
343  end = qi::char_( qi::_r1 );
344  pair = begin[qi::_a = qi::_1] >> pair_in[qi::_val = qi::_1] >> end( qi::_a );
345  pair_in = key >> qi::lit( delimeter ) >> value;
346  }

Member Data Documentation

◆ begin

template<typename Iterator , typename PairT , typename Skipper >
qi::rule<Iterator, char()> Gaudi::Parsers::PairGrammar< Iterator, PairT, Skipper >::begin

Definition at line 350 of file Grammars.h.

◆ end

template<typename Iterator , typename PairT , typename Skipper >
qi::rule<Iterator, void( char )> Gaudi::Parsers::PairGrammar< Iterator, PairT, Skipper >::end

Definition at line 351 of file Grammars.h.

◆ key

template<typename Iterator , typename PairT , typename Skipper >
Grammar_<Iterator, typename PairT::first_type, Skipper>::Grammar Gaudi::Parsers::PairGrammar< Iterator, PairT, Skipper >::key

Definition at line 348 of file Grammars.h.

◆ pair

template<typename Iterator , typename PairT , typename Skipper >
qi::rule<Iterator, ResultT(), qi::locals<char>, Skipper> Gaudi::Parsers::PairGrammar< Iterator, PairT, Skipper >::pair

Definition at line 352 of file Grammars.h.

◆ pair_in

template<typename Iterator , typename PairT , typename Skipper >
qi::rule<Iterator, ResultT(), Skipper> Gaudi::Parsers::PairGrammar< Iterator, PairT, Skipper >::pair_in

Definition at line 353 of file Grammars.h.

◆ value

template<typename Iterator , typename PairT , typename Skipper >
Grammar_<Iterator, typename PairT::second_type, Skipper>::Grammar Gaudi::Parsers::PairGrammar< Iterator, PairT, Skipper >::value

Definition at line 349 of file Grammars.h.


The documentation for this struct was generated from the following file:
Gaudi::Parsers::PairGrammar::PairGrammar
PairGrammar()
Definition: Grammars.h:340
Gaudi::Parsers::PairGrammar::pair_in
qi::rule< Iterator, ResultT(), Skipper > pair_in
Definition: Grammars.h:353
Gaudi::Parsers::PairGrammar::value
Grammar_< Iterator, typename PairT::second_type, Skipper >::Grammar value
Definition: Grammars.h:349
Gaudi::Parsers::PairGrammar::key
Grammar_< Iterator, typename PairT::first_type, Skipper >::Grammar key
Definition: Grammars.h:348
Gaudi::Parsers::PairGrammar::pair
qi::rule< Iterator, ResultT(), qi::locals< char >, Skipper > pair
Definition: Grammars.h:352
Gaudi::Parsers::PairGrammar::end
qi::rule< Iterator, void(char)> end
Definition: Grammars.h:351
Gaudi::Parsers::PairGrammar::begin
qi::rule< Iterator, char()> begin
Definition: Grammars.h:350