pub struct ActionDef {
pub name: ActionName,
pub default_risk: RiskClass,
pub default_proof: ProofLevel,
pub approval_default: Option<ApprovalRequirement>,
pub description: String,
pub parameters: Option<Value>,
pub dangerous: Option<bool>,
pub reversible: Option<bool>,
}Expand description
Definition of a single named action.
Fields§
§name: ActionNameDotted action name this library defines.
default_risk: RiskClassDefault risk class when no policy overrides it.
default_proof: ProofLevelDefault proof level when no policy overrides it.
approval_default: Option<ApprovalRequirement>Default approval requirement when no policy overrides it.
description: StringHuman-readable description of what the action does.
parameters: Option<Value>Parameters schema for the action (opaque JSON Schema fragment).
dangerous: Option<bool>Flagged as dangerous; policies SHOULD require explicit approval.
reversible: Option<bool>Whether the action can be undone by its inverse.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for ActionDef
impl<'de> Deserialize<'de> for ActionDef
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>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ActionDef
impl StructuralPartialEq for ActionDef
Auto Trait Implementations§
impl Freeze for ActionDef
impl RefUnwindSafe for ActionDef
impl Send for ActionDef
impl Sync for ActionDef
impl Unpin for ActionDef
impl UnsafeUnpin for ActionDef
impl UnwindSafe for ActionDef
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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,
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§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.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 more