Skip to main content

PureFn

Trait PureFn 

Source
pub trait PureFn<Args>:
    Send
    + Sync
    + 'static {
    const ARITY: usize;
}
Expand description

A Rust closure that can be given to ScriptBuilder::pure: up to six arguments that Deserialize, and a result that Serializes.

Required Associated Constants§

Dyn Compatibility§

This trait is not dyn compatible.

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

Implementors§

Source§

impl<F, R, A, B, C, D, E, G> PureFn<(A, B, C, D, E, G)> for F
where F: Fn(A, B, C, D, E, G) -> R + Send + Sync + 'static, R: Serialize, A: DeserializeOwned, B: DeserializeOwned, C: DeserializeOwned, D: DeserializeOwned, E: DeserializeOwned, G: DeserializeOwned,

Source§

const ARITY: usize = 6

Source§

impl<F, R, A, B, C, D, E> PureFn<(A, B, C, D, E)> for F
where F: Fn(A, B, C, D, E) -> R + Send + Sync + 'static, R: Serialize, A: DeserializeOwned, B: DeserializeOwned, C: DeserializeOwned, D: DeserializeOwned, E: DeserializeOwned,

Source§

const ARITY: usize = 5

Source§

impl<F, R, A, B, C, D> PureFn<(A, B, C, D)> for F
where F: Fn(A, B, C, D) -> R + Send + Sync + 'static, R: Serialize, A: DeserializeOwned, B: DeserializeOwned, C: DeserializeOwned, D: DeserializeOwned,

Source§

const ARITY: usize = 4

Source§

impl<F, R, A, B, C> PureFn<(A, B, C)> for F
where F: Fn(A, B, C) -> R + Send + Sync + 'static, R: Serialize, A: DeserializeOwned, B: DeserializeOwned, C: DeserializeOwned,

Source§

const ARITY: usize = 3

Source§

impl<F, R, A, B> PureFn<(A, B)> for F
where F: Fn(A, B) -> R + Send + Sync + 'static, R: Serialize, A: DeserializeOwned, B: DeserializeOwned,

Source§

const ARITY: usize = 2

Source§

impl<F, R, A> PureFn<(A,)> for F
where F: Fn(A) -> R + Send + Sync + 'static, R: Serialize, A: DeserializeOwned,

Source§

const ARITY: usize = 1

Source§

impl<F, R> PureFn<()> for F
where F: Fn() -> R + Send + Sync + 'static, R: Serialize,

Source§

const ARITY: usize = 0