Generates Rustler keyword/options structs, decoders, and option helper functions.
Summary
Functions
@spec decode_args(term()) :: RustQ.Type.nif_result(RustQ.Type.vec(term()))
@spec decode_opts(term()) :: RustQ.Type.nif_result(RustQ.Type.vec({RustQ.Type.path(:Atom), term()}))
@spec decoder( atom() | String.t(), keyword() ) :: [RustQ.Rust.Fragment.t()]
@spec helpers(keyword()) :: [RustQ.Rust.Fragment.t()]
@spec opt_atom_option( RustQ.Type.slice({RustQ.Type.path(:Atom), term()}), RustQ.Type.path(:Atom) ) :: RustQ.Type.nif_result(RustQ.Type.option(RustQ.Type.path(:Atom)))
@spec opt_bool_option( RustQ.Type.slice({RustQ.Type.path(:Atom), term()}), RustQ.Type.path(:Atom) ) :: RustQ.Type.nif_result(RustQ.Type.option(boolean()))
@spec opt_f32( RustQ.Type.slice({RustQ.Type.path(:Atom), term()}), RustQ.Type.path(:Atom) ) :: RustQ.Type.nif_result(RustQ.Type.f32())
@spec opt_f32_default( RustQ.Type.slice({RustQ.Type.path(:Atom), term()}), RustQ.Type.path(:Atom), RustQ.Type.f32() ) :: RustQ.Type.nif_result(RustQ.Type.f32())
@spec opt_f32_option( RustQ.Type.slice({RustQ.Type.path(:Atom), term()}), RustQ.Type.path(:Atom) ) :: RustQ.Type.nif_result(RustQ.Type.option(RustQ.Type.f32()))
@spec opt_term( RustQ.Type.slice({RustQ.Type.path(:Atom), term()}), RustQ.Type.path(:Atom) ) :: RustQ.Type.option(term())