• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Annotated Flatbuffer Binary
2//
3// Schema file: tests/64bit/test_64bit.fbs
4// Binary file: tests/64bit/test_64bit.bin
5
6header:
7  +0x00 | 1C 00 00 00             | UOffset32  | 0x0000001C (28) Loc: 0x1C          | offset to root table `RootTable`
8
9padding:
10  +0x04 | 00 00 00 00             | uint8_t[4] | ....                               | padding
11
12vtable (RootTable):
13  +0x08 | 14 00                   | uint16_t   | 0x0014 (20)                        | size of this vtable
14  +0x0A | 34 00                   | uint16_t   | 0x0034 (52)                        | size of referring table
15  +0x0C | 04 00                   | VOffset16  | 0x0004 (4)                         | offset to field `far_vector` (id: 0)
16  +0x0E | 10 00                   | VOffset16  | 0x0010 (16)                        | offset to field `a` (id: 1)
17  +0x10 | 14 00                   | VOffset16  | 0x0014 (20)                        | offset to field `far_string` (id: 2)
18  +0x12 | 24 00                   | VOffset16  | 0x0024 (36)                        | offset to field `big_vector` (id: 3)
19  +0x14 | 20 00                   | VOffset16  | 0x0020 (32)                        | offset to field `near_string` (id: 4)
20  +0x16 | 00 00                   | VOffset16  | 0x0000 (0)                         | offset to field `nested_root` (id: 5) <null> (Vector64)
21  +0x18 | 00 00                   | VOffset16  | 0x0000 (0)                         | offset to field `far_struct_vector` (id: 6) <null> (Vector)
22  +0x1A | 2C 00                   | VOffset16  | 0x002C (44)                        | offset to field `big_struct_vector` (id: 7)
23
24root_table (RootTable):
25  +0x1C | 14 00 00 00             | SOffset32  | 0x00000014 (20) Loc: 0x08          | offset to vtable
26  +0x20 | D0 00 00 00 00 00 00 00 | UOffset64  | 0x00000000000000D0 (208) Loc: 0xF0 | offset to field `far_vector` (vector)
27  +0x28 | 00 00 00 00             | uint8_t[4] | ....                               | padding
28  +0x2C | D2 04 00 00             | uint32_t   | 0x000004D2 (1234)                  | table field `a` (Int)
29  +0x30 | 8C 00 00 00 00 00 00 00 | UOffset64  | 0x000000000000008C (140) Loc: 0xBC | offset to field `far_string` (string)
30  +0x38 | 00 00 00 00             | uint8_t[4] | ....                               | padding
31  +0x3C | 40 00 00 00             | UOffset32  | 0x00000040 (64) Loc: 0x7C          | offset to field `near_string` (string)
32  +0x40 | 70 00 00 00 00 00 00 00 | UOffset64  | 0x0000000000000070 (112) Loc: 0xB0 | offset to field `big_vector` (vector64)
33  +0x48 | 08 00 00 00 00 00 00 00 | UOffset64  | 0x0000000000000008 (8) Loc: 0x50   | offset to field `big_struct_vector` (vector64)
34
35vector64 (RootTable.big_struct_vector):
36  +0x50 | 02 00 00 00 00 00 00 00 | uint64_t   | 0x0000000000000002 (2)             | length of vector (# items)
37  +0x58 | 0C 00 00 00             | uint32_t   | 0x0000000C (12)                    | struct field `[0].a` of 'LeafStruct' (Int)
38  <4 regions omitted>
39  +0x70 | 33 33 33 33 33 33 22 40 | double     | 0x4022333333333333 (9.1)           | struct field `[1].b` of 'LeafStruct' (Double)
40
41padding:
42  +0x78 | 00 00 00 00             | uint8_t[4] | ....                               | padding
43
44string (RootTable.near_string):
45  +0x7C | 2F 00 00 00             | uint32_t   | 0x0000002F (47)                    | length of string
46  +0x80 | 74 68 69 73 20 69 73 20 | char[47]   | this is                            | string literal
47  +0x88 | 61 20 6E 65 61 72 20 73 |            | a near s
48  +0x90 | 74 72 69 6E 67 20 77 68 |            | tring wh
49  +0x98 | 69 63 68 20 68 61 73 20 |            | ich has
50  +0xA0 | 61 20 33 32 2D 62 69 74 |            | a 32-bit
51  +0xA8 | 20 6F 66 66 73 65 74    |            |  offset
52  +0xAF | 00                      | char       | 0x00 (0)                           | string terminator
53
54vector64 (RootTable.big_vector):
55  +0xB0 | 04 00 00 00 00 00 00 00 | uint64_t   | 0x0000000000000004 (4)             | length of vector (# items)
56  +0xB8 | 05                      | uint8_t    | 0x05 (5)                           | value[0]
57  <2 regions omitted>
58  +0xBB | 08                      | uint8_t    | 0x08 (8)                           | value[3]
59
60string (RootTable.far_string):
61  +0xBC | 2E 00 00 00             | uint32_t   | 0x0000002E (46)                    | length of string
62  +0xC0 | 74 68 69 73 20 69 73 20 | char[46]   | this is                            | string literal
63  +0xC8 | 61 20 66 61 72 20 73 74 |            | a far st
64  +0xD0 | 72 69 6E 67 20 77 68 69 |            | ring whi
65  +0xD8 | 63 68 20 68 61 73 20 61 |            | ch has a
66  +0xE0 | 20 36 34 2D 62 69 74 20 |            |  64-bit
67  +0xE8 | 6F 66 66 73 65 74       |            | offset
68  +0xEE | 00                      | char       | 0x00 (0)                           | string terminator
69
70vector (RootTable.far_vector):
71  +0xF0 | 03 00 00 00             | uint32_t   | 0x00000003 (3)                     | length of vector (# items)
72  +0xF4 | 01                      | uint8_t    | 0x01 (1)                           | value[0]
73  +0xF5 | 02                      | uint8_t    | 0x02 (2)                           | value[1]
74  +0xF6 | 03                      | uint8_t    | 0x03 (3)                           | value[2]
75