1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
use postgres_protocol::types; use std::error::Error; use uuid_07::Uuid; use crate::types::{FromSql, IsNull, ToSql, Type}; impl<'a> FromSql<'a> for Uuid { fn from_sql(_: &Type, raw: &[u8]) -> Result<Uuid, Box<dyn Error + Sync + Send>> { let bytes = types::uuid_from_sql(raw)?; Ok(Uuid::from_bytes(bytes)) } accepts!(UUID); } impl ToSql for Uuid { fn to_sql(&self, _: &Type, w: &mut Vec<u8>) -> Result<IsNull, Box<dyn Error + Sync + Send>> { types::uuid_to_sql(*self.as_bytes(), w); Ok(IsNull::No) } accepts!(UUID); to_sql_checked!(); }