#[non_exhaustive]pub struct PermissionOption {
pub option_id: PermissionOptionId,
pub name: String,
pub kind: PermissionOptionKind,
pub meta: Option<Meta>,
}unstable_protocol_v2 only.Expand description
An option presented to the user when requesting permission.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.option_id: PermissionOptionIdUnique identifier for this permission option.
name: StringHuman-readable label to display to the user.
kind: PermissionOptionKindHint about the nature of this permission option.
meta: Option<Meta>The _meta property is reserved by ACP to allow clients and agents to attach additional
metadata to their interactions. Omitted and null are equivalent and mean no metadata.
Implementations MUST NOT make assumptions about values at these keys.
See protocol docs: Extensibility
Implementations§
Source§impl PermissionOption
impl PermissionOption
Sourcepub fn new(
option_id: impl Into<PermissionOptionId>,
name: impl Into<String>,
kind: PermissionOptionKind,
) -> Self
pub fn new( option_id: impl Into<PermissionOptionId>, name: impl Into<String>, kind: PermissionOptionKind, ) -> Self
Builds PermissionOption with the required fields set; optional fields start unset or empty.
Sourcepub fn meta(self, meta: impl IntoOption<Meta>) -> Self
pub fn meta(self, meta: impl IntoOption<Meta>) -> Self
The _meta property is reserved by ACP to allow clients and agents to attach additional metadata to their interactions. Implementations MUST NOT make assumptions about values at these keys.
See protocol docs: Extensibility
Trait Implementations§
Source§impl Clone for PermissionOption
impl Clone for PermissionOption
Source§impl Debug for PermissionOption
impl Debug for PermissionOption
Source§impl<'de> Deserialize<'de> for PermissionOption
impl<'de> Deserialize<'de> for PermissionOption
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for PermissionOption
Source§impl JsonSchema for PermissionOption
impl JsonSchema for PermissionOption
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl PartialEq for PermissionOption
impl PartialEq for PermissionOption
Source§impl Serialize for PermissionOption
impl Serialize for PermissionOption
impl StructuralPartialEq for PermissionOption
Auto Trait Implementations§
impl Freeze for PermissionOption
impl RefUnwindSafe for PermissionOption
impl Send for PermissionOption
impl Sync for PermissionOption
impl Unpin for PermissionOption
impl UnsafeUnpin for PermissionOption
impl UnwindSafe for PermissionOption
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
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<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
key and return true if they are equal.