pub struct Cents(pub i64);
Available on crate feature
postgres_backend
only.Expand description
Money is represented in Postgres as a 64 bit signed integer. This struct is a dumb wrapper
type, meant only to indicate the integer’s meaning. The fractional precision of the value is
determined by the lc_monetary
setting of the database.
This struct is re-exported as Cents
as a convenient and conventional expression of a typical
unit of 1/100th of currency. For other names or precisions, users might consider a differently
named use
of the PgMoney
struct.
use diesel::data_types::PgMoney as Pence; // 1/100th unit of Pound
use diesel::data_types::PgMoney as Fils; // 1/1000th unit of Dinar
Tuple Fields§
§0: i64
Trait Implementations§
Source§impl AddAssign for PgMoney
impl AddAssign for PgMoney
Source§fn add_assign(&mut self, rhs: PgMoney)
fn add_assign(&mut self, rhs: PgMoney)
§Panics
Performs a checked addition, and will panic!
on overflow in both debug
and release
.
Source§impl<'__expr> AsExpression<Money> for &'__expr PgMoney
impl<'__expr> AsExpression<Money> for &'__expr PgMoney
Source§type Expression = Bound<Money, &'__expr PgMoney>
type Expression = Bound<Money, &'__expr PgMoney>
The expression being returned
Source§fn as_expression(self) -> Self::Expression
fn as_expression(self) -> Self::Expression
Perform the conversion
Source§impl AsExpression<Money> for PgMoney
impl AsExpression<Money> for PgMoney
Source§type Expression = Bound<Money, PgMoney>
type Expression = Bound<Money, PgMoney>
The expression being returned
Source§fn as_expression(self) -> Self::Expression
fn as_expression(self) -> Self::Expression
Perform the conversion
Source§impl<'__expr> AsExpression<Nullable<Money>> for &'__expr PgMoney
impl<'__expr> AsExpression<Nullable<Money>> for &'__expr PgMoney
Source§fn as_expression(self) -> Self::Expression
fn as_expression(self) -> Self::Expression
Perform the conversion
Source§impl AsExpression<Nullable<Money>> for PgMoney
impl AsExpression<Nullable<Money>> for PgMoney
Source§fn as_expression(self) -> Self::Expression
fn as_expression(self) -> Self::Expression
Perform the conversion
Source§impl Ord for PgMoney
impl Ord for PgMoney
Source§impl PartialOrd for PgMoney
impl PartialOrd for PgMoney
Source§impl SubAssign for PgMoney
impl SubAssign for PgMoney
Source§fn sub_assign(&mut self, rhs: PgMoney)
fn sub_assign(&mut self, rhs: PgMoney)
§Panics
Performs a checked subtraction, and will panic!
on underflow in both debug
and release
.
impl Copy for PgMoney
impl Eq for PgMoney
impl StructuralPartialEq for PgMoney
Auto Trait Implementations§
impl Freeze for PgMoney
impl RefUnwindSafe for PgMoney
impl Send for PgMoney
impl Sync for PgMoney
impl Unpin for PgMoney
impl UnwindSafe for PgMoney
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<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T, ST, DB> FromSqlRow<ST, DB> for Twhere
T: Queryable<ST, DB>,
ST: SqlTypeOrSelectable,
DB: Backend,
<T as Queryable<ST, DB>>::Row: FromStaticSqlRow<ST, DB>,
impl<T, ST, DB> FromSqlRow<ST, DB> for Twhere
T: Queryable<ST, DB>,
ST: SqlTypeOrSelectable,
DB: Backend,
<T as Queryable<ST, DB>>::Row: FromStaticSqlRow<ST, DB>,
Source§impl<T, ST, DB> FromStaticSqlRow<ST, DB> for T
impl<T, ST, DB> FromStaticSqlRow<ST, DB> for T
Source§impl<T> IntoSql for T
impl<T> IntoSql for T
Source§impl<T, ST, DB> StaticallySizedRow<ST, DB> for T
impl<T, ST, DB> StaticallySizedRow<ST, DB> for T
Source§const FIELD_COUNT: usize = const FIELD_COUNT: usize = <ST as crate::util::TupleSize>::SIZE;
const FIELD_COUNT: usize = const FIELD_COUNT: usize = <ST as crate::util::TupleSize>::SIZE;
The number of fields that this type will consume.