Skip to main content

HandlerDef

Struct HandlerDef 

Source
pub struct HandlerDef {
    pub name: &'static str,
    pub description: &'static str,
    pub visibility: Visibility,
    pub category: VerbCategory,
    pub params: &'static [ParamDef],
}
Expand description

Handler metadata for discovery and documentation.

Replaces the previous VerbDef. Every entry carries a visibility tag so the registry can separate the MCP-exposed surface from internal handlers, and a category that classifies the illocutionary force of the verb per the speech-act taxonomy.

The params slice is used by VerbRegistry::describe_verb to build the help=true schema envelope. Packs that predate this field leave it empty (&[]) which is backward-compatible — callers receive a schema envelope with zero params rather than an error.

Fields§

§name: &'static str§description: &'static str§visibility: Visibility§category: VerbCategory

Illocutionary force classification. Use Assertive for Subhandler entries that have no external callers.

§params: &'static [ParamDef]

Parameter schema for help=true introspection.

Empty (&[]) is the correct default for handlers that predate this field or have no fixed parameter schema (e.g. free-form query verbs).

Implementations§

Source§

impl HandlerDef

Source

pub fn presentation_policy(&self) -> VerbPresentationPolicy

Resolve the presentation policy for this handler.

Returns VerbPresentationPolicy::AlwaysVerbose for verbs whose semantics demand full output (full UUIDs, complete timestamps) regardless of the caller’s requested presentation mode.

Stream writers retain exact receipt timestamps while keeping other Agent transforms. Unlisted verbs use Standard.

Trait Implementations§

Source§

impl Clone for HandlerDef

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for HandlerDef

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for HandlerDef

Source§

impl PartialEq for HandlerDef

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for HandlerDef

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.