![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /usr/include/boost/spirit/home/classic/core/impl/ |
Upload File : |
/*============================================================================= Copyright (c) 1998-2003 Joel de Guzman 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) =============================================================================*/ #if !defined(BOOST_SPIRIT_PARSER_IPP) #define BOOST_SPIRIT_PARSER_IPP namespace boost { namespace spirit { BOOST_SPIRIT_CLASSIC_NAMESPACE_BEGIN /////////////////////////////////////////////////////////////////////////// // // Generic parse function implementation // /////////////////////////////////////////////////////////////////////////// template <typename IteratorT, typename DerivedT> inline parse_info<IteratorT> parse( IteratorT const& first_ , IteratorT const& last , parser<DerivedT> const& p) { IteratorT first = first_; scanner<IteratorT, scanner_policies<> > scan(first, last); match<nil_t> hit = p.derived().parse(scan); return parse_info<IteratorT>( first, hit, hit && (first == last), hit.length()); } /////////////////////////////////////////////////////////////////////////// // // Parse function for null terminated strings implementation // /////////////////////////////////////////////////////////////////////////// template <typename CharT, typename DerivedT> inline parse_info<CharT const*> parse(CharT const* str, parser<DerivedT> const& p) { CharT const* last = str; while (*last) last++; return parse(str, last, p); } BOOST_SPIRIT_CLASSIC_NAMESPACE_END }} // namespace boost::spirit #endif