> This page is for NeMo Relay, version dev.
> For other versions, use one of these documentation indexes:
> - Latest (v0.10.4) (default): https://docs.nvidia.com/nemo/relay/latest/llms.txt
> - dev: https://docs.nvidia.com/nemo/relay/dev/llms.txt
> - v0.10.4: https://docs.nvidia.com/nemo/relay/v0.10.4/llms.txt
> - v0.9.4: https://docs.nvidia.com/nemo/relay/v0.9.4/llms.txt
> - v0.8.4: https://docs.nvidia.com/nemo/relay/v0.8.4/llms.txt
> - v0.7.3: https://docs.nvidia.com/nemo/relay/v0.7.3/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/nemo/relay/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/relay/_mcp/server.

# Enum Plugin Execution

> Producer-authored plugin execution mechanism, excluded from counter identity.

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`.

```rust
#[non_exhaustive]pub enum PluginExecution {
    NativeAbi,
    WorkerProtocol,
}
```

Producer-authored plugin execution mechanism, excluded from counter identity.

Phase-one core activation recording leaves execution unset. These values support later native/worker producer integrations; they do not describe currently implemented automatic collection.

## Variants (Non-exhaustive)

### `NativeAbi`

<pre />

The plugin executes through the native ABI.

### `WorkerProtocol`

<pre />

The plugin executes through the dynamic-worker protocol.

## Implementations

### `impl PluginExecution`

<pre />

#### `from_canonical_name`

<pre />

Interpret an exact supported canonical name without allocating.

#### `as_str`

<pre />

Stable portable name, also available in const contexts.

## Trait Implementations

### `impl Clone for PluginExecution`

<pre />

#### `clone`

<pre />

#### `clone_from`

<pre />

### `impl Debug for PluginExecution`

<pre />

#### `fmt`

<pre />

### `impl<'de> Deserialize<'de> for PluginExecution`

<pre />

#### `deserialize`

<pre />

### `impl<'_derivative_strum> From<&'_derivative_strum PluginExecution> for &'static str`

<pre />

#### `from`

<pre />

### `impl From<PluginExecution> for &'static str`

<pre />

#### `from`

<pre />

### `impl From<PluginExecution> for PluginExecutionName`

<pre />

#### `from`

<pre />

### `impl FromStr for PluginExecution`

<pre />

#### `Err`

<pre />

#### `from_str`

<pre />

### `impl Hash for PluginExecution`

<pre />

#### `hash`

<pre />

#### `hash_slice`

<pre />

### `impl Ord for PluginExecution`

<pre />

#### `cmp`

<pre />

#### `max`

<pre />

#### `min`

<pre />

#### `clamp`

<pre />

### `impl PartialEq for PluginExecution`

<pre />

#### `eq`

<pre />

#### `ne`

<pre />

### `impl PartialOrd for PluginExecution`

<pre />

#### `partial_cmp`

<pre />

#### `lt`

<pre />

#### `le`

<pre />

#### `gt`

<pre />

#### `ge`

<pre />

### `impl Serialize for PluginExecution`

<pre />

#### `serialize`

<pre />

### `impl TryFrom<&str> for PluginExecution`

<pre />

#### `Error`

<pre />

#### `try_from`

<pre />

### `impl Copy for PluginExecution`

<pre />

### `impl Eq for PluginExecution`

<pre />

### `impl StructuralPartialEq for PluginExecution`

<pre />