| # Gaudi Framework, version v23r0 |

Home |  | Generated: Mon Jan 30 2012

Namespaces | Defines | Typedefs | Functions

# Parsers.icpp File Reference

Helper inline functions for implementation of real parsing function from the namespace Gaudi::Parsers. More...

`#include <vector>`
`#include <map>`
`#include <string>`
`#include "boost/bind.hpp"`
`#include <boost/version.hpp>`
`#include <boost/spirit.hpp>`
`#include <boost/spirit/phoenix.hpp>`
`#include "GaudiKernel/Parsers.h"`
`#include "GaudiKernel/Grammars.h"`
Include dependency graph for Parsers.icpp:

Go to the source code of this file.

## Namespaces
namespace | Gaudi

| : AIDA interfaces visibility
namespace | Gaudi::Parsers
## Defines
#define | GAUDIKERNEL_PARSERS_ICPP 1
## Typedefs
typedef boost::spirit::position_iterator < string::const_iterator > | Gaudi::Parsers::IteratorT
| the actual type of position iterator
## Functions
IteratorT | Gaudi::Parsers::createIterator (const std::string &input)
| create the position iterator from the input
template<typename IntegerT >
StatusCode | Gaudi::Parsers::parse_integer (IntegerT &result, const string &input)
| helper function to "merge" the implementation of all parsers for integer-like quantities into one templated grammar
template<typename IntegerT >
StatusCode | Gaudi::Parsers::parse_integer_vector (std::vector< IntegerT > &result, const string &input)
| helper function to "merge" the implementation of all parsers for vector of integer-like quantities into the combination of templated grammars
template<typename CharT >
StatusCode | Gaudi::Parsers::parse_char (CharT &result, const string &input)
| helper function to "merge" the implementation of all parsers for "char-like" quantities into one templated grammar
template<typename CharT >
StatusCode | Gaudi::Parsers::parse_char_vector (std::vector< CharT > &result, const string &input)
| helper function to "merge" the implementation of all parsers for vector of 'char-like' quantities into the combination of templated grammars
template<typename RealT >
StatusCode | Gaudi::Parsers::parse_real (RealT &result, const string &input)
| helper function to "merge" the implementation of all parsers for "float-like" quantities into one templated grammar
template<typename RealT >
StatusCode | Gaudi::Parsers::parse_real_vector (std::vector< RealT > &result, const string &input)
| helper function to "merge" the implementation of all parsers for vector of 'char-like' quantities into the combination of templated grammars

## Detailed Description

Helper inline functions for implementation of real parsing function from the namespace Gaudi::Parsers.

For adding new type you should have only grammar class which recognize this type. Then by combining this grammar with such already implemented grammars like VectorGrammar, MapGrammar, PairGrammar you can very simply implement container types which will work with your type.

If you want your type can be handled in property file - see ValueGrammar in JobOptionsSvc which lays in GaudiCoreSvc.

Author:
  Alexander MAZUROV Alexander.Mazurov@gmail.com
  Vanya BELYAEV ibelyaev@physics.syr.edu

Date:
  2006-05-12

Definition in file Parsers.icpp.

## Define Documentation

#define GAUDIKERNEL_PARSERS_ICPP 1

Definition at line 4 of file Parsers.icpp.

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