本文简要介绍rust语言中 Function core::mem::variant_count
的用法。
用法
pub fn variant_count<T>() -> usize
返回枚举类型 T
中的变体数量。
如果T
不是枚举,调用此函数不会导致未定义的行为,但返回值未指定。同样,如果 T
是一个具有比 usize::MAX
更多变体的枚举,则返回值未指定。无人居住的变种将被计算在内。
例子
use std::mem;
enum Void {}
enum Foo { A(&'static str), B(i32), C(i32) }
assert_eq!(mem::variant_count::<Void>(), 0);
assert_eq!(mem::variant_count::<Foo>(), 3);
assert_eq!(mem::variant_count::<Option<!>>(), 2);
assert_eq!(mem::variant_count::<Result<!, !>>(), 2);
相关用法
- Rust vars_os用法及代码示例
- Rust var用法及代码示例
- Rust vars用法及代码示例
- Rust var_os用法及代码示例
- Rust vec用法及代码示例
- Rust UdpSocket.set_multicast_loop_v6用法及代码示例
- Rust i64.overflowing_add_unsigned用法及代码示例
- Rust Box.downcast用法及代码示例
- Rust BTreeMap.last_key_value用法及代码示例
- Rust str.make_ascii_uppercase用法及代码示例
- Rust u128.checked_pow用法及代码示例
- Rust usize.wrapping_mul用法及代码示例
- Rust AtomicU8.fetch_sub用法及代码示例
- Rust PanicInfo.payload用法及代码示例
- Rust MaybeUninit.assume_init_mut用法及代码示例
- Rust String.try_reserve用法及代码示例
- Rust Mutex.new用法及代码示例
- Rust f32.exp用法及代码示例
- Rust Result.unwrap_or_else用法及代码示例
- Rust slice.sort_unstable_by_key用法及代码示例
- Rust Formatter.precision用法及代码示例
- Rust i128.log2用法及代码示例
- Rust OsStr.to_ascii_uppercase用法及代码示例
- Rust f32.hypot用法及代码示例
- Rust RefCell.try_borrow_unguarded用法及代码示例
注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 Function core::mem::variant_count。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。