|
5.0.0
Freundlich's C++ toolkit
|
Classes | |
| class | alternative |
| Tries the left skipper, and if that fails also the right skipper. More... | |
| class | any |
| Skips a single character. More... | |
| class | basic_char_set |
| Skips all characters from a set. More... | |
| class | basic_literal |
| Skips a specific character. More... | |
| class | basic_string |
| class | comment |
| class | epsilon |
| Skips nothing. More... | |
| class | not_ |
| Negates the result of a skipper. More... | |
| class | repetition |
| Skips characters repeatedly. More... | |
| class | sequence |
| Tries two skippers in succession. More... | |
| struct | tag |
| The tag skippers derive from. More... | |
Typedefs | |
| using | char_set = fcppt::parse::skipper::basic_char_set<char> |
| template<typename Type> | |
| using | is_skipper = std::is_base_of<fcppt::parse::skipper::tag, Type> |
| Checks if a type is a skipper.A type is a skipper if and only if it derives from fcppt::parse::skipper::tag. | |
| template<typename Type> | |
| using | is_valid_argument |
| Checks if a parameter is a valid skipper type. | |
| using | literal = fcppt::parse::skipper::basic_literal<char> |
| template<typename Ch> | |
| using | result = fcppt::either::error<fcppt::parse::error<Ch>> |
The result type when skipping streams of Ch.The result is an fcppt::either::error of fcppt::parse::error<Ch>. | |
| using | string = fcppt::parse::skipper::basic_string<char> |
Functions | |
| template<typename Ch> | |
| auto | basic_space () |
| Skips all characters from fcppt::parse::space_set. | |
| template<typename Open, typename Close> | |
| comment (Open &&, Close &&) -> comment< std::remove_cvref_t< Open >, std::remove_cvref_t< Close > > | |
| template<typename Ch> | |
| fcppt::parse::skipper::result< Ch > | make_failure (fcppt::parse::error< Ch > &&_error) |
| Creates a skipper result from an fcppt::parse::error. | |
| template<typename Ch> | |
| fcppt::parse::skipper::result< Ch > | make_success () |
| Creates a skipper success result. | |
| template<typename Left, typename Right> requires (std::conjunction_v< fcppt::parse::skipper::is_valid_argument<Left>, fcppt::parse::skipper::is_valid_argument<Right>>) | |
| fcppt::parse::skipper::alternative< std::remove_cvref_t< Left >, std::remove_cvref_t< Right > > | operator| (Left &&_left, Right &&_right) |
| Creates an fcppt::parse::skipper::alternative skipper. | |
| template<typename Skipper> requires (fcppt::parse::skipper::is_valid_argument<Skipper>::value) | |
| fcppt::parse::skipper::not_< std::remove_cvref_t< Skipper > > | operator! (Skipper &&_skipper) |
| Creates an fcppt::parse::skipper::not_ skipper. | |
| template<typename Parser> requires (fcppt::parse::skipper::is_valid_argument<Parser>::value) | |
| fcppt::parse::skipper::repetition< std::remove_cvref_t< Parser > > | operator* (Parser &&_parser) |
| Creates an fcppt::parse::skipper::repetition. | |
| template<typename Left, typename Right> requires (std::conjunction_v< fcppt::parse::skipper::is_valid_argument<Left>, fcppt::parse::skipper::is_valid_argument<Right>>) | |
| fcppt::parse::skipper::sequence< std::remove_cvref_t< Left >, std::remove_cvref_t< Right > > | operator>> (Left &&_left, Right &&_right) |
| Creates an fcppt::parse::skipper::sequence. | |
| template<typename Ch, typename Skipper> requires (fcppt::parse::skipper::is_skipper_v<Skipper>) | |
| fcppt::parse::skipper::result< Ch > | run (Skipper const &_skipper, fcppt::reference< fcppt::parse::basic_stream< Ch > > const _state) |
| Runs a skipper on a stream. | |
| auto | space () |
The skipper basic_space<char>. | |
Variables | |
| template<typename Type> | |
| constexpr bool | is_skipper_v = fcppt::parse::skipper::is_skipper<Type>::value |
| Checks if a type is a skipper. | |
| fcppt::parse::skipper::comment | ( | Open && | , |
| Close && | ) -> comment< std::remove_cvref_t< Open >, std::remove_cvref_t< Close > > |