pub struct Fixed<const P: u32, const S: u32> { /* private fields */ }Expand description
IDL-fixed<P, S>-Decimal mit P Gesamt-Stellen und S Stellen
nach dem Komma.
Storage als Packed-BCD-Bytes (XCDR2 §7.4.4.5). Pure-Rust ohne
externe Crate-Dep. Bewusste Architektur-Wahl: dieser Type bietet
Roundtrip + String-Konversion, keine Decimal-Arithmetik
(Add/Mul). End-User die Decimal-Arithmetik brauchen, kombinieren
das mit rust_decimal o.ae. via From-Impl.
Implementations§
Source§impl<const P: u32, const S: u32> Fixed<P, S>
impl<const P: u32, const S: u32> Fixed<P, S>
Sourcepub fn from_bcd_bytes(bytes: Vec<u8>) -> Result<Self, DecodeError>
pub fn from_bcd_bytes(bytes: Vec<u8>) -> Result<Self, DecodeError>
Konstruiert eine Fixed<P, S> aus einer Roh-BCD-Bytes-Sequenz.
§Errors
Invalid wenn die Bytes-Laenge nicht (P + 1) / 2 + 1 ist.
Sourcepub fn as_bcd_bytes(&self) -> &[u8] ⓘ
pub fn as_bcd_bytes(&self) -> &[u8] ⓘ
Roh-BCD-Bytes.
Sourcepub fn from_str_repr(s: &str) -> Result<Self, DecodeError>
pub fn from_str_repr(s: &str) -> Result<Self, DecodeError>
Erzeugt aus String (z.B. "123.45" oder "-1.5").
§Errors
Invalid bei nicht-numerischen Eingaben oder Overflow gegen P/S.
Sourcepub fn to_string_repr(&self) -> String
pub fn to_string_repr(&self) -> String
Decimal-String-Repraesentation (z.B. "123.45").
Trait Implementations§
Source§impl<const P: u32, const S: u32> CdrDecode for Fixed<P, S>
impl<const P: u32, const S: u32> CdrDecode for Fixed<P, S>
Source§fn decode(r: &mut BufferReader<'_>) -> Result<Self, DecodeError>
fn decode(r: &mut BufferReader<'_>) -> Result<Self, DecodeError>
Liest diesen Wert aus dem Reader (alignment-bewusst). Read more
Source§impl<const P: u32, const S: u32> CdrEncode for Fixed<P, S>
impl<const P: u32, const S: u32> CdrEncode for Fixed<P, S>
Source§fn encode(&self, w: &mut BufferWriter) -> Result<(), EncodeError>
fn encode(&self, w: &mut BufferWriter) -> Result<(), EncodeError>
Schreibt diesen Wert in den Writer (alignment-bewusst). Read more
Source§impl<const P: u32, const S: u32> PartialEq for Fixed<P, S>
impl<const P: u32, const S: u32> PartialEq for Fixed<P, S>
impl<const P: u32, const S: u32> Eq for Fixed<P, S>
impl<const P: u32, const S: u32> StructuralPartialEq for Fixed<P, S>
Auto Trait Implementations§
impl<const P: u32, const S: u32> Freeze for Fixed<P, S>
impl<const P: u32, const S: u32> RefUnwindSafe for Fixed<P, S>
impl<const P: u32, const S: u32> Send for Fixed<P, S>
impl<const P: u32, const S: u32> Sync for Fixed<P, S>
impl<const P: u32, const S: u32> Unpin for Fixed<P, S>
impl<const P: u32, const S: u32> UnsafeUnpin for Fixed<P, S>
impl<const P: u32, const S: u32> UnwindSafe for Fixed<P, S>
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