@@ -15,31 +15,28 @@ pub const fn largest_max_leb128_len() -> usize {
15
15
macro_rules! impl_write_unsigned_leb128 {
16
16
( $fn_name: ident, $int_ty: ty) => {
17
17
#[ inline]
18
- pub fn $fn_name(
19
- out: & mut [ :: std:: mem:: MaybeUninit <u8 >; max_leb128_len:: <$int_ty>( ) ] ,
20
- mut value: $int_ty,
21
- ) -> & [ u8 ] {
18
+ pub fn $fn_name( out: & mut [ u8 ; max_leb128_len:: <$int_ty>( ) ] , mut value: $int_ty) -> usize {
22
19
let mut i = 0 ;
23
20
24
21
loop {
25
22
if value < 0x80 {
26
23
unsafe {
27
- * out. get_unchecked_mut( i) . as_mut_ptr ( ) = value as u8 ;
24
+ * out. get_unchecked_mut( i) = value as u8 ;
28
25
}
29
26
30
27
i += 1 ;
31
28
break ;
32
29
} else {
33
30
unsafe {
34
- * out. get_unchecked_mut( i) . as_mut_ptr ( ) = ( ( value & 0x7f ) | 0x80 ) as u8 ;
31
+ * out. get_unchecked_mut( i) = ( ( value & 0x7f ) | 0x80 ) as u8 ;
35
32
}
36
33
37
34
value >>= 7 ;
38
35
i += 1 ;
39
36
}
40
37
}
41
38
42
- unsafe { :: std :: mem :: MaybeUninit :: slice_assume_init_ref ( & out . get_unchecked ( ..i ) ) }
39
+ i
43
40
}
44
41
} ;
45
42
}
@@ -87,10 +84,7 @@ impl_read_unsigned_leb128!(read_usize_leb128, usize);
87
84
macro_rules! impl_write_signed_leb128 {
88
85
( $fn_name: ident, $int_ty: ty) => {
89
86
#[ inline]
90
- pub fn $fn_name(
91
- out: & mut [ :: std:: mem:: MaybeUninit <u8 >; max_leb128_len:: <$int_ty>( ) ] ,
92
- mut value: $int_ty,
93
- ) -> & [ u8 ] {
87
+ pub fn $fn_name( out: & mut [ u8 ; max_leb128_len:: <$int_ty>( ) ] , mut value: $int_ty) -> usize {
94
88
let mut i = 0 ;
95
89
96
90
loop {
@@ -104,7 +98,7 @@ macro_rules! impl_write_signed_leb128 {
104
98
}
105
99
106
100
unsafe {
107
- * out. get_unchecked_mut( i) . as_mut_ptr ( ) = byte;
101
+ * out. get_unchecked_mut( i) = byte;
108
102
}
109
103
110
104
i += 1 ;
@@ -114,7 +108,7 @@ macro_rules! impl_write_signed_leb128 {
114
108
}
115
109
}
116
110
117
- unsafe { :: std :: mem :: MaybeUninit :: slice_assume_init_ref ( & out . get_unchecked ( ..i ) ) }
111
+ i
118
112
}
119
113
} ;
120
114
}
0 commit comments