| # Gaudi Framework, version v20r2
Generated: 18 Jul 2008

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

- Search for |

- File List
- File Members

# Parsers.icpp File Reference

## 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 GaudiSvc.

Author:
  Alexander MAZUROV Alexander.Mazurov@gmail.com

  Vanya BELYAEV ibelyaev@physics.syr.edu

Date:
  2006-05-12

Definition in file Parsers.icpp.

`#include <vector>`
`#include <map>`
`#include <string>`
`#include "boost/bind.hpp"`
`#include "boost/spirit.hpp"`
`#include "boost/spirit/phoenix.hpp"`
`#include "GaudiKernel/Parsers.h"`
`#include "GaudiKernel/Grammars.h"`

Include dependency graph for Parsers.icpp:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Namespaces
namespace | Gaudi
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 inptut
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 iteger-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

## Define Documentation

#define GAUDIKERNEL_PARSERS_ICPP 1

Definition at line 4 of file Parsers.icpp.