pub struct Qtid(/* private fields */);Expand description
Quadruple length Triplet ID.
§Examples
// Generate random value.
let random = Qtid::random();
assert_ne!(random, Qtid::NIL);
// Parse from string.
let from_str: Qtid = "kmn-pqr-stv-wxy".parse()?;
// Parse from integer.
let from_int: Qtid = 707829019477668798.try_into()?;
assert_eq!(from_str, from_int);Implementations§
Source§impl Qtid
impl Qtid
Sourcepub const BITS: u32 = 60u32
pub const BITS: u32 = 60u32
The size of the integer type in bits. This is not equal actually stored size.
Sourcepub const CAPACITY: u64 = 1_152_921_504_606_846_976u64
pub const CAPACITY: u64 = 1_152_921_504_606_846_976u64
The capacity value of this triplet id type
#Examples
assert_eq!(Qtid::MAX, Qtid::CAPACITY -1);Sourcepub const NIL: Self
pub const NIL: Self
The smallest value that can be represented by this triplet id type.
§Examples
assert_eq!(Qtid::NIL, "000-000-000-000".parse::<Qtid>()?);
assert_eq!(Qtid::NIL, Qtid::try_from(0)?);Sourcepub const MAX: Self
pub const MAX: Self
The largest value that can be represent by this triplet id type.
§Examples
assert_eq!(Qtid::MAX, "zzz-zzz-zzz-zzz".parse::<Qtid>()?);
assert_eq!(Qtid::MAX, Qtid::try_from(1152921504606846975)?);Sourcepub fn from_int_lossy(int: u64) -> Self
pub fn from_int_lossy(int: u64) -> Self
Convert from uint. If the value is equal Self::Capacity or more, the higher bits will be lost.
§Examples
assert!(Qtid::from_int_lossy(Qtid::CAPACITY - 1).is_max());
assert!(Qtid::from_int_lossy(Qtid::CAPACITY).is_nil());Trait Implementations§
Source§impl<'a> Arbitrary<'a> for Qtid
Available on crate feature arbitrary only.
impl<'a> Arbitrary<'a> for Qtid
Available on crate feature
arbitrary only.Source§fn arbitrary(u: &mut Unstructured<'a>) -> Result<Self>
fn arbitrary(u: &mut Unstructured<'a>) -> Result<Self>
Generate an arbitrary value of
Self from the given unstructured data. Read moreSource§fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
fn arbitrary_take_rest(u: Unstructured<'a>) -> Result<Self, Error>
Generate an arbitrary value of
Self from the entirety of the given
unstructured data. Read moreSource§fn size_hint(depth: usize) -> (usize, Option<usize>)
fn size_hint(depth: usize) -> (usize, Option<usize>)
Get a size hint for how many bytes out of an
Unstructured this type
needs to construct itself. Read moreSource§fn try_size_hint(
depth: usize,
) -> Result<(usize, Option<usize>), MaxRecursionReached>
fn try_size_hint( depth: usize, ) -> Result<(usize, Option<usize>), MaxRecursionReached>
Get a size hint for how many bytes out of an
Unstructured this type
needs to construct itself. Read moreSource§impl<'de> Deserialize<'de> for Qtid
Available on crate feature serde only.
impl<'de> Deserialize<'de> for Qtid
Available on crate feature
serde only.Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Distribution<Qtid> for StandardUniform
Available on crate feature rand only.
impl Distribution<Qtid> for StandardUniform
Available on crate feature
rand only.Source§impl FromSql for Qtid
Available on crate feature rusqlite only.
impl FromSql for Qtid
Available on crate feature
rusqlite only.Source§fn column_result(value: ValueRef<'_>) -> FromSqlResult<Self>
fn column_result(value: ValueRef<'_>) -> FromSqlResult<Self>
Converts SQLite value into Rust value.
Source§impl Ord for Qtid
impl Ord for Qtid
Source§impl PartialOrd for Qtid
impl PartialOrd for Qtid
Source§impl ToSql for Qtid
Available on crate feature rusqlite only.
impl ToSql for Qtid
Available on crate feature
rusqlite only.Source§fn to_sql(&self) -> Result<ToSqlOutput<'_>>
fn to_sql(&self) -> Result<ToSqlOutput<'_>>
Converts Rust value to SQLite value
Source§impl TryGetable for Qtid
Available on crate feature sea-orm only.
impl TryGetable for Qtid
Available on crate feature
sea-orm only.Source§fn try_get_by<I: ColIdx>(
res: &QueryResult,
index: I,
) -> Result<Self, TryGetError>
fn try_get_by<I: ColIdx>( res: &QueryResult, index: I, ) -> Result<Self, TryGetError>
Get a value from the query result with an ColIdx
Source§fn try_get(res: &QueryResult, pre: &str, col: &str) -> Result<Self, TryGetError>
fn try_get(res: &QueryResult, pre: &str, col: &str) -> Result<Self, TryGetError>
Get a value from the query result with prefixed column name
Source§fn try_get_by_index(
res: &QueryResult,
index: usize,
) -> Result<Self, TryGetError>
fn try_get_by_index( res: &QueryResult, index: usize, ) -> Result<Self, TryGetError>
Get a value from the query result based on the order in the select expressions
Source§impl ValueType for Qtid
Available on crate feature sea-orm only.
impl ValueType for Qtid
Available on crate feature
sea-orm only.fn try_from(v: Value) -> Result<Self, ValueTypeErr>
fn type_name() -> String
fn array_type() -> ArrayType
fn column_type() -> ColumnType
fn unwrap(v: Value) -> Self
fn expect(v: Value, msg: &str) -> Self
fn is_option() -> bool
fn enum_type_name() -> Option<&'static str>
impl Copy for Qtid
impl Eq for Qtid
impl StructuralPartialEq for Qtid
Auto Trait Implementations§
impl Freeze for Qtid
impl RefUnwindSafe for Qtid
impl Send for Qtid
impl Sync for Qtid
impl Unpin for Qtid
impl UnwindSafe for Qtid
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> ExprTrait for Twhere
T: Into<SimpleExpr>,
impl<T> ExprTrait for Twhere
T: Into<SimpleExpr>,
Source§fn as_enum<N>(self, type_name: N) -> SimpleExprwhere
N: IntoIden,
fn as_enum<N>(self, type_name: N) -> SimpleExprwhere
N: IntoIden,
Express a
AS enum expression. Read moreSource§fn binary<O, R>(self, op: O, right: R) -> SimpleExpr
fn binary<O, R>(self, op: O, right: R) -> SimpleExpr
Create any binary operation Read more
Source§fn cast_as<N>(self, type_name: N) -> SimpleExprwhere
N: IntoIden,
fn cast_as<N>(self, type_name: N) -> SimpleExprwhere
N: IntoIden,
Express a
CAST AS expression. Read moreSource§fn unary(self, op: UnOper) -> SimpleExpr
fn unary(self, op: UnOper) -> SimpleExpr
Apply any unary operator to the expression. Read more
Source§fn add<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn add<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express an arithmetic addition operation. Read more
fn and<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Source§fn between<A, B>(self, a: A, b: B) -> SimpleExpr
fn between<A, B>(self, a: A, b: B) -> SimpleExpr
Express a
BETWEEN expression. Read moreSource§fn div<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn div<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express an arithmetic division operation. Read more
Source§fn eq<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn eq<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express an equal (
=) expression. Read moreSource§fn equals<C>(self, col: C) -> SimpleExprwhere
C: IntoColumnRef,
fn equals<C>(self, col: C) -> SimpleExprwhere
C: IntoColumnRef,
Express a equal expression between two table columns,
you will mainly use this to relate identical value between two table columns. Read more
Source§fn gt<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn gt<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express a greater than (
>) expression. Read moreSource§fn gte<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn gte<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express a greater than or equal (
>=) expression. Read moreSource§fn in_subquery(self, sel: SelectStatement) -> SimpleExpr
fn in_subquery(self, sel: SelectStatement) -> SimpleExpr
Express a
IN sub-query expression. Read moreSource§fn in_tuples<V, I>(self, v: I) -> SimpleExprwhere
V: IntoValueTuple,
I: IntoIterator<Item = V>,
fn in_tuples<V, I>(self, v: I) -> SimpleExprwhere
V: IntoValueTuple,
I: IntoIterator<Item = V>,
Express a
IN sub expression. Read moreSource§fn is<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn is<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express a
IS expression. Read moreSource§fn is_in<V, I>(self, v: I) -> SimpleExpr
fn is_in<V, I>(self, v: I) -> SimpleExpr
Express a
IN expression. Read moreSource§fn is_not<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn is_not<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express a
IS NOT expression. Read moreSource§fn is_not_in<V, I>(self, v: I) -> SimpleExpr
fn is_not_in<V, I>(self, v: I) -> SimpleExpr
Express a
NOT IN expression. Read moreSource§fn is_not_null(self) -> SimpleExpr
fn is_not_null(self) -> SimpleExpr
Express a
IS NOT NULL expression. Read moreSource§fn is_null(self) -> SimpleExpr
fn is_null(self) -> SimpleExpr
Express a
IS NULL expression. Read moreSource§fn left_shift<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn left_shift<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express a bitwise left shift. Read more
Source§fn like<L>(self, like: L) -> SimpleExprwhere
L: IntoLikeExpr,
fn like<L>(self, like: L) -> SimpleExprwhere
L: IntoLikeExpr,
Express a
LIKE expression. Read moreSource§fn lt<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn lt<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express a less than (
<) expression. Read moreSource§fn lte<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn lte<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express a less than or equal (
<=) expression. Read moreSource§fn modulo<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn modulo<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express an arithmetic modulo operation. Read more
Source§fn mul<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn mul<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express an arithmetic multiplication operation. Read more
Source§fn ne<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn ne<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express a not equal (
<>) expression. Read moreSource§fn not(self) -> SimpleExpr
fn not(self) -> SimpleExpr
Negates an expression with
NOT. Read moreSource§fn not_between<A, B>(self, a: A, b: B) -> SimpleExpr
fn not_between<A, B>(self, a: A, b: B) -> SimpleExpr
Express a
NOT BETWEEN expression. Read moreSource§fn not_equals<C>(self, col: C) -> SimpleExprwhere
C: IntoColumnRef,
fn not_equals<C>(self, col: C) -> SimpleExprwhere
C: IntoColumnRef,
Express a not equal expression between two table columns,
you will mainly use this to relate identical value between two table columns. Read more
Source§fn not_in_subquery(self, sel: SelectStatement) -> SimpleExpr
fn not_in_subquery(self, sel: SelectStatement) -> SimpleExpr
Express a
NOT IN sub-query expression. Read moreSource§fn not_like<L>(self, like: L) -> SimpleExprwhere
L: IntoLikeExpr,
fn not_like<L>(self, like: L) -> SimpleExprwhere
L: IntoLikeExpr,
Express a
NOT LIKE expression. Read moreSource§fn or<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn or<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express a logical
OR operation. Read moreSource§fn right_shift<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn right_shift<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express a bitwise right shift. Read more
Source§fn sub<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn sub<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express an arithmetic subtraction operation. Read more
Source§fn bit_and<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn bit_and<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express a bitwise AND operation. Read more
Source§fn bit_or<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
fn bit_or<R>(self, right: R) -> SimpleExprwhere
R: Into<SimpleExpr>,
Express a bitwise OR operation. Read more
Source§impl<V> FromValueTuple for V
impl<V> FromValueTuple for V
fn from_value_tuple<I>(i: I) -> Vwhere
I: IntoValueTuple,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<V> IntoValueTuple for V
impl<V> IntoValueTuple for V
fn into_value_tuple(self) -> ValueTuple
Source§impl<V> PrimaryKeyArity for Vwhere
V: TryGetable,
impl<V> PrimaryKeyArity for Vwhere
V: TryGetable,
Source§impl<T> TryGetableMany for Twhere
T: TryGetable,
impl<T> TryGetableMany for Twhere
T: TryGetable,
Source§fn try_get_many(
res: &QueryResult,
pre: &str,
cols: &[String],
) -> Result<T, TryGetError>
fn try_get_many( res: &QueryResult, pre: &str, cols: &[String], ) -> Result<T, TryGetError>
Get a tuple value from the query result with prefixed column name
Source§fn try_get_many_by_index(res: &QueryResult) -> Result<T, TryGetError>
fn try_get_many_by_index(res: &QueryResult) -> Result<T, TryGetError>
Get a tuple value from the query result based on the order in the select expressions