1 extern crate build_const;
2
3 include!("src/util.rs");
4
5 #[allow(non_snake_case)]
create_constants()6 fn create_constants() {
7 let mut crc16 = build_const::ConstWriter::for_build("crc16_constants")
8 .unwrap()
9 .finish_dependencies();
10 let X25: u16 = 0x8408;
11 crc16.add_value("X25", "u16", X25);
12 crc16.add_array("X25_TABLE", "u16", &make_table_crc16(X25));
13
14 let USB: u16 = 0xa001;
15 crc16.add_value("USB", "u16", USB);
16 crc16.add_array("USB_TABLE", "u16", &make_table_crc16(USB));
17
18 crc16.finish();
19
20 let mut crc32 = build_const::ConstWriter::for_build("crc32_constants")
21 .unwrap()
22 .finish_dependencies();
23 let CASTAGNOLI: u32 = 0x82f63b78;
24 crc32.add_value("CASTAGNOLI", "u32", CASTAGNOLI);
25 crc32.add_array("CASTAGNOLI_TABLE", "u32", &make_table_crc32(CASTAGNOLI));
26
27 let IEEE: u32 = 0xedb88320;
28 crc32.add_value("IEEE", "u32", IEEE);
29 crc32.add_array("IEEE_TABLE", "u32", &make_table_crc32(IEEE));
30
31 let KOOPMAN: u32 = 0xeb31d82e;
32 crc32.add_value("KOOPMAN", "u32", KOOPMAN);
33 crc32.add_array("KOOPMAN_TABLE", "u32", &make_table_crc32(KOOPMAN));
34
35 crc32.finish();
36
37 let mut crc64 = build_const::ConstWriter::for_build("crc64_constants")
38 .unwrap()
39 .finish_dependencies();
40
41 let ECMA: u64 = 0xc96c5795d7870f42;
42 crc64.add_value("ECMA", "u64", ECMA);
43 crc64.add_array("ECMA_TABLE", "u64", &make_table_crc64(ECMA));
44
45 let ISO: u64 = 0xd800000000000000;
46 crc64.add_value("ISO", "u64", ISO);
47 crc64.add_array("ISO_TABLE", "u64", &make_table_crc64(ISO));
48
49 crc64.finish();
50 }
51
main()52 fn main() {
53 create_constants();
54 }
55