==> tests/constants.c <==1/* Every constant of @ajax/mesh-abi-view-doom equals the Rust's (values printed by the Rust itself), and the
2 * Rust const asserts that need a function call hold. Generated from alpha-rust-mesh. */
3#include "mesh/abi/view_doom.h"
4#include "mesh/check.h"
5
6#include <stdint.h>
7#include <string.h>
8
9int main(void) {
10 CHECK_U(MESH_DOOM_WIDTH, UINT64_C(128));
11 CHECK_U(MESH_DOOM_D_POS_X, UINT64_C(0));
12 CHECK_U(MESH_DOOM_D_POS_Y, UINT64_C(4));
13 CHECK_U(MESH_DOOM_D_DIR_X, UINT64_C(8));
14 CHECK_U(MESH_DOOM_D_DIR_Y, UINT64_C(12));
15 CHECK_U(MESH_DOOM_D_PLANE_X, UINT64_C(16));
16 CHECK_U(MESH_DOOM_D_PLANE_Y, UINT64_C(20));
17 CHECK_U(MESH_DOOM_D_ROWS, UINT64_C(24));
18 CHECK_U(MESH_DOOM_D_MAX_STEPS, UINT64_C(28));
19 CHECK_U(MESH_DOOM_D_FRAME, UINT64_C(32));
20 CHECK_U(MESH_DOOM_D_POSE_T, UINT64_C(36));
21 CHECK_U(MESH_DOOM_D_KEYS, UINT64_C(40));
22 CHECK_U(MESH_DOOM_D_MAP, UINT64_C(256));
23 CHECK_U(MESH_DOOM_D_HEIGHT, UINT64_C(4096));
24 CHECK_U(MESH_DOOM_D_KIND, UINT64_C(5120));
25 CHECK_U(MESH_DOOM_D_SIDE, UINT64_C(6144));
26 CHECK_U(MESH_DOOM_D_DIST, UINT64_C(7168));
27 CHECK_U(MESH_DOOM_PLACE_STATE_LEN, 3);
28 CHECK_U(MESH_DOOM_PLACE_STATE[0].off, UINT64_C(0));
29 CHECK_U(MESH_DOOM_PLACE_STATE[0].len, UINT64_C(36));
30 CHECK_U(MESH_DOOM_PLACE_STATE[1].off, UINT64_C(40));
31 CHECK_U(MESH_DOOM_PLACE_STATE[1].len, UINT64_C(4));
32 CHECK_U(MESH_DOOM_PLACE_STATE[2].off, UINT64_C(256));
33 CHECK_U(MESH_DOOM_PLACE_STATE[2].len, UINT64_C(1024));
34 CHECK_U(MESH_DOOM_PLACE_OUT_LEN, 4);
35 CHECK_U(MESH_DOOM_PLACE_OUT[0].off, UINT64_C(4096));
36 CHECK_U(MESH_DOOM_PLACE_OUT[0].len, UINT64_C(512));
37 CHECK_U(MESH_DOOM_PLACE_OUT[1].off, UINT64_C(5120));
38 CHECK_U(MESH_DOOM_PLACE_OUT[1].len, UINT64_C(512));
39 CHECK_U(MESH_DOOM_PLACE_OUT[2].off, UINT64_C(6144));
40 CHECK_U(MESH_DOOM_PLACE_OUT[2].len, UINT64_C(512));
41 CHECK_U(MESH_DOOM_PLACE_OUT[3].off, UINT64_C(7168));
42 CHECK_U(MESH_DOOM_PLACE_OUT[3].len, UINT64_C(512));
43 CHECK_U(MESH_DOOM_OUT_BYTES, UINT64_C(2048));
44 CHECK_U(MESH_DOOM_D_SHOW, UINT64_C(8192));
45 CHECK_U(MESH_DOOM_SHOW_HEIGHT, UINT64_C(0));
46 CHECK_U(MESH_DOOM_SHOW_KIND, UINT64_C(512));
47 CHECK_U(MESH_DOOM_SHOW_SIDE, UINT64_C(1024));
48 CHECK_U(MESH_DOOM_SHOW_DIST, UINT64_C(1536));
49 CHECK_U(MESH_DOOM_VIEW_BYTES, UINT64_C(16384));
50 CHECK_U(MESH_DOOM_SNAP_BYTES, UINT64_C(12544));
51 CHECK_U(MESH_DOOM_INPUT_BYTES, UINT64_C(64));
52 CHECK_F32_BITS(MESH_DOOM_ROWS, 0x42400000u);
53 CHECK_U(MESH_DOOM_MAX_STEPS, UINT64_C(64));
54 CHECK_U(MESH_DOOM_POSE_WAIT_NS, UINT64_C(100000000));
55 CHECK_S(MESH_DOOM_KEYS, "wsadqe");
56 CHECK_F32_BITS(MESH_DOOM_MOVE, 0x3e800000u);
57 CHECK_F32_BITS(MESH_DOOM_TURN_COS, 0x3f7c1c5cu);
58 CHECK_F32_BITS(MESH_DOOM_TURN_SIN, 0x3e31d0d4u);
59 CHECK_F32_BITS(MESH_DOOM_PLANE, 0x3f28f5c3u);
60 CHECK_F32_BITS(MESH_DOOM_RADIUS, 0x3e4ccccdu);
61 CHECK_U(MESH_DOOM_START_LEN, 6);
62 CHECK_F32_BITS(MESH_DOOM_START[0], 0x41080000u);
63 CHECK_F32_BITS(MESH_DOOM_START[1], 0x41280000u);
64 CHECK_F32_BITS(MESH_DOOM_START[2], 0x00000000u);
65 CHECK_F32_BITS(MESH_DOOM_START[3], 0xbf800000u);
66 CHECK_F32_BITS(MESH_DOOM_START[4], 0x3f28f5c3u);
67 CHECK_F32_BITS(MESH_DOOM_START[5], 0x00000000u);
68 CHECK_U(MESH_DOOM_MAP_LEN, 16);
69 CHECK(memcmp(MESH_DOOM_MAP[0], "1111111111111111", 16) == 0);
70 CHECK(memcmp(MESH_DOOM_MAP[1], "1......2.......1", 16) == 0);
71 CHECK(memcmp(MESH_DOOM_MAP[2], "1......2..3.3..1", 16) == 0);
72 CHECK(memcmp(MESH_DOOM_MAP[3], "1..44..2.......1", 16) == 0);
73 CHECK(memcmp(MESH_DOOM_MAP[4], "1..44.....3.3..1", 16) == 0);
74 CHECK(memcmp(MESH_DOOM_MAP[5], "1......2.......1", 16) == 0);
75 CHECK(memcmp(MESH_DOOM_MAP[6], "12222.2222..2221", 16) == 0);
76 CHECK(memcmp(MESH_DOOM_MAP[7], "1..............1", 16) == 0);
77 CHECK(memcmp(MESH_DOOM_MAP[8], "1.5.5.....6....1", 16) == 0);
78 CHECK(memcmp(MESH_DOOM_MAP[9], "1........666...1", 16) == 0);
79 CHECK(memcmp(MESH_DOOM_MAP[10], "1.5.5.....6....1", 16) == 0);
80 CHECK(memcmp(MESH_DOOM_MAP[11], "1..............1", 16) == 0);
81 CHECK(memcmp(MESH_DOOM_MAP[12], "1777.7777..7..71", 16) == 0);
82 CHECK(memcmp(MESH_DOOM_MAP[13], "1...........7..1", 16) == 0);
83 CHECK(memcmp(MESH_DOOM_MAP[14], "1...7...7......1", 16) == 0);
84 CHECK(memcmp(MESH_DOOM_MAP[15], "1111111111111111", 16) == 0);
85 CHECK_U(MESH_DOOM_C_FRAMES, UINT64_C(0));
86 CHECK_U(MESH_DOOM_C_KEYS, UINT64_C(1));
87 CHECK_U(MESH_DOOM_C_STALLS, UINT64_C(2));
88 CHECK_U(MESH_DOOM_C_FOLLOWS, UINT64_C(3));
89 CHECK(mesh_doom_map_cell(0, 0) == 1); /* doom::map_cell(0, 0) == 1 */
90 CHECK(mesh_doom_map_cell(1, 1) == 0); /* doom::map_cell(1, 1) == 0 */
91 return mesh_check_done();
92}