Skip to main content

ProcedureHost

Trait ProcedureHost 

Source
pub trait ProcedureHost:
    Send
    + Sync
    + Any {
    // Required method
    fn as_any(&self) -> &dyn Any;
}
Expand description

Marker trait for the host’s procedure execution facilities.

Concrete hosts (such as uni-query’s QueryProcedureHost) implement this and expose typed accessors on the concrete type. Plugins downcast through ProcedureHost::as_any when they need host-specific facilities (snapshot, schema manager, vector search, algorithm registry). The trait is intentionally tiny — adding a new host accessor does NOT touch the plugin ABI.

The proposal-spec session: &Session / tx: Option<&Transaction> fields land in M6 once the public Session trait stabilizes; until then the host pointer is the interim bridge for in-tree built-ins.

Required Methods§

Source

fn as_any(&self) -> &dyn Any

Returns the host as a downcastable &dyn Any.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§