pub trait SerializeCql {
    // Required method
    fn serialize<'b>(
        &self,
        typ: &ColumnType,
        writer: CellWriter<'b>
    ) -> Result<WrittenCellProof<'b>, SerializationError>;
}
Expand description

A type that can be serialized and sent along with a CQL statement.

This is a low-level trait that is exposed to the specifics to the CQL protocol and usually does not have to be implemented directly. See the chapter on “Query Values” in the driver docs for information about how this trait is supposed to be used.

Required Methods§

source

fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>

Serializes the value to given CQL type.

The value should produce a [value], according to the CQL protocol specification, containing the serialized value. See section 6 of the document on how the contents of the [value] should look like.

The value produced should match the type provided by typ. If the value cannot be serialized to that type, an error should be returned.

The CellWriter provided to the method ensures that the value produced will be properly framed (i.e. incorrectly written value should not cause the rest of the request to be misinterpreted), but otherwise the implementor of the trait is responsible for producing the a value in a correct format.

Implementations on Foreign Types§

source§

impl SerializeCql for &str

source§

impl SerializeCql for &[u8]

source§

impl SerializeCql for IpAddr

source§

impl SerializeCql for bool

source§

impl SerializeCql for f32

source§

impl SerializeCql for f64

source§

impl SerializeCql for i8

source§

impl SerializeCql for i16

source§

impl SerializeCql for i32

source§

impl SerializeCql for i64

source§

impl SerializeCql for String

source§

impl SerializeCql for Vec<u8>

source§

impl SerializeCql for DateTime<Utc>

Available on crate feature chrono only.
source§

impl SerializeCql for NaiveDate

Available on crate feature chrono only.
source§

impl SerializeCql for NaiveTime

Available on crate feature chrono only.
source§

impl SerializeCql for BigInt

Available on crate feature num-bigint-03 only.
source§

impl SerializeCql for BigInt

Available on crate feature num-bigint-04 only.
source§

impl SerializeCql for Uuid

source§

impl SerializeCql for BigDecimal

Available on crate feature bigdecimal-04 only.
source§

impl SerializeCql for Date

Available on crate feature time only.
source§

impl SerializeCql for OffsetDateTime

Available on crate feature time only.
source§

impl SerializeCql for Time

Available on crate feature time only.
source§

impl<'a, T> SerializeCql for &'a [T]
where T: SerializeCql + 'a,

source§

impl<K, V> SerializeCql for BTreeMap<K, V>

source§

impl<K, V, S> SerializeCql for HashMap<K, V, S>

source§

impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)

source§

impl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)

source§

impl<T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)

source§

impl<T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)

source§

impl<T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)

source§

impl<T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)

source§

impl<T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)

source§

impl<T7, T8, T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T7, T8, T9, T10, T11, T12, T13, T14, T15)

source§

impl<T8, T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T8, T9, T10, T11, T12, T13, T14, T15)

source§

impl<T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T9, T10, T11, T12, T13, T14, T15)

source§

impl<T10, T11, T12, T13, T14, T15> SerializeCql for (T10, T11, T12, T13, T14, T15)

source§

impl<T11, T12, T13, T14, T15> SerializeCql for (T11, T12, T13, T14, T15)
where T11: SerializeCql, T12: SerializeCql, T13: SerializeCql, T14: SerializeCql, T15: SerializeCql,

source§

impl<T12, T13, T14, T15> SerializeCql for (T12, T13, T14, T15)
where T12: SerializeCql, T13: SerializeCql, T14: SerializeCql, T15: SerializeCql,

source§

impl<T13, T14, T15> SerializeCql for (T13, T14, T15)
where T13: SerializeCql, T14: SerializeCql, T15: SerializeCql,

source§

impl<T14, T15> SerializeCql for (T14, T15)
where T14: SerializeCql, T15: SerializeCql,

source§

impl<T15> SerializeCql for (T15,)
where T15: SerializeCql,

source§

impl<T> SerializeCql for Option<T>
where T: SerializeCql,

source§

impl<T> SerializeCql for &T
where T: SerializeCql + ?Sized,

source§

impl<T> SerializeCql for Box<T>
where T: SerializeCql + ?Sized,

source§

impl<T> SerializeCql for Vec<T>
where T: SerializeCql,

source§

impl<V> SerializeCql for BTreeSet<V>
where V: SerializeCql,

source§

impl<V> SerializeCql for Secret<V>
where V: SerializeCql + Zeroize,

Available on crate feature secret only.
source§

impl<V, S> SerializeCql for HashSet<V, S>

source§

impl<const N: usize> SerializeCql for [u8; N]

Implementors§