Struct Nemo Relay Native Host ApiV7

View as Markdown

Generated from cargo doc --no-deps -p nemo-relay -p nemo-relay-adaptive -p nemo-relay-pii-redaction -p nemo-relay-ffi -p nemo-relay-types -p nemo-relay-plugin -p nemo-relay-worker-proto -p nemo-relay-worker.

#[repr(C)]pub struct NemoRelayNativeHostApiV7 {
    pub v6: NemoRelayNativeHostApiV6,
    pub plugin_context_register_async_llm_execution_intercept: unsafe extern "C" fn(ctx: *mut NemoRelayNativePluginContext, name: *const NemoRelayNativeString, priority: i32, cb: NemoRelayNativeAsyncLlmExecutionCb, user_data: *mut c_void, free_fn: NemoRelayNativeFreeFn) -> NemoRelayStatus,
    pub async_stream_retain: unsafe extern "C" fn(stream: *const NemoRelayNativeAsyncStream) -> NemoRelayStatus,
    pub async_stream_llm_request_codec_decode: unsafe extern "C" fn(stream: *const NemoRelayNativeAsyncStream, request_json: *const NemoRelayNativeString, out: *mut *mut NemoRelayNativeString) -> NemoRelayStatus,
    pub async_stream_llm_request_codec_encode: unsafe extern "C" fn(stream: *const NemoRelayNativeAsyncStream, annotated_json: *const NemoRelayNativeString, original_json: *const NemoRelayNativeString, out: *mut *mut NemoRelayNativeString) -> NemoRelayStatus,
}

ABI-v7 host table for context-aware LLM execution intercept callbacks.

The inherited function-pointer table has the same fields as ABI v6, but its LLM execution callback typedefs include NemoRelayNativeLlmExecutionContext. The distinct table version prevents either side from invoking a callback compiled with the old argument layout.

Fields

v6: NemoRelayNativeHostApiV6

ABI-v6 table compiled with the ABI-v7 callback typedefs.

plugin_context_register_async_llm_execution_intercept: unsafe extern "C" fn(ctx: *mut NemoRelayNativePluginContext, name: *const NemoRelayNativeString, priority: i32, cb: NemoRelayNativeAsyncLlmExecutionCb, user_data: *mut c_void, free_fn: NemoRelayNativeFreeFn) -> NemoRelayStatus

Registers a completion-based asynchronous LLM execution intercept.

async_stream_retain: unsafe extern "C" fn(stream: *const NemoRelayNativeAsyncStream) -> NemoRelayStatus

Retains an output stream for an execution codec facade.

async_stream_llm_request_codec_decode: unsafe extern "C" fn(stream: *const NemoRelayNativeAsyncStream, request_json: *const NemoRelayNativeString, out: *mut *mut NemoRelayNativeString) -> NemoRelayStatus

Decodes an LLM request through the request codec owned by stream.

The operation fails after the output stream settles or is cancelled.

async_stream_llm_request_codec_encode: unsafe extern "C" fn(stream: *const NemoRelayNativeAsyncStream, annotated_json: *const NemoRelayNativeString, original_json: *const NemoRelayNativeString, out: *mut *mut NemoRelayNativeString) -> NemoRelayStatus

Encodes an annotated request through the request codec owned by stream.

The operation fails after the output stream settles or is cancelled.

Trait Implementations

impl Clone for NemoRelayNativeHostApiV7

impl Clone for NemoRelayNativeHostApiV7

clone

fn clone(&self) -> NemoRelayNativeHostApiV7

clone_from

fn clone_from(&mut self, source: &Self)

impl Copy for NemoRelayNativeHostApiV7

impl Copy for NemoRelayNativeHostApiV7

impl Send for NemoRelayNativeHostApiV7

impl Send for NemoRelayNativeHostApiV7

impl Sync for NemoRelayNativeHostApiV7

impl Sync for NemoRelayNativeHostApiV7