asimov_patterns/execute/
importer.rs

1// This is free and unencumbered software released into the public domain.
2
3use crate::Execute;
4use dogma::prelude::String;
5use typed_builder::TypedBuilder;
6
7/// RDF dataset importer. Consumes a URL input, produces RDF output.
8pub trait Importer<T, E>: Execute<T, E> {}
9
10/// Configuration options for [`Importer`].
11///
12/// # Examples
13///
14/// ```rust
15/// use asimov_patterns::ImporterOptions;
16///
17/// let options = ImporterOptions::builder()
18///     .input_url("https://crates.io/robots.txt".to_string())
19///     .build();
20/// ```
21#[derive(Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd, TypedBuilder)]
22pub struct ImporterOptions {
23    pub input_url: String,
24}