| # Gaudi Framework, version v23r0 |

Home |  | Generated: Mon Jan 30 2012

Classes | Public Types | Public Member Functions | Public Attributes

# Gaudi::Parsers::VectorGrammar< GrammarT > Class Template Reference

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.

More...

`#include <Grammars.h>`

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

List of all members.

## 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 Alexander.Mazurov@gmail.com
  Vanya BELYAEV ibelyaev@physics.syr.edu

Date:
  2006-05-14

Definition at line 424 of file Grammars.h.

## Member Typedef Documentation

template<typename GrammarT>

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

Definition at line 432 of file Grammars.h.

template<typename GrammarT>

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

Definition at line 182 of file GrammarsV2.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 184 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 195 of file GrammarsV2.h.

template<typename GrammarT>

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

Definition at line 194 of file GrammarsV2.h.

template<typename GrammarT>

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

Definition at line 196 of file GrammarsV2.h.

template<typename GrammarT>

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

Definition at line 199 of file GrammarsV2.h.

template<typename GrammarT>

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

Definition at line 198 of file GrammarsV2.h.

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

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

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines