spacetimedb_sats/
primitives.rs1use crate::{de, impl_deserialize, impl_serialize, impl_st, AlgebraicType};
2pub use spacetimedb_primitives::ColumnAttribute;
3pub use spacetimedb_primitives::Constraints;
4
5impl_deserialize!([] ColumnAttribute, de =>
6 Self::from_bits(de.deserialize_u8()?)
7 .ok_or_else(|| de::Error::custom("invalid bitflags for `ColumnAttribute`"))
8);
9impl_serialize!([] ColumnAttribute, (self, ser) => ser.serialize_u8(self.bits()));
10impl_st!([] ColumnAttribute, AlgebraicType::U8);
11
12impl_deserialize!([] Constraints, de => Self::try_from(de.deserialize_u8()?)
13 .map_err(|_| de::Error::custom("invalid bitflags for `Constraints`"))
14);
15impl_serialize!([] Constraints, (self, ser) => ser.serialize_u8(self.bits()));
16impl_st!([] Constraints, AlgebraicType::U8);