pub struct RegexParser { /* private fields */ }Expand description
A parser that uses a regex pattern to parse input.
Implementations§
Source§impl RegexParser
impl RegexParser
Sourcepub fn new(regex: &str) -> Result<RegexParser, BuildError>
pub fn new(regex: &str) -> Result<RegexParser, BuildError>
Create a new RegexParser from a regex pattern.
Trait Implementations§
Source§impl CreateParserState for RegexParser
impl CreateParserState for RegexParser
Source§fn create_parser_state(&self) -> <RegexParser as Parser>::PartialState
fn create_parser_state(&self) -> <RegexParser as Parser>::PartialState
Create the default state of the parser.
Source§impl Parser for RegexParser
impl Parser for RegexParser
Source§type PartialState = RegexParserState
type PartialState = RegexParserState
The state of the parser.
Source§fn parse<'a>(
&self,
state: &<RegexParser as Parser>::PartialState,
input: &'a [u8],
) -> Result<ParseStatus<'a, <RegexParser as Parser>::PartialState, <RegexParser as Parser>::Output>, ParserError>
fn parse<'a>( &self, state: &<RegexParser as Parser>::PartialState, input: &'a [u8], ) -> Result<ParseStatus<'a, <RegexParser as Parser>::PartialState, <RegexParser as Parser>::Output>, ParserError>
Parse the given input.
Auto Trait Implementations§
impl !Freeze for RegexParser
impl RefUnwindSafe for RegexParser
impl Send for RegexParser
impl Sync for RegexParser
impl Unpin for RegexParser
impl UnwindSafe for RegexParser
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
fn into_sample(self) -> T
Source§impl<P> ModelConstraints for Pwhere
P: Parser,
impl<P> ModelConstraints for Pwhere
P: Parser,
Source§impl<P> ParserExt for Pwhere
P: Parser,
impl<P> ParserExt for Pwhere
P: Parser,
Source§fn otherwise<V>(self, other: V) -> ChoiceParser<Self, V>
fn otherwise<V>(self, other: V) -> ChoiceParser<Self, V>
Parse this parser, or another other parser.
Source§fn or<V>(self, other: V) -> MapOutputParser<ChoiceParser<Self, V>, Self::Output>
fn or<V>(self, other: V) -> MapOutputParser<ChoiceParser<Self, V>, Self::Output>
Parse this parser, or another other parser with the same type
Source§fn then<V>(self, other: V) -> SequenceParser<Self, V>
fn then<V>(self, other: V) -> SequenceParser<Self, V>
Parse this parser, then the other parser.
Source§fn then_lazy<V, F>(self, other: F) -> ThenLazy<Self, F>
fn then_lazy<V, F>(self, other: F) -> ThenLazy<Self, F>
Parse this parser, then the other parser that is created base on the output of this parser.
Source§fn ignore_output_then<V>(
self,
other: V,
) -> MapOutputParser<SequenceParser<Self, V>, <V as Parser>::Output>where
V: CreateParserState,
Self: Sized,
fn ignore_output_then<V>(
self,
other: V,
) -> MapOutputParser<SequenceParser<Self, V>, <V as Parser>::Output>where
V: CreateParserState,
Self: Sized,
Parse this parser, then the other parser while ignoring the current parser’s output.
Source§fn then_ignore_output<V>(
self,
other: V,
) -> MapOutputParser<SequenceParser<Self, V>, Self::Output>where
V: CreateParserState,
Self: Sized,
fn then_ignore_output<V>(
self,
other: V,
) -> MapOutputParser<SequenceParser<Self, V>, Self::Output>where
V: CreateParserState,
Self: Sized,
Parse this parser, then the other parser while ignoring the output of the other parser.
Source§fn then_literal(
self,
literal: impl Into<Cow<'static, str>>,
) -> MapOutputParser<SequenceParser<Self, LiteralParser>, Self::Output>where
Self: Sized,
fn then_literal(
self,
literal: impl Into<Cow<'static, str>>,
) -> MapOutputParser<SequenceParser<Self, LiteralParser>, Self::Output>where
Self: Sized,
Parse this parser, then a literal. This is equivalent to
.then_ignore_output(LiteralParser::new(literal)).Source§fn repeat(self, length_range: RangeInclusive<usize>) -> RepeatParser<Self>where
Self: Sized,
fn repeat(self, length_range: RangeInclusive<usize>) -> RepeatParser<Self>where
Self: Sized,
Repeat this parser a number of times.
Source§fn map_output<F, O>(self, f: F) -> MapOutputParser<Self, O, F>
fn map_output<F, O>(self, f: F) -> MapOutputParser<Self, O, F>
Map the output of this parser.
Source§fn boxed(self) -> ArcParser<Self::Output>where
Self: Sized + CreateParserState + Send + Sync + 'static,
Self::Output: Send + Sync + 'static,
Self::PartialState: Send + Sync + 'static,
fn boxed(self) -> ArcParser<Self::Output>where
Self: Sized + CreateParserState + Send + Sync + 'static,
Self::Output: Send + Sync + 'static,
Self::PartialState: Send + Sync + 'static,
Get a boxed version of this parser.
Source§fn with_initial_state<F>(self, initial_state: F) -> WithInitialState<Self, F>
fn with_initial_state<F>(self, initial_state: F) -> WithInitialState<Self, F>
Create a new parser with a different initial state