Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext

Struct template opt_parser

boost::parser::opt_parser

Synopsis

// In header: <boost/parser/parser.hpp>

template<typename Parser> 
struct opt_parser {

  // public member functions
  template<typename Iter, typename Sentinel, typename Context, 
           typename SkipParser> 
    auto (Iter &, Sentinel, Context  const &, SkipParser  const &, 
              , bool &) ;
  template<typename Iter, typename Sentinel, typename Context, 
           typename SkipParser, typename Attribute> 
    void (Iter &, Sentinel, Context  const &, SkipParser  const &, 
              , bool &, Attribute &) ;

  // public data members
  Parser parser_;
};

Description

Repeats the application of another parser of type Parser, [0, 1] times. The parse always succeeds. The attribute produced is a std::optional<T>, where T is the type of attribute produced by Parser.

opt_parser public member functions

  1. template<typename Iter, typename Sentinel, typename Context, 
             typename SkipParser> 
      auto (Iter & first, Sentinel last, Context  const & context, 
                SkipParser  const & skip,  flags, bool & success) ;
  2. template<typename Iter, typename Sentinel, typename Context, 
             typename SkipParser, typename Attribute> 
      void (Iter & first, Sentinel last, Context  const & context, 
                SkipParser  const & skip,  flags, bool & success, 
                Attribute & retval) ;

PrevUpHomeNext