| # Gaudi Framework, version v25r0 |

Home |  | Generated: Mon Feb 17 2014

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
Gaudi::Parsers::VectorGrammar< GrammarT > Class Template Reference

The valid represenation of vector are: More...

`#include <Grammars.h>`

Inheritance diagram for Gaudi::Parsers::VectorGrammar< GrammarT >:
[legend]
Collaboration diagram for Gaudi::Parsers::VectorGrammar< GrammarT >:
[legend]

## Classes
struct | definition

## Public Types
typedef GrammarT::ResultT | ValueT
typedef std::vector< ValueT > | ResultT
typedef VectorGrammar< GrammarT > | SelfT
typedef VectorT | ResultT

## Public Member Functions
void | matchItem (const ValueT &value) const
| callback. Action when we match inner value
| VectorGrammar ()

## Public Attributes
Grammar_< Iterator, typename VectorT::value_type, Skipper > ::Grammar | elementGrammar
qi::rule< Iterator, char()> | begin
qi::rule< Iterator, void(char)> | end
qi::rule< Iterator, ResultT(), qi::locals< char >, Skipper > | vec
qi::rule< Iterator, ResultT(), Skipper > | list

## Detailed Description

### template<typename GrammarT>
class Gaudi::Parsers::VectorGrammar< GrammarT >

The valid represenation of vector are:

- {"abc","defj","i"} or {1,2,3,4,5}
- ["abc","defj","i"] or [1,2,3,4,5] Inner type depends on GrammarT grammar

Author
  Alexander MAZUROV Alexa.nosp@m.nder.nosp@m..Mazu.nosp@m.rov@.nosp@m.gmail.nosp@m..com
  Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u

Date
  2006-05-14

Definition at line 424 of file Grammars.h.

## Member Typedef Documentation

template<typename GrammarT>

typedef VectorT Gaudi::Parsers::VectorGrammar< GrammarT >::ResultT

Definition at line 183 of file GrammarsV2.h.

template<typename GrammarT>

typedef std::vector<ValueT> Gaudi::Parsers::VectorGrammar< GrammarT >::ResultT

Definition at line 432 of file Grammars.h.

template<typename GrammarT>

typedef VectorGrammar<GrammarT> Gaudi::Parsers::VectorGrammar< GrammarT >::SelfT

Definition at line 433 of file Grammars.h.

template<typename GrammarT>

typedef GrammarT::ResultT Gaudi::Parsers::VectorGrammar< GrammarT >::ValueT

Definition at line 431 of file Grammars.h.

## Constructor & Destructor Documentation

template<typename GrammarT>

Gaudi::Parsers::VectorGrammar< GrammarT >::VectorGrammar | ( |  | ) |
| inline

Definition at line 185 of file GrammarsV2.h.

: VectorGrammar::base_type(vec) {
begin = enc::char_('[')[qi::_val=']'] | enc::char_('{')[qi::_val='}']
| enc::char_('(')[qi::_val=')'];
end = enc::char_(qi::_r1);
list = elementGrammar % ',';
vec = begin[qi::_a = qi::_1] >> -list[qi::_val=qi::_1] >> end(qi::_a);
}

## Member Function Documentation

template<typename GrammarT>

void Gaudi::Parsers::VectorGrammar< GrammarT >::matchItem | ( | const ValueT & | value | ) | const
| inline

callback. Action when we match inner value

Definition at line 436 of file Grammars.h.

{ this->val().push_back(value); }

## Member Data Documentation

template<typename GrammarT>

qi::rule<Iterator, char()> Gaudi::Parsers::VectorGrammar< GrammarT >::begin

Definition at line 196 of file GrammarsV2.h.

template<typename GrammarT>

Grammar_<Iterator, typename VectorT::value_type, Skipper>::Grammar Gaudi::Parsers::VectorGrammar< GrammarT >::elementGrammar

Definition at line 195 of file GrammarsV2.h.

template<typename GrammarT>

qi::rule<Iterator, void(char)> Gaudi::Parsers::VectorGrammar< GrammarT >::end

Definition at line 197 of file GrammarsV2.h.

template<typename GrammarT>

qi::rule<Iterator, ResultT(), Skipper> Gaudi::Parsers::VectorGrammar< GrammarT >::list

Definition at line 200 of file GrammarsV2.h.

template<typename GrammarT>

qi::rule<Iterator, ResultT(), qi::locals<char>,Skipper> Gaudi::Parsers::VectorGrammar< GrammarT >::vec

Definition at line 199 of file GrammarsV2.h.

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

- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v25r0/GaudiKernel/GaudiKernel/Grammars.h
- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v25r0/GaudiKernel/GaudiKernel/GrammarsV2.h