pub enum ExecutableSchema {
Regular(Arc<RefEngine>),
Structured(Arc<StructuredProgram>),
Hybrid(Arc<StructuredProgram>),
}Expand description
Immutable compiled schema semantics with no vocabulary or mutable session state.
Variants§
Regular(Arc<RefEngine>)
A complete regular byte automaton.
Structured(Arc<StructuredProgram>)
A complete structured program with no reusable regular descendants.
Hybrid(Arc<StructuredProgram>)
A structured program whose plan embeds reusable regular descendants.
Implementations§
Source§impl ExecutableSchema
impl ExecutableSchema
Sourcepub fn compile(ir: Arc<SchemaIR>) -> Result<Arc<Self>, CompileError>
pub fn compile(ir: Arc<SchemaIR>) -> Result<Arc<Self>, CompileError>
Compile one already-frozen IR according to its shared root route.
Sourcepub fn regular_engine(&self) -> Option<&Arc<RefEngine>>
pub fn regular_engine(&self) -> Option<&Arc<RefEngine>>
Regular engine when this executable is fully regular.
Sourcepub fn structured_program(&self) -> Option<&Arc<StructuredProgram>>
pub fn structured_program(&self) -> Option<&Arc<StructuredProgram>>
Structured program when this executable uses structured or hybrid execution.
Sourcepub fn retained_bytes(&self) -> usize
pub fn retained_bytes(&self) -> usize
Conservative retained bytes charged to the schema cache.
Auto Trait Implementations§
impl Freeze for ExecutableSchema
impl RefUnwindSafe for ExecutableSchema
impl Send for ExecutableSchema
impl Sync for ExecutableSchema
impl Unpin for ExecutableSchema
impl UnsafeUnpin for ExecutableSchema
impl UnwindSafe for ExecutableSchema
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