Skip to main content

ProcedureArgs

Trait ProcedureArgs 

pub trait ProcedureArgs {
    // Required method
    fn procedure_arg_value(&self, field: &str) -> Option<Value>;

    // Provided method
    fn validate_fields(&self) -> Result<(), CratestackError> { ... }
}

Required Methods§

fn procedure_arg_value(&self, field: &str) -> Option<Value>

Provided Methods§

fn validate_fields(&self) -> Result<(), CratestackError>

Run the field validators (@length, @range, @regex, @email, @uri, @iso4217) of the arguments a client sent, and of every type and model they hold. The generated Args overrides this when an argument is, or holds, a validated type or model; every other implementor has nothing to check.

The generated authorize, authorize_with_db, invoke and invoke_with_db each call it before they evaluate @allow, so no choice of helper skips validation (ADR 0019 D5).

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

§

impl ProcedureArgs for ()

§

fn procedure_arg_value(&self, _field: &str) -> Option<Value>

Implementors§