Trait Function

Source
pub trait Function: Sync {
    // Required method
    fn evaluate(
        &self,
        args: &[Rcvar],
        ctx: &mut Context<'_>,
    ) -> Result<Rcvar, JmespathError>;
}
Expand description

Represents a JMESPath function.

Required Methods§

Source

fn evaluate( &self, args: &[Rcvar], ctx: &mut Context<'_>, ) -> Result<Rcvar, JmespathError>

Evaluates the function against an in-memory variable.

Implementors§

Source§

impl Function for AbsFn

Source§

impl Function for AvgFn

Source§

impl Function for CeilFn

Source§

impl Function for ContainsFn

Source§

impl Function for CustomFunction

Source§

impl Function for EndsWithFn

Source§

impl Function for FloorFn

Source§

impl Function for JoinFn

Source§

impl Function for KeysFn

Source§

impl Function for LengthFn

Source§

impl Function for MapFn

Source§

impl Function for MaxByFn

Source§

impl Function for MaxFn

Source§

impl Function for MergeFn

Source§

impl Function for MinByFn

Source§

impl Function for MinFn

Source§

impl Function for NotNullFn

Source§

impl Function for ReverseFn

Source§

impl Function for SortByFn

Source§

impl Function for SortFn

Source§

impl Function for StartsWithFn

Source§

impl Function for SumFn

Source§

impl Function for ToArrayFn

Source§

impl Function for ToNumberFn

Source§

impl Function for ToStringFn

Source§

impl Function for TypeFn

Source§

impl Function for ValuesFn

Source§

impl<F> Function for F
where F: Sync + Fn(&[Rcvar], &mut Context<'_>) -> Result<Rcvar, JmespathError>,

Normal closures can be used as functions.

It is up to the function to validate the provided arguments. If you wish to utilize Signatures or more complex argument validation, it is recommended to use CustomFunction.