#[non_exhaustive]pub struct ElicitResult {
pub action: ElicitationAction,
pub content: Option<Value>,
pub meta: Option<MetaObject>,
}Expand description
The result returned by a client in response to an elicitation request.
Contains the user’s decision (accept/decline/cancel) and optionally their input data if they chose to accept the request.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.action: ElicitationActionThe user’s decision on how to handle the elicitation request
content: Option<Value>The actual data provided by the user, if they accepted the request. Must conform to the JSON schema specified in the original request. Only present when action is Accept.
meta: Option<MetaObject>Optional protocol-level metadata for this result.
Implementations§
Source§impl ElicitResult
impl ElicitResult
Sourcepub fn new(action: ElicitationAction) -> ElicitResult
pub fn new(action: ElicitationAction) -> ElicitResult
Create a new ElicitResult.
Sourcepub fn with_content(self, content: Value) -> ElicitResult
pub fn with_content(self, content: Value) -> ElicitResult
Set the content on this result.
Sourcepub fn with_meta(self, meta: MetaObject) -> ElicitResult
pub fn with_meta(self, meta: MetaObject) -> ElicitResult
Set the metadata on this result.
Trait Implementations§
Source§impl Clone for ElicitResult
impl Clone for ElicitResult
Source§fn clone(&self) -> ElicitResult
fn clone(&self) -> ElicitResult
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ElicitResult
impl Debug for ElicitResult
Source§impl<'de> Deserialize<'de> for ElicitResult
impl<'de> Deserialize<'de> for ElicitResult
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<ElicitResult, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<ElicitResult, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<ElicitResult> for ClientResult
impl From<ElicitResult> for ClientResult
Source§fn from(value: ElicitResult) -> ClientResult
fn from(value: ElicitResult) -> ClientResult
Converts to this type from the input type.
Source§impl From<ElicitResult> for ServerResult
impl From<ElicitResult> for ServerResult
Source§fn from(value: ElicitResult) -> ServerResult
fn from(value: ElicitResult) -> ServerResult
Converts to this type from the input type.
Source§impl JsonSchema for ElicitResult
impl JsonSchema for ElicitResult
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreSource§impl PartialEq for ElicitResult
impl PartialEq for ElicitResult
Source§impl Serialize for ElicitResult
impl Serialize for ElicitResult
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for ElicitResult
Auto Trait Implementations§
impl Freeze for ElicitResult
impl RefUnwindSafe for ElicitResult
impl Send for ElicitResult
impl Sync for ElicitResult
impl Unpin for ElicitResult
impl UnsafeUnpin for ElicitResult
impl UnwindSafe for ElicitResult
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreCreates a shared type from an unshared type.