rsonpath::engine::main

Struct MainEngine

Source
pub struct MainEngine { /* private fields */ }
Expand description

Main engine for a fixed JSONPath query.

The engine is stateless, meaning that it can be executed on any number of separate inputs, even on separate threads.

Trait Implementations§

Source§

impl Compiler for MainEngine

Source§

type E = MainEngine

Concrete type of the Engines created, parameterized with the lifetime of the input query.
Source§

fn compile_query(query: &JsonPathQuery) -> Result<Self, CompilerError>

Compile a JsonPathQuery into an Engine.c Read more
Source§

fn from_compiled_query(automaton: Automaton) -> Self::E

Turn a compiled Automaton into an Engine.
Source§

impl Engine for MainEngine

Source§

fn count<I>(&self, input: &I) -> Result<MatchCount, EngineError>
where I: Input,

Find the number of matches on the given Input. Read more
Source§

fn indices<I, S>(&self, input: &I, sink: &mut S) -> Result<(), EngineError>
where I: Input, S: Sink<MatchIndex>,

Find the starting indices of matches on the given Input and write them to the Sink. Read more
Source§

fn approximate_spans<I, S>( &self, input: &I, sink: &mut S, ) -> Result<(), EngineError>
where I: Input, S: Sink<MatchSpan>,

Find the approximate spans of matches on the given Input and write them to the Sink. Read more
Source§

fn matches<I, S>(&self, input: &I, sink: &mut S) -> Result<(), EngineError>
where I: Input, S: Sink<Match>,

Find all matches on the given Input and write them to the Sink. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.