Skip to main content

Matcher

Struct Matcher 

Source
pub struct Matcher { /* private fields */ }
Available on crate feature std only.
Expand description

An external matcher that performs exact or approximate matching on RDF.

Output is RDF describing the matches, rather than necessarily a subset of the input dataset. Matching rules belong to the external program; this wrapper passes JSONL lines and command-line options through. Execution uses the concurrent streaming behavior described in crate::programs.

Implementations§

Source§

impl Matcher

Source

pub fn new( program: impl AsRef<OsStr>, input: GraphInput, output: GraphOutput, options: MatcherOptions, ) -> Self

Configures a matcher without starting it.

Adds any configured --input=<format> and --output=<format> arguments, followed by options.other. The input and output values select stdin and stdout; stderr is captured for failure diagnostics. Byte input is lazily adapted into JSONL batches using GraphInput::into_jsonl.

Source

pub async fn execute(&mut self) -> MatcherResult

Starts a child and returns its live JSONL match stream.

After successful spawning, input ownership moves into the stream, which feeds it concurrently when polled. Subsequent executions have no graph input.

§Errors

Spawn failures are returned directly; input, output, wait, and exit failures are stream items. Consume the stream to completion to check process success.

Source§

impl Matcher

Source

pub fn with_batching(self, options: BatchOptions) -> Self

Sets batching thresholds for captured JSONL output. This does not change subprocess arguments, native pipeline edges, or listing limits. The default policy is crate::BatchOptions::default.

Trait Implementations§

Source§

impl Debug for Matcher

Source§

fn fmt(&self, __derive_more_f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Execute<Pin<Box<dyn Stream<Item = Result<JsonlBatch, ExecutorError>> + Send>>> for Matcher

Source§

type Error = ExecutorError

The implementation-specific error returned directly by execution. Read more
Source§

fn execute<'life0, 'async_trait>( &'life0 mut self, ) -> Pin<Box<dyn Future<Output = MatcherResult> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Executes the operation using its current input and configuration. Read more
Source§

impl GraphConsumer for Matcher

Source§

impl GraphProducer for Matcher

Source§

impl Matcher<Pin<Box<dyn Stream<Item = Result<JsonlBatch, ExecutorError>> + Send>>> for Matcher

Source§

impl PipelineProgram for Matcher

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> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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 = !

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

fn try_from(value: U) -> Result<T, !>

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.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more