Stores all informations necessary for implementing an FSM-based parser.
More...
#include <parser_state.hpp>
|
|
| parser_state (Iterator first) noexcept |
| |
|
| parser_state (Iterator first, Sentinel last) noexcept |
| |
| char | next () noexcept |
| | Returns the null terminator when reaching the end of the string, otherwise the next character. More...
|
| |
|
char | current () const noexcept |
| | Returns the null terminator if i == e, otherwise the current character.
|
| |
|
bool | at_end () const noexcept |
| | Checks whether i == e.
|
| |
|
void | skip_whitespaces () noexcept |
| | Skips any whitespaces characters in the input.
|
| |
| bool | consume (char x) noexcept |
| | Tries to read x as the next character, automatically skipping leading whitespaces. More...
|
| |
| template<class Predicate > |
| bool | consume_if (Predicate predicate) noexcept |
| | Consumes the next character if it satisfies given predicate, automatically skipping leading whitespaces. More...
|
| |
| bool | consume_strict (char x) noexcept |
| | Tries to read x as the next character without automatically skipping leading whitespaces. More...
|
| |
| template<class Predicate > |
| bool | consume_strict_if (Predicate predicate) noexcept |
| | Consumes the next character if it satisfies given predicate without automatically skipping leading whitespaces. More...
|
| |
|
|
Iterator | i |
| | Current position of the parser.
|
| |
|
Sentinel | e |
| | End-of-input marker.
|
| |
|
pec | code |
| | Current state of the parser.
|
| |
|
int32_t | line |
| | Current line in the input.
|
| |
|
int32_t | column |
| | Position in the current line.
|
| |
template<class Iterator, class Sentinel>
struct caf::parser_state< Iterator, Sentinel >
Stores all informations necessary for implementing an FSM-based parser.
◆ consume()
template<class Iterator , class Sentinel >
Tries to read x as the next character, automatically skipping leading whitespaces.
◆ consume_if()
template<class Iterator , class Sentinel >
template<class Predicate >
Consumes the next character if it satisfies given predicate, automatically skipping leading whitespaces.
◆ consume_strict()
template<class Iterator , class Sentinel >
Tries to read x as the next character without automatically skipping leading whitespaces.
◆ consume_strict_if()
template<class Iterator , class Sentinel >
template<class Predicate >
| bool caf::parser_state< Iterator, Sentinel >::consume_strict_if |
( |
Predicate |
predicate | ) |
|
|
noexcept |
Consumes the next character if it satisfies given predicate without automatically skipping leading whitespaces.
◆ next()
template<class Iterator , class Sentinel >
Returns the null terminator when reaching the end of the string, otherwise the next character.
The documentation for this struct was generated from the following files:
- /build/actor-framework-0.17.6/libcaf_core/caf/fwd.hpp
- /build/actor-framework-0.17.6/libcaf_core/caf/parser_state.hpp