use jsonld_core::ProcessingMode;
pub use jsonld_context_processing::algorithm::Action;
#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)]
pub struct Options {
pub processing_mode: ProcessingMode,
pub policy: Policy,
pub ordered: bool,
}
impl Options {
#[must_use]
pub fn unordered(self) -> Self {
Self { ordered: false, ..self }
}
}
impl From<Options> for jsonld_context_processing::Options {
fn from(options: Options) -> jsonld_context_processing::Options {
jsonld_context_processing::Options {
processing_mode: options.processing_mode,
..Default::default()
}
}
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct Policy {
pub invalid: Action,
pub vocab: Action,
pub allow_undefined: bool,
}
impl Default for Policy {
fn default() -> Self {
Self {
invalid: Action::Keep,
vocab: Action::Keep,
allow_undefined: true,
}
}
}