Trait scylla::serialize::value::SerializeCql
source · 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§
sourcefn serialize<'b>(
&self,
typ: &ColumnType,
writer: CellWriter<'b>
) -> Result<WrittenCellProof<'b>, SerializationError>
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
impl SerializeCql for &str
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for &[u8]
impl SerializeCql for &[u8]
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for IpAddr
impl SerializeCql for IpAddr
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for bool
impl SerializeCql for bool
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for f32
impl SerializeCql for f32
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for f64
impl SerializeCql for f64
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for i8
impl SerializeCql for i8
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for i16
impl SerializeCql for i16
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for i32
impl SerializeCql for i32
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for i64
impl SerializeCql for i64
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for String
impl SerializeCql for String
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for Vec<u8>
impl SerializeCql for Vec<u8>
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for DateTime<Utc>
Available on crate feature chrono
only.
impl SerializeCql for DateTime<Utc>
chrono
only.fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for NaiveDate
Available on crate feature chrono
only.
impl SerializeCql for NaiveDate
chrono
only.fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for NaiveTime
Available on crate feature chrono
only.
impl SerializeCql for NaiveTime
chrono
only.fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for BigInt
Available on crate feature num-bigint-03
only.
impl SerializeCql for BigInt
num-bigint-03
only.fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for BigInt
Available on crate feature num-bigint-04
only.
impl SerializeCql for BigInt
num-bigint-04
only.fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for Uuid
impl SerializeCql for Uuid
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for BigDecimal
Available on crate feature bigdecimal-04
only.
impl SerializeCql for BigDecimal
bigdecimal-04
only.fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for Date
Available on crate feature time
only.
impl SerializeCql for Date
time
only.fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for OffsetDateTime
Available on crate feature time
only.
impl SerializeCql for OffsetDateTime
time
only.fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl SerializeCql for Time
Available on crate feature time
only.
impl SerializeCql for Time
time
only.fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<'a, T> SerializeCql for &'a [T]where
T: SerializeCql + 'a,
impl<'a, T> SerializeCql for &'a [T]where
T: SerializeCql + 'a,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<K, V> SerializeCql for BTreeMap<K, V>where
K: SerializeCql,
V: SerializeCql,
impl<K, V> SerializeCql for BTreeMap<K, V>where
K: SerializeCql,
V: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<K, V, S> SerializeCql for HashMap<K, V, S>
impl<K, V, S> SerializeCql for HashMap<K, V, S>
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
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)where
T0: SerializeCql,
T1: SerializeCql,
T2: SerializeCql,
T3: SerializeCql,
T4: SerializeCql,
T5: SerializeCql,
T6: SerializeCql,
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
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)where
T0: SerializeCql,
T1: SerializeCql,
T2: SerializeCql,
T3: SerializeCql,
T4: SerializeCql,
T5: SerializeCql,
T6: SerializeCql,
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
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)where
T1: SerializeCql,
T2: SerializeCql,
T3: SerializeCql,
T4: SerializeCql,
T5: SerializeCql,
T6: SerializeCql,
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
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)where
T1: SerializeCql,
T2: SerializeCql,
T3: SerializeCql,
T4: SerializeCql,
T5: SerializeCql,
T6: SerializeCql,
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
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)where
T2: SerializeCql,
T3: SerializeCql,
T4: SerializeCql,
T5: SerializeCql,
T6: SerializeCql,
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
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)where
T2: SerializeCql,
T3: SerializeCql,
T4: SerializeCql,
T5: SerializeCql,
T6: SerializeCql,
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
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)where
T3: SerializeCql,
T4: SerializeCql,
T5: SerializeCql,
T6: SerializeCql,
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
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)where
T3: SerializeCql,
T4: SerializeCql,
T5: SerializeCql,
T6: SerializeCql,
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
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)where
T4: SerializeCql,
T5: SerializeCql,
T6: SerializeCql,
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
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)where
T4: SerializeCql,
T5: SerializeCql,
T6: SerializeCql,
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
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)where
T5: SerializeCql,
T6: SerializeCql,
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
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)where
T5: SerializeCql,
T6: SerializeCql,
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)where
T6: SerializeCql,
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
impl<T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)where
T6: SerializeCql,
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<T7, T8, T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T7, T8, T9, T10, T11, T12, T13, T14, T15)where
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
impl<T7, T8, T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T7, T8, T9, T10, T11, T12, T13, T14, T15)where
T7: SerializeCql,
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<T8, T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T8, T9, T10, T11, T12, T13, T14, T15)where
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
impl<T8, T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T8, T9, T10, T11, T12, T13, T14, T15)where
T8: SerializeCql,
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T9, T10, T11, T12, T13, T14, T15)where
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
impl<T9, T10, T11, T12, T13, T14, T15> SerializeCql for (T9, T10, T11, T12, T13, T14, T15)where
T9: SerializeCql,
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<T10, T11, T12, T13, T14, T15> SerializeCql for (T10, T11, T12, T13, T14, T15)where
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
impl<T10, T11, T12, T13, T14, T15> SerializeCql for (T10, T11, T12, T13, T14, T15)where
T10: SerializeCql,
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
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,
impl<T11, T12, T13, T14, T15> SerializeCql for (T11, T12, T13, T14, T15)where
T11: SerializeCql,
T12: SerializeCql,
T13: SerializeCql,
T14: SerializeCql,
T15: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<T12, T13, T14, T15> SerializeCql for (T12, T13, T14, T15)
impl<T12, T13, T14, T15> SerializeCql for (T12, T13, T14, T15)
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<T13, T14, T15> SerializeCql for (T13, T14, T15)
impl<T13, T14, T15> SerializeCql for (T13, T14, T15)
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<T14, T15> SerializeCql for (T14, T15)where
T14: SerializeCql,
T15: SerializeCql,
impl<T14, T15> SerializeCql for (T14, T15)where
T14: SerializeCql,
T15: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<T15> SerializeCql for (T15,)where
T15: SerializeCql,
impl<T15> SerializeCql for (T15,)where
T15: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<T> SerializeCql for Option<T>where
T: SerializeCql,
impl<T> SerializeCql for Option<T>where
T: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<T> SerializeCql for &Twhere
T: SerializeCql + ?Sized,
impl<T> SerializeCql for &Twhere
T: SerializeCql + ?Sized,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<T> SerializeCql for Box<T>where
T: SerializeCql + ?Sized,
impl<T> SerializeCql for Box<T>where
T: SerializeCql + ?Sized,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<T> SerializeCql for Vec<T>where
T: SerializeCql,
impl<T> SerializeCql for Vec<T>where
T: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<V> SerializeCql for BTreeSet<V>where
V: SerializeCql,
impl<V> SerializeCql for BTreeSet<V>where
V: SerializeCql,
fn serialize<'b>( &self, typ: &ColumnType, writer: CellWriter<'b> ) -> Result<WrittenCellProof<'b>, SerializationError>
source§impl<V> SerializeCql for Secret<V>where
V: SerializeCql + Zeroize,
Available on crate feature secret
only.
impl<V> SerializeCql for Secret<V>where
V: SerializeCql + Zeroize,
secret
only.