]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/libs/spirit/include/boost/spirit/home/classic/core/composite/list.hpp
bump version to 12.2.2-pve1
[ceph.git] / ceph / src / boost / libs / spirit / include / boost / spirit / home / classic / core / composite / list.hpp
CommitLineData
7c673cae
FG
1/*=============================================================================
2 Copyright (c) 1998-2003 Joel de Guzman
3 Copyright (c) 2001 Daniel Nuffer
4 Copyright (c) 2002 Hartmut Kaiser
5 http://spirit.sourceforge.net/
6
7 Distributed under the Boost Software License, Version 1.0. (See accompanying
8 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
9=============================================================================*/
10#if !defined(BOOST_SPIRIT_LIST_HPP)
11#define BOOST_SPIRIT_LIST_HPP
12
13#include <boost/spirit/home/classic/namespace.hpp>
14#include <boost/spirit/home/classic/core/parser.hpp>
15#include <boost/spirit/home/classic/core/primitives/primitives.hpp>
16#include <boost/spirit/home/classic/core/composite/composite.hpp>
17#include <boost/spirit/home/classic/meta/as_parser.hpp>
18
19namespace boost { namespace spirit {
20
21BOOST_SPIRIT_CLASSIC_NAMESPACE_BEGIN
22
23 ///////////////////////////////////////////////////////////////////////////
24 //
25 // operator% is defined as:
26 // a % b ---> a >> *(b >> a)
27 //
28 ///////////////////////////////////////////////////////////////////////////
29 template <typename A, typename B>
30 sequence<A, kleene_star<sequence<B, A> > >
31 operator%(parser<A> const& a, parser<B> const& b);
32
33 template <typename A>
34 sequence<A, kleene_star<sequence<chlit<char>, A> > >
35 operator%(parser<A> const& a, char b);
36
37 template <typename B>
38 sequence<chlit<char>, kleene_star<sequence<B, chlit<char> > > >
39 operator%(char a, parser<B> const& b);
40
41 template <typename A>
42 sequence<A, kleene_star<sequence<strlit<char const*>, A> > >
43 operator%(parser<A> const& a, char const* b);
44
45 template <typename B>
46 sequence<strlit<char const*>,
47 kleene_star<sequence<B, strlit<char const*> > > >
48 operator%(char const* a, parser<B> const& b);
49
50 template <typename A>
51 sequence<A, kleene_star<sequence<chlit<wchar_t>, A> > >
52 operator%(parser<A> const& a, wchar_t b);
53
54 template <typename B>
55 sequence<chlit<wchar_t>, kleene_star<sequence<B, chlit<wchar_t> > > >
56 operator%(wchar_t a, parser<B> const& b);
57
58 template <typename A>
59 sequence<A, kleene_star<sequence<strlit<wchar_t const*>, A> > >
60 operator%(parser<A> const& a, wchar_t const* b);
61
62 template <typename B>
63 sequence<strlit<wchar_t const*>,
64 kleene_star<sequence<B, strlit<wchar_t const*> > > >
65 operator%(wchar_t const* a, parser<B> const& b);
66
67BOOST_SPIRIT_CLASSIC_NAMESPACE_END
68
69}} // namespace BOOST_SPIRIT_CLASSIC_NS
70
71#endif
72
73#include <boost/spirit/home/classic/core/composite/impl/list.ipp>