libpacket_core/types.rs
1// Copyright (c) 2015 Robert Clipsham <robert@octarineparrot.com>
2//
3// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
4// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
5// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
6// option. This file may not be copied, modified, or distributed
7// except according to those terms.
8
9//! Provides type aliases for various primitive integer types
10//!
11//! These types are aliased to the next largest of [`u8`, `u16`, `u32`, `u64`], and purely serve as
12//! hints for the `#[packet]` macro to enable the generation of the correct bit manipulations to
13//! get the value out of a packet.
14//!
15//! They should NOT be used outside of data types marked as `#[packet]`.
16//!
17//! All aliases for types larger than `u8` contain a `be` or `le` suffix. These specify whether the
18//! value is big or little endian, respectively. When using `set_*()` and `get_*()` methods, host
19//! endianness should be used - the methods will convert as appropriate.
20
21#![allow(non_camel_case_types)]
22
23// TODO signed equivalents?
24
25/// Represents an unsigned, 1-bit integer.
26pub type u1 = u8;
27
28/// Represents an unsigned, 2-bit integer.
29pub type u2 = u8;
30
31/// Represents an unsigned, 3-bit integer.
32pub type u3 = u8;
33
34/// Represents an unsigned, 4-bit integer.
35pub type u4 = u8;
36
37/// Represents an unsigned, 5-bit integer.
38pub type u5 = u8;
39
40/// Represents an unsigned, 6-bit integer.
41pub type u6 = u8;
42
43/// Represents an unsigned, 7-bit integer.
44pub type u7 = u8;
45
46/// Represents an unsigned 9-bit integer. libpnet #[packet]-derived structs using this type will
47/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
48pub type u9be = u16;
49
50/// Represents an unsigned 10-bit integer. libpnet #[packet]-derived structs using this type will
51/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
52pub type u10be = u16;
53
54/// Represents an unsigned 11-bit integer. libpnet #[packet]-derived structs using this type will
55/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
56pub type u11be = u16;
57
58/// Represents an unsigned 12-bit integer. libpnet #[packet]-derived structs using this type will
59/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
60pub type u12be = u16;
61
62/// Represents an unsigned 13-bit integer. libpnet #[packet]-derived structs using this type will
63/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
64pub type u13be = u16;
65
66/// Represents an unsigned 14-bit integer. libpnet #[packet]-derived structs using this type will
67/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
68pub type u14be = u16;
69
70/// Represents an unsigned 15-bit integer. libpnet #[packet]-derived structs using this type will
71/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
72pub type u15be = u16;
73
74/// Represents an unsigned 16-bit integer. libpnet #[packet]-derived structs using this type will
75/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
76pub type u16be = u16;
77
78/// Represents an unsigned 17-bit integer. libpnet #[packet]-derived structs using this type will
79/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
80pub type u17be = u32;
81
82/// Represents an unsigned 18-bit integer. libpnet #[packet]-derived structs using this type will
83/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
84pub type u18be = u32;
85
86/// Represents an unsigned 19-bit integer. libpnet #[packet]-derived structs using this type will
87/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
88pub type u19be = u32;
89
90/// Represents an unsigned 20-bit integer. libpnet #[packet]-derived structs using this type will
91/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
92pub type u20be = u32;
93
94/// Represents an unsigned 21-bit integer. libpnet #[packet]-derived structs using this type will
95/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
96pub type u21be = u32;
97
98/// Represents an unsigned 22-bit integer. libpnet #[packet]-derived structs using this type will
99/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
100pub type u22be = u32;
101
102/// Represents an unsigned 23-bit integer. libpnet #[packet]-derived structs using this type will
103/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
104pub type u23be = u32;
105
106/// Represents an unsigned 24-bit integer. libpnet #[packet]-derived structs using this type will
107/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
108pub type u24be = u32;
109
110/// Represents an unsigned 25-bit integer. libpnet #[packet]-derived structs using this type will
111/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
112pub type u25be = u32;
113
114/// Represents an unsigned 26-bit integer. libpnet #[packet]-derived structs using this type will
115/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
116pub type u26be = u32;
117
118/// Represents an unsigned 27-bit integer. libpnet #[packet]-derived structs using this type will
119/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
120pub type u27be = u32;
121
122/// Represents an unsigned 28-bit integer. libpnet #[packet]-derived structs using this type will
123/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
124pub type u28be = u32;
125
126/// Represents an unsigned 29-bit integer. libpnet #[packet]-derived structs using this type will
127/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
128pub type u29be = u32;
129
130/// Represents an unsigned 30-bit integer. libpnet #[packet]-derived structs using this type will
131/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
132pub type u30be = u32;
133
134/// Represents an unsigned 31-bit integer. libpnet #[packet]-derived structs using this type will
135/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
136pub type u31be = u32;
137
138/// Represents an unsigned 32-bit integer. libpnet #[packet]-derived structs using this type will
139/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
140pub type u32be = u32;
141
142/// Represents an unsigned 33-bit integer. libpnet #[packet]-derived structs using this type will
143/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
144pub type u33be = u64;
145
146/// Represents an unsigned 34-bit integer. libpnet #[packet]-derived structs using this type will
147/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
148pub type u34be = u64;
149
150/// Represents an unsigned 35-bit integer. libpnet #[packet]-derived structs using this type will
151/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
152pub type u35be = u64;
153
154/// Represents an unsigned 36-bit integer. libpnet #[packet]-derived structs using this type will
155/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
156pub type u36be = u64;
157
158/// Represents an unsigned 37-bit integer. libpnet #[packet]-derived structs using this type will
159/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
160pub type u37be = u64;
161
162/// Represents an unsigned 38-bit integer. libpnet #[packet]-derived structs using this type will
163/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
164pub type u38be = u64;
165
166/// Represents an unsigned 39-bit integer. libpnet #[packet]-derived structs using this type will
167/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
168pub type u39be = u64;
169
170/// Represents an unsigned 40-bit integer. libpnet #[packet]-derived structs using this type will
171/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
172pub type u40be = u64;
173
174/// Represents an unsigned 41-bit integer. libpnet #[packet]-derived structs using this type will
175/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
176pub type u41be = u64;
177
178/// Represents an unsigned 42-bit integer. libpnet #[packet]-derived structs using this type will
179/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
180pub type u42be = u64;
181
182/// Represents an unsigned 43-bit integer. libpnet #[packet]-derived structs using this type will
183/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
184pub type u43be = u64;
185
186/// Represents an unsigned 44-bit integer. libpnet #[packet]-derived structs using this type will
187/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
188pub type u44be = u64;
189
190/// Represents an unsigned 45-bit integer. libpnet #[packet]-derived structs using this type will
191/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
192pub type u45be = u64;
193
194/// Represents an unsigned 46-bit integer. libpnet #[packet]-derived structs using this type will
195/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
196pub type u46be = u64;
197
198/// Represents an unsigned 47-bit integer. libpnet #[packet]-derived structs using this type will
199/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
200pub type u47be = u64;
201
202/// Represents an unsigned 48-bit integer. libpnet #[packet]-derived structs using this type will
203/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
204pub type u48be = u64;
205
206/// Represents an unsigned 49-bit integer. libpnet #[packet]-derived structs using this type will
207/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
208pub type u49be = u64;
209
210/// Represents an unsigned 50-bit integer. libpnet #[packet]-derived structs using this type will
211/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
212pub type u50be = u64;
213
214/// Represents an unsigned 51-bit integer. libpnet #[packet]-derived structs using this type will
215/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
216pub type u51be = u64;
217
218/// Represents an unsigned 52-bit integer. libpnet #[packet]-derived structs using this type will
219/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
220pub type u52be = u64;
221
222/// Represents an unsigned 53-bit integer. libpnet #[packet]-derived structs using this type will
223/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
224pub type u53be = u64;
225
226/// Represents an unsigned 54-bit integer. libpnet #[packet]-derived structs using this type will
227/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
228pub type u54be = u64;
229
230/// Represents an unsigned 55-bit integer. libpnet #[packet]-derived structs using this type will
231/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
232pub type u55be = u64;
233
234/// Represents an unsigned 56-bit integer. libpnet #[packet]-derived structs using this type will
235/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
236pub type u56be = u64;
237
238/// Represents an unsigned 57-bit integer. libpnet #[packet]-derived structs using this type will
239/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
240pub type u57be = u64;
241
242/// Represents an unsigned 58-bit integer. libpnet #[packet]-derived structs using this type will
243/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
244pub type u58be = u64;
245
246/// Represents an unsigned 59-bit integer. libpnet #[packet]-derived structs using this type will
247/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
248pub type u59be = u64;
249
250/// Represents an unsigned 60-bit integer. libpnet #[packet]-derived structs using this type will
251/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
252pub type u60be = u64;
253
254/// Represents an unsigned 61-bit integer. libpnet #[packet]-derived structs using this type will
255/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
256pub type u61be = u64;
257
258/// Represents an unsigned 62-bit integer. libpnet #[packet]-derived structs using this type will
259/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
260pub type u62be = u64;
261
262/// Represents an unsigned 63-bit integer. libpnet #[packet]-derived structs using this type will
263/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
264pub type u63be = u64;
265
266/// Represents an unsigned 64-bit integer. libpnet #[packet]-derived structs using this type will
267/// hold it in memory as big-endian, but accessors/mutators will return/take host-order values.
268pub type u64be = u64;
269
270/// Represents an unsigned 9-bit integer. libpnet #[packet]-derived structs using this type will
271/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
272pub type u9le = u16;
273
274/// Represents an unsigned 10-bit integer. libpnet #[packet]-derived structs using this type will
275/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
276pub type u10le = u16;
277
278/// Represents an unsigned 11-bit integer. libpnet #[packet]-derived structs using this type will
279/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
280pub type u11le = u16;
281
282/// Represents an unsigned 12-bit integer. libpnet #[packet]-derived structs using this type will
283/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
284pub type u12le = u16;
285
286/// Represents an unsigned 13-bit integer. libpnet #[packet]-derived structs using this type will
287/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
288pub type u13le = u16;
289
290/// Represents an unsigned 14-bit integer. libpnet #[packet]-derived structs using this type will
291/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
292pub type u14le = u16;
293
294/// Represents an unsigned 15-bit integer. libpnet #[packet]-derived structs using this type will
295/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
296pub type u15le = u16;
297
298/// Represents an unsigned 16-bit integer. libpnet #[packet]-derived structs using this type will
299/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
300pub type u16le = u16;
301
302/// Represents an unsigned 17-bit integer. libpnet #[packet]-derived structs using this type will
303/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
304pub type u17le = u32;
305
306/// Represents an unsigned 18-bit integer. libpnet #[packet]-derived structs using this type will
307/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
308pub type u18le = u32;
309
310/// Represents an unsigned 19-bit integer. libpnet #[packet]-derived structs using this type will
311/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
312pub type u19le = u32;
313
314/// Represents an unsigned 20-bit integer. libpnet #[packet]-derived structs using this type will
315/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
316pub type u20le = u32;
317
318/// Represents an unsigned 21-bit integer. libpnet #[packet]-derived structs using this type will
319/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
320pub type u21le = u32;
321
322/// Represents an unsigned 22-bit integer. libpnet #[packet]-derived structs using this type will
323/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
324pub type u22le = u32;
325
326/// Represents an unsigned 23-bit integer. libpnet #[packet]-derived structs using this type will
327/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
328pub type u23le = u32;
329
330/// Represents an unsigned 24-bit integer. libpnet #[packet]-derived structs using this type will
331/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
332pub type u24le = u32;
333
334/// Represents an unsigned 25-bit integer. libpnet #[packet]-derived structs using this type will
335/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
336pub type u25le = u32;
337
338/// Represents an unsigned 26-bit integer. libpnet #[packet]-derived structs using this type will
339/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
340pub type u26le = u32;
341
342/// Represents an unsigned 27-bit integer. libpnet #[packet]-derived structs using this type will
343/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
344pub type u27le = u32;
345
346/// Represents an unsigned 28-bit integer. libpnet #[packet]-derived structs using this type will
347/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
348pub type u28le = u32;
349
350/// Represents an unsigned 29-bit integer. libpnet #[packet]-derived structs using this type will
351/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
352pub type u29le = u32;
353
354/// Represents an unsigned 30-bit integer. libpnet #[packet]-derived structs using this type will
355/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
356pub type u30le = u32;
357
358/// Represents an unsigned 31-bit integer. libpnet #[packet]-derived structs using this type will
359/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
360pub type u31le = u32;
361
362/// Represents an unsigned 32-bit integer. libpnet #[packet]-derived structs using this type will
363/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
364pub type u32le = u32;
365
366/// Represents an unsigned 33-bit integer. libpnet #[packet]-derived structs using this type will
367/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
368pub type u33le = u64;
369
370/// Represents an unsigned 34-bit integer. libpnet #[packet]-derived structs using this type will
371/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
372pub type u34le = u64;
373
374/// Represents an unsigned 35-bit integer. libpnet #[packet]-derived structs using this type will
375/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
376pub type u35le = u64;
377
378/// Represents an unsigned 36-bit integer. libpnet #[packet]-derived structs using this type will
379/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
380pub type u36le = u64;
381
382/// Represents an unsigned 37-bit integer. libpnet #[packet]-derived structs using this type will
383/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
384pub type u37le = u64;
385
386/// Represents an unsigned 38-bit integer. libpnet #[packet]-derived structs using this type will
387/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
388pub type u38le = u64;
389
390/// Represents an unsigned 39-bit integer. libpnet #[packet]-derived structs using this type will
391/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
392pub type u39le = u64;
393
394/// Represents an unsigned 40-bit integer. libpnet #[packet]-derived structs using this type will
395/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
396pub type u40le = u64;
397
398/// Represents an unsigned 41-bit integer. libpnet #[packet]-derived structs using this type will
399/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
400pub type u41le = u64;
401
402/// Represents an unsigned 42-bit integer. libpnet #[packet]-derived structs using this type will
403/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
404pub type u42le = u64;
405
406/// Represents an unsigned 43-bit integer. libpnet #[packet]-derived structs using this type will
407/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
408pub type u43le = u64;
409
410/// Represents an unsigned 44-bit integer. libpnet #[packet]-derived structs using this type will
411/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
412pub type u44le = u64;
413
414/// Represents an unsigned 45-bit integer. libpnet #[packet]-derived structs using this type will
415/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
416pub type u45le = u64;
417
418/// Represents an unsigned 46-bit integer. libpnet #[packet]-derived structs using this type will
419/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
420pub type u46le = u64;
421
422/// Represents an unsigned 47-bit integer. libpnet #[packet]-derived structs using this type will
423/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
424pub type u47le = u64;
425
426/// Represents an unsigned 48-bit integer. libpnet #[packet]-derived structs using this type will
427/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
428pub type u48le = u64;
429
430/// Represents an unsigned 49-bit integer. libpnet #[packet]-derived structs using this type will
431/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
432pub type u49le = u64;
433
434/// Represents an unsigned 50-bit integer. libpnet #[packet]-derived structs using this type will
435/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
436pub type u50le = u64;
437
438/// Represents an unsigned 51-bit integer. libpnet #[packet]-derived structs using this type will
439/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
440pub type u51le = u64;
441
442/// Represents an unsigned 52-bit integer. libpnet #[packet]-derived structs using this type will
443/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
444pub type u52le = u64;
445
446/// Represents an unsigned 53-bit integer. libpnet #[packet]-derived structs using this type will
447/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
448pub type u53le = u64;
449
450/// Represents an unsigned 54-bit integer. libpnet #[packet]-derived structs using this type will
451/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
452pub type u54le = u64;
453
454/// Represents an unsigned 55-bit integer. libpnet #[packet]-derived structs using this type will
455/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
456pub type u55le = u64;
457
458/// Represents an unsigned 56-bit integer. libpnet #[packet]-derived structs using this type will
459/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
460pub type u56le = u64;
461
462/// Represents an unsigned 57-bit integer. libpnet #[packet]-derived structs using this type will
463/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
464pub type u57le = u64;
465
466/// Represents an unsigned 58-bit integer. libpnet #[packet]-derived structs using this type will
467/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
468pub type u58le = u64;
469
470/// Represents an unsigned 59-bit integer. libpnet #[packet]-derived structs using this type will
471/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
472pub type u59le = u64;
473
474/// Represents an unsigned 60-bit integer. libpnet #[packet]-derived structs using this type will
475/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
476pub type u60le = u64;
477
478/// Represents an unsigned 61-bit integer. libpnet #[packet]-derived structs using this type will
479/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
480pub type u61le = u64;
481
482/// Represents an unsigned 62-bit integer. libpnet #[packet]-derived structs using this type will
483/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
484pub type u62le = u64;
485
486/// Represents an unsigned 63-bit integer. libpnet #[packet]-derived structs using this type will
487/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
488pub type u63le = u64;
489
490/// Represents an unsigned 64-bit integer. libpnet #[packet]-derived structs using this type will
491/// hold it in memory as little-endian, but accessors/mutators will return/take host-order values.
492pub type u64le = u64;
493
494/// Represents an unsigned 9-bit integer in host endianness.
495pub type u9he = u16;
496
497/// Represents an unsigned 10-bit integer in host endianness.
498pub type u10he = u16;
499
500/// Represents an unsigned 11-bit integer in host endianness.
501pub type u11he = u16;
502
503/// Represents an unsigned 12-bit integer in host endianness.
504pub type u12he = u16;
505
506/// Represents an unsigned 13-bit integer in host endianness.
507pub type u13he = u16;
508
509/// Represents an unsigned 14-bit integer in host endianness.
510pub type u14he = u16;
511
512/// Represents an unsigned 15-bit integer in host endianness.
513pub type u15he = u16;
514
515/// Represents an unsigned 16-bit integer in host endianness.
516pub type u16he = u16;
517
518/// Represents an unsigned 17-bit integer in host endianness.
519pub type u17he = u32;
520
521/// Represents an unsigned 18-bit integer in host endianness.
522pub type u18he = u32;
523
524/// Represents an unsigned 19-bit integer in host endianness.
525pub type u19he = u32;
526
527/// Represents an unsigned 20-bit integer in host endianness.
528pub type u20he = u32;
529
530/// Represents an unsigned 21-bit integer in host endianness.
531pub type u21he = u32;
532
533/// Represents an unsigned 22-bit integer in host endianness.
534pub type u22he = u32;
535
536/// Represents an unsigned 23-bit integer in host endianness.
537pub type u23he = u32;
538
539/// Represents an unsigned 24-bit integer in host endianness.
540pub type u24he = u32;
541
542/// Represents an unsigned 25-bit integer in host endianness.
543pub type u25he = u32;
544
545/// Represents an unsigned 26-bit integer in host endianness.
546pub type u26he = u32;
547
548/// Represents an unsigned 27-bit integer in host endianness.
549pub type u27he = u32;
550
551/// Represents an unsigned 28-bit integer in host endianness.
552pub type u28he = u32;
553
554/// Represents an unsigned 29-bit integer in host endianness.
555pub type u29he = u32;
556
557/// Represents an unsigned 30-bit integer in host endianness.
558pub type u30he = u32;
559
560/// Represents an unsigned 31-bit integer in host endianness.
561pub type u31he = u32;
562
563/// Represents an unsigned 32-bit integer in host endianness.
564pub type u32he = u32;
565
566/// Represents an unsigned 33-bit integer in host endianness.
567pub type u33he = u64;
568
569/// Represents an unsigned 34-bit integer in host endianness.
570pub type u34he = u64;
571
572/// Represents an unsigned 35-bit integer in host endianness.
573pub type u35he = u64;
574
575/// Represents an unsigned 36-bit integer in host endianness.
576pub type u36he = u64;
577
578/// Represents an unsigned 37-bit integer in host endianness.
579pub type u37he = u64;
580
581/// Represents an unsigned 38-bit integer in host endianness.
582pub type u38he = u64;
583
584/// Represents an unsigned 39-bit integer in host endianness.
585pub type u39he = u64;
586
587/// Represents an unsigned 40-bit integer in host endianness.
588pub type u40he = u64;
589
590/// Represents an unsigned 41-bit integer in host endianness.
591pub type u41he = u64;
592
593/// Represents an unsigned 42-bit integer in host endianness.
594pub type u42he = u64;
595
596/// Represents an unsigned 43-bit integer in host endianness.
597pub type u43he = u64;
598
599/// Represents an unsigned 44-bit integer in host endianness.
600pub type u44he = u64;
601
602/// Represents an unsigned 45-bit integer in host endianness.
603pub type u45he = u64;
604
605/// Represents an unsigned 46-bit integer in host endianness.
606pub type u46he = u64;
607
608/// Represents an unsigned 47-bit integer in host endianness.
609pub type u47he = u64;
610
611/// Represents an unsigned 48-bit integer in host endianness.
612pub type u48he = u64;
613
614/// Represents an unsigned 49-bit integer in host endianness.
615pub type u49he = u64;
616
617/// Represents an unsigned 50-bit integer in host endianness.
618pub type u50he = u64;
619
620/// Represents an unsigned 51-bit integer in host endianness.
621pub type u51he = u64;
622
623/// Represents an unsigned 52-bit integer in host endianness.
624pub type u52he = u64;
625
626/// Represents an unsigned 53-bit integer in host endianness.
627pub type u53he = u64;
628
629/// Represents an unsigned 54-bit integer in host endianness.
630pub type u54he = u64;
631
632/// Represents an unsigned 55-bit integer in host endianness.
633pub type u55he = u64;
634
635/// Represents an unsigned 56-bit integer in host endianness.
636pub type u56he = u64;
637
638/// Represents an unsigned 57-bit integer in host endianness.
639pub type u57he = u64;
640
641/// Represents an unsigned 58-bit integer in host endianness.
642pub type u58he = u64;
643
644/// Represents an unsigned 59-bit integer in host endianness.
645pub type u59he = u64;
646
647/// Represents an unsigned 60-bit integer in host endianness.
648pub type u60he = u64;
649
650/// Represents an unsigned 61-bit integer in host endianness.
651pub type u61he = u64;
652
653/// Represents an unsigned 62-bit integer in host endianness.
654pub type u62he = u64;
655
656/// Represents an unsigned 63-bit integer in host endianness.
657pub type u63he = u64;
658
659/// Represents an unsigned 64-bit integer in host endianness.
660pub type u64he = u64;