Lines Matching defs:NonZeroUsize

12 use core::{mem, num::NonZeroUsize};
35 pub(crate) align: NonZeroUsize,
65 pub(crate) struct RoundingAlignAndPhase(NonZeroUsize);
77 pub(crate) const fn new(align: NonZeroUsize, phase: usize) -> Self {
92 match NonZeroUsize::new(encoded) {
104 pub(crate) const fn components(self) -> (NonZeroUsize, usize) {
122 let align = match NonZeroUsize::new(align) {
138 pub(crate) const fn align(self) -> NonZeroUsize {
261 #[kani::proof_for_contract(TrailingSliceLayout::<NonZeroUsize>::max_trailing_bytes)]
264 kani::any::<TrailingSliceLayout<NonZeroUsize>>().max_trailing_bytes(kani::any());
724 /// `NonZeroUsize`. If `elem_size` is 0, returns `None`.
741 const fn try_to_nonzero_elem_size(&self) -> Option<SizeInfo<NonZeroUsize>> {
757 if let Some(elem_size) = NonZeroUsize::new(elem_size) {
789 const fn max_elems_for_bytes(bytes: usize, elem_size: NonZeroUsize) -> (usize, usize) {
824 const MIN_ALIGN: NonZeroUsize = match NonZeroUsize::new(1) {
834 pub(crate) const THEORETICAL_MAX_ALIGN: NonZeroUsize =
835 match NonZeroUsize::new(1 << (POINTER_WIDTH_BITS - 1)) {
848 pub(crate) const CURRENT_MAX_ALIGN: NonZeroUsize = match NonZeroUsize::new(1 << 29) {
855 pub(crate) const CURRENT_MAX_ALIGN: NonZeroUsize = match NonZeroUsize::new(1 << 15) {
919 pub const fn new_zst(repr_align: Option<NonZeroUsize>) -> DstLayout {
973 align: match NonZeroUsize::new(mem::align_of::<T>()) {
1043 let align = match NonZeroUsize::new(mem::align_of::<T>()) {
1099 repr_align: Option<NonZeroUsize>,
1100 repr_packed: Option<NonZeroUsize>,
1176 pub const fn extend(self, field: DstLayout, repr_packed: Option<NonZeroUsize>) -> Self {
2089 let dst_elem_size = if let Some(e) = NonZeroUsize::new(dst.elem_size) {
2355 leading: &[(NonZeroUsize, NonZeroUsize, usize)],
2357 trailing_alignment: NonZeroUsize,
2432 leading: &[(NonZeroUsize, NonZeroUsize, usize)],
2434 trailing_alignment: NonZeroUsize,
2461 let nz = |n| NonZeroUsize::new(n).unwrap();
2512 leading: &[(NonZeroUsize, NonZeroUsize, usize)],
2514 trailing_alignment: NonZeroUsize,
2579 let nz = |n| NonZeroUsize::new(n).unwrap();
2669 const TEST_SIZE_ROUNDING_ALIGN_AND_PHASE_ALIGN: NonZeroUsize = match NonZeroUsize::new(8) {
2690 let align = NonZeroUsize::new(1usize << shift).unwrap();
2719 let align = NonZeroUsize::new(align).unwrap();
2755 let alignment = NonZeroUsize::new(1usize << exponent).unwrap();
2842 let alignment = NonZeroUsize::new(1usize << exponent).unwrap();
2910 .chain((0..=29).map(|p| NonZeroUsize::new(2usize.pow(p))));
2919 align: NonZeroUsize::new(align).unwrap(),
2969 let aligns = (0..29).map(|p| NonZeroUsize::new(2usize.pow(p)).unwrap());
3009 align: NonZeroUsize::new(align).unwrap(),
3033 for align in (0..29).map(|p| NonZeroUsize::new(2usize.pow(p)).unwrap()) {
3057 align: NonZeroUsize::new($unpadded_align).unwrap(),
3066 align: NonZeroUsize::new($padded_align).unwrap(),
3097 for align in (0..29).map(|p| NonZeroUsize::new(2usize.pow(p)).unwrap()) {
3138 align: NonZeroUsize::new(2).unwrap(),
3144 NonZeroUsize::new(4).unwrap(),
3153 align: NonZeroUsize::new(2).unwrap(),
3159 NonZeroUsize::new(4).unwrap(),
3172 align: NonZeroUsize::new(8).unwrap(),
3178 NonZeroUsize::new(4).unwrap(),
3187 align: NonZeroUsize::new(8).unwrap(),
3193 NonZeroUsize::new(8).unwrap(),
3213 NonZeroUsize::new(4).unwrap(),
3222 NonZeroUsize::new(2).unwrap(),
3265 let align = NonZeroUsize::new(align).unwrap();
3554 align: NonZeroUsize::new(2).unwrap(),
3560 NonZeroUsize::new(4).unwrap(),
3598 align: NonZeroUsize,
3988 fn round_up(bytes: usize, align: NonZeroUsize) -> Option<usize> {
4025 packed: Option<NonZeroUsize>,
4124 align: Option<NonZeroUsize>,
4125 packed: Option<NonZeroUsize>,
4149 fn any_layout_align() -> NonZeroUsize {
4159 NonZeroUsize::new(1usize << exponent).unwrap()
4295 let encoded = NonZeroUsize::new(encoded).unwrap();
4307 let align: NonZeroUsize = kani::any();
4321 let align = RoundingAlignAndPhase(NonZeroUsize::new(rounding_word).unwrap()).align();
4730 let packed: Option<NonZeroUsize> = kani::any();
4912 let packed: Option<NonZeroUsize> = kani::any();