gel_protocol::query_arg

Trait QueryArg

Source
pub trait QueryArg:
    Send
    + Sync
    + Sized {
    // Required methods
    fn encode_slot(&self, encoder: &mut Encoder<'_>) -> Result<(), Error>;
    fn check_descriptor(
        &self,
        ctx: &DescriptorContext<'_>,
        pos: TypePos,
    ) -> Result<(), Error>;
    fn to_value(&self) -> Result<Value, Error>;
}
Expand description

A single argument for a query.

Required Methods§

Source

fn encode_slot(&self, encoder: &mut Encoder<'_>) -> Result<(), Error>

Source

fn check_descriptor( &self, ctx: &DescriptorContext<'_>, pos: TypePos, ) -> Result<(), Error>

Source

fn to_value(&self) -> Result<Value, Error>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl QueryArg for Vec<Value>

Source§

fn encode_slot(&self, enc: &mut Encoder<'_>) -> Result<(), Error>

Source§

fn check_descriptor( &self, ctx: &DescriptorContext<'_>, pos: TypePos, ) -> Result<(), Error>

Source§

fn to_value(&self) -> Result<Value, Error>

Source§

impl<T: ScalarArg> QueryArg for Option<T>

Source§

fn encode_slot(&self, enc: &mut Encoder<'_>) -> Result<(), Error>

Source§

fn check_descriptor( &self, ctx: &DescriptorContext<'_>, pos: TypePos, ) -> Result<(), Error>

Source§

fn to_value(&self) -> Result<Value, Error>

Source§

impl<T: ScalarArg> QueryArg for Vec<T>

Source§

fn encode_slot(&self, enc: &mut Encoder<'_>) -> Result<(), Error>

Source§

fn check_descriptor( &self, ctx: &DescriptorContext<'_>, pos: TypePos, ) -> Result<(), Error>

Source§

fn to_value(&self) -> Result<Value, Error>

Implementors§