4.6.0
Freundlich's C++ toolkit
Loading...
Searching...
No Matches
fcppt::parse::exclude< Parser, Exclude > Class Template Reference

Detailed Description

template<typename Parser, typename Exclude>
class fcppt::parse::exclude< Parser, Exclude >

Matches only if another parser does not match.

exclude{p1,p2} is equivalent to !p2 >> p1.

Inheritance diagram for fcppt::parse::exclude< Parser, Exclude >:
fcppt::parse::tag

Public Types

using result_type = fcppt::parse::result_of<Parser>
 

Public Member Functions

 exclude (Parser &&, Exclude &&)
 
template<typename Ch , typename Skipper >
fcppt::parse::result< Ch, result_typeparse (fcppt::reference< fcppt::parse::basic_stream< Ch > >, Skipper const &) const
 

Member Typedef Documentation

◆ result_type

template<typename Parser , typename Exclude >
using fcppt::parse::exclude< Parser, Exclude >::result_type = fcppt::parse::result_of<Parser>

Constructor & Destructor Documentation

◆ exclude()

template<typename Parser , typename Exclude >
fcppt::parse::exclude< Parser, Exclude >::exclude ( Parser && ,
Exclude &&  )
explicit

Member Function Documentation

◆ parse()

template<typename Parser , typename Exclude >
template<typename Ch , typename Skipper >
fcppt::parse::result< Ch, result_type > fcppt::parse::exclude< Parser, Exclude >::parse ( fcppt::reference< fcppt::parse::basic_stream< Ch > > ,
Skipper const &  ) const
nodiscard