pub unsafe extern "rust-intrinsic" fn ctlz<T>(x: T) -> T
Returns the number of leading unset bits (zeroes) in an integer type T
.
#![feature(core_intrinsics)] use std::intrinsics::ctlz; let x = 0b0001_1100_u8; let num_leading = unsafe { ctlz(x) }; assert_eq!(num_leading, 3);
An x
with value 0
will return the bit width of T
.
#![feature(core_intrinsics)] use std::intrinsics::ctlz; let x = 0u16; let num_leading = unsafe { ctlz(x) }; assert_eq!(num_leading, 16);
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/intrinsics/fn.ctlz.html