tag | fd468215c01b34843a7632a161e82b1e7ad8649e | |
---|---|---|
tagger | The Android Open Source Project <initial-contribution@android.com> | Thu May 19 16:14:31 2022 -0700 |
object | ce6341d01ac6c87d054bef16fc1d6b5a65139f71 |
Platform Tools Release 33.0.0 (8141338)
commit | ce6341d01ac6c87d054bef16fc1d6b5a65139f71 | [log] [tgz] |
---|---|---|
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | Thu Dec 16 00:03:39 2021 +0000 |
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | Thu Dec 16 00:03:39 2021 +0000 |
tree | 8a1df24ff4549f3ff836f4b7f89f4bbeff716fc4 | |
parent | b7129e2aa475e935cc4866217327a0b5c17812fd [diff] | |
parent | f021041ae968624b8d625a73f8853c451767e116 [diff] |
Snap for 8005954 from f021041ae968624b8d625a73f8853c451767e116 to sdk-release Change-Id: I810b7a5f1b4f77eccfe30e3bfeb2baed1eac3bd2
cast
Ergonomic, checked cast functions for primitive types
extern crate cast; // `u8` and `u16` are checked cast functions, use them to cast from any numeric // primitive to `u8`/`u16` respectively use cast::{u8, u16, Error}; // Infallible operations, like integer promotion, are equivalent to a normal // cast with `as` assert_eq!(u16(0u8), 0u16); // Everything else will return a `Result` depending on the success of the // operation assert_eq!(u8(0u16), Ok(0u8)); assert_eq!(u8(256u16), Err(Error::Overflow)); assert_eq!(u8(-1i8), Err(Error::Underflow)); assert_eq!(u8(1. / 0.), Err(Error::Infinite)); assert_eq!(u8(0. / 0.), Err(Error::NaN));
Licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.