icydb_base/types/
finance.rs

1use crate::prelude::*;
2
3///
4/// Usd
5///
6/// Decimal amount denominated in USD.
7/// - Enforces at most 2 decimal places.
8/// - Must be non-negative.
9///
10
11#[newtype(
12    primitive = "Decimal",
13    item(prim = "Decimal"),
14    ty(
15        sanitizer(path = "sanitizer::num::RoundDecimalPlaces", args(2u32)),
16        validator(path = "validator::decimal::MaxDecimalPlaces", args(2)),
17        validator(path = "validator::num::Gte", args(0))
18    )
19)]
20pub struct Usd {}