while_p_as_parser_tests.cpp

来自「Boost provides free peer-reviewed portab」· C++ 代码 · 共 43 行

CPP
43
字号
/*=============================================================================    Copyright (c) 2003 Martin Wille    http://spirit.sourceforge.net/    Use, modification and distribution is subject to the Boost Software    License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at    http://www.boost.org/LICENSE_1_0.txt)=============================================================================*/#include <boost/spirit/include/classic_core.hpp>#include <boost/spirit/include/classic_while.hpp>extern bool fun();struct ftor{    bool operator()() const;};intmain(){    //////////////////////////////////    // compile time check wether as_parser<> works for while_p    ::BOOST_SPIRIT_CLASSIC_NS::rule<> r;    r = ::BOOST_SPIRIT_CLASSIC_NS::while_p('-')['-'];    r = ::BOOST_SPIRIT_CLASSIC_NS::while_p("-")["-"];    r = ::BOOST_SPIRIT_CLASSIC_NS::while_p(&fun)["foo"];    r = ::BOOST_SPIRIT_CLASSIC_NS::while_p(ftor())["foo"];    r = ::BOOST_SPIRIT_CLASSIC_NS::while_p(r)[r];    r = ::BOOST_SPIRIT_CLASSIC_NS::do_p['-'].while_p('-');    r = ::BOOST_SPIRIT_CLASSIC_NS::do_p["-"].while_p("-");    r = ::BOOST_SPIRIT_CLASSIC_NS::do_p["foo"].while_p(&fun);    r = ::BOOST_SPIRIT_CLASSIC_NS::do_p["foo"].while_p(ftor());    r = ::BOOST_SPIRIT_CLASSIC_NS::do_p[r].while_p(r);}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?