#[non_exhaustive]pub enum ToolClass {
Read,
Account,
Trading,
}Expand description
Effect class of an MCP tool.
Driven by ADR-0003. The class is part of the handler’s type, not a
runtime field — the registry refuses to register a Trading tool
without the corresponding feature gate.
Marked #[non_exhaustive] so adding a new class in a future
milestone (e.g. an Admin class) is not a SemVer break for callers
outside the crate. Internal matches stay exhaustive.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Read
Read-only public market data. No auth required.
Account
Authenticated account-scoped reads.
Trading
Trading-class actions. Requires --allow-trading and credentials.
Implementations§
Trait Implementations§
Source§impl Ord for ToolClass
impl Ord for ToolClass
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialOrd for ToolClass
impl PartialOrd for ToolClass
impl Copy for ToolClass
impl Eq for ToolClass
impl StructuralPartialEq for ToolClass
Auto Trait Implementations§
impl Freeze for ToolClass
impl RefUnwindSafe for ToolClass
impl Send for ToolClass
impl Sync for ToolClass
impl Unpin for ToolClass
impl UnsafeUnpin for ToolClass
impl UnwindSafe for ToolClass
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.