404 - Not found
++ FlatBuffers has migrated their documentation system recently. + + Please file an issue indicating the broken link. + +
From ea25e8610b0f02527356f3035eada35aae125b33 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sat, 18 Apr 2026 00:09:31 +0000 Subject: [PATCH] Deployed ac7ef11 with MkDocs version: 1.6.1 --- .nojekyll | 0 404.html | 1410 ++++ CNAME | 1 + annotation/index.html | 1874 +++++ assets/flatbuffers_logo.svg | 318 + assets/images/favicon.png | Bin 0 -> 1870 bytes assets/javascripts/bundle.79ae519e.min.js | 16 + assets/javascripts/bundle.79ae519e.min.js.map | 7 + assets/javascripts/lunr/min/lunr.ar.min.js | 1 + assets/javascripts/lunr/min/lunr.da.min.js | 18 + assets/javascripts/lunr/min/lunr.de.min.js | 18 + assets/javascripts/lunr/min/lunr.du.min.js | 18 + assets/javascripts/lunr/min/lunr.el.min.js | 1 + assets/javascripts/lunr/min/lunr.es.min.js | 18 + assets/javascripts/lunr/min/lunr.fi.min.js | 18 + assets/javascripts/lunr/min/lunr.fr.min.js | 18 + assets/javascripts/lunr/min/lunr.he.min.js | 1 + assets/javascripts/lunr/min/lunr.hi.min.js | 1 + assets/javascripts/lunr/min/lunr.hu.min.js | 18 + assets/javascripts/lunr/min/lunr.hy.min.js | 1 + assets/javascripts/lunr/min/lunr.it.min.js | 18 + assets/javascripts/lunr/min/lunr.ja.min.js | 1 + assets/javascripts/lunr/min/lunr.jp.min.js | 1 + assets/javascripts/lunr/min/lunr.kn.min.js | 1 + assets/javascripts/lunr/min/lunr.ko.min.js | 1 + assets/javascripts/lunr/min/lunr.multi.min.js | 1 + assets/javascripts/lunr/min/lunr.nl.min.js | 18 + assets/javascripts/lunr/min/lunr.no.min.js | 18 + assets/javascripts/lunr/min/lunr.pt.min.js | 18 + assets/javascripts/lunr/min/lunr.ro.min.js | 18 + assets/javascripts/lunr/min/lunr.ru.min.js | 18 + assets/javascripts/lunr/min/lunr.sa.min.js | 1 + .../lunr/min/lunr.stemmer.support.min.js | 1 + assets/javascripts/lunr/min/lunr.sv.min.js | 18 + assets/javascripts/lunr/min/lunr.ta.min.js | 1 + assets/javascripts/lunr/min/lunr.te.min.js | 1 + assets/javascripts/lunr/min/lunr.th.min.js | 1 + assets/javascripts/lunr/min/lunr.tr.min.js | 18 + assets/javascripts/lunr/min/lunr.vi.min.js | 1 + assets/javascripts/lunr/min/lunr.zh.min.js | 1 + assets/javascripts/lunr/tinyseg.js | 206 + assets/javascripts/lunr/wordcut.js | 6708 +++++++++++++++++ .../workers/search.2c215733.min.js | 42 + .../workers/search.2c215733.min.js.map | 7 + assets/stylesheets/main.484c7ddc.min.css | 1 + assets/stylesheets/main.484c7ddc.min.css.map | 1 + assets/stylesheets/palette.ab4e12ef.min.css | 1 + .../stylesheets/palette.ab4e12ef.min.css.map | 1 + benchmarks/index.html | 1718 +++++ building/index.html | 1990 +++++ contributing.html/index.html | 14 + contributing/index.html | 1731 +++++ evolution/index.html | 1958 +++++ flatbuffers_benchmarks.html/index.html | 14 + flatbuffers_grammar.html/index.html | 14 + .../index.html | 14 + flatbuffers_guide_building.html/index.html | 14 + flatbuffers_guide_tutorial.html/index.html | 14 + flatbuffers_guide_use_c-sharp.html/index.html | 14 + flatbuffers_guide_use_c.html/index.html | 14 + flatbuffers_guide_use_cpp.html/index.html | 14 + flatbuffers_guide_use_dart.html/index.html | 14 + flatbuffers_guide_use_go.html/index.html | 14 + flatbuffers_guide_use_java.html/index.html | 14 + .../index.html | 14 + flatbuffers_guide_use_lobster.html/index.html | 14 + flatbuffers_guide_use_lua.html/index.html | 14 + flatbuffers_guide_use_php.html/index.html | 14 + flatbuffers_guide_use_python.html/index.html | 14 + flatbuffers_guide_use_rust.html/index.html | 14 + flatbuffers_guide_use_swift.html/index.html | 14 + .../index.html | 14 + .../index.html | 14 + .../index.html | 14 + flatbuffers_internals.html/index.html | 14 + flatbuffers_support.html/index.html | 14 + flatbuffers_white_paper.html/index.html | 14 + flatc/index.html | 1997 +++++ flexbuffers.html/index.html | 14 + flexbuffers/index.html | 1648 ++++ grammar/index.html | 1624 ++++ index.html | 1618 ++++ intermediate_representation.html/index.html | 14 + intermediate_representation/index.html | 1583 ++++ internals/index.html | 2186 ++++++ languages/c/index.html | 1939 +++++ languages/c_sharp/index.html | 1992 +++++ languages/cpp/index.html | 2918 +++++++ languages/dart/index.html | 1791 +++++ languages/go/index.html | 1716 +++++ languages/java/index.html | 1754 +++++ languages/javascript/index.html | 1701 +++++ languages/kotlin/index.html | 1703 +++++ languages/lobster/index.html | 1725 +++++ languages/lua/index.html | 1702 +++++ languages/php/index.html | 1712 +++++ languages/python/index.html | 1736 +++++ languages/rust/index.html | 2114 ++++++ languages/swift/index.html | 1694 +++++ languages/typescript/index.html | 1736 +++++ md__schemas.html/index.html | 14 + quick_start/index.html | 1590 ++++ schema/index.html | 2801 +++++++ sitemap.xml | 127 + sitemap.xml.gz | Bin 0 -> 391 bytes support/index.html | 1875 +++++ tutorial/index.html | 4595 +++++++++++ white_paper/index.html | 1776 +++++ 108 files changed, 70022 insertions(+) create mode 100644 .nojekyll create mode 100644 404.html create mode 100644 CNAME create mode 100644 annotation/index.html create mode 100644 assets/flatbuffers_logo.svg create mode 100644 assets/images/favicon.png create mode 100644 assets/javascripts/bundle.79ae519e.min.js create mode 100644 assets/javascripts/bundle.79ae519e.min.js.map create mode 100644 assets/javascripts/lunr/min/lunr.ar.min.js create mode 100644 assets/javascripts/lunr/min/lunr.da.min.js create mode 100644 assets/javascripts/lunr/min/lunr.de.min.js create mode 100644 assets/javascripts/lunr/min/lunr.du.min.js create mode 100644 assets/javascripts/lunr/min/lunr.el.min.js create mode 100644 assets/javascripts/lunr/min/lunr.es.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.he.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hu.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hy.min.js create mode 100644 assets/javascripts/lunr/min/lunr.it.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ja.min.js create mode 100644 assets/javascripts/lunr/min/lunr.jp.min.js create mode 100644 assets/javascripts/lunr/min/lunr.kn.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ko.min.js create mode 100644 assets/javascripts/lunr/min/lunr.multi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.nl.min.js create mode 100644 assets/javascripts/lunr/min/lunr.no.min.js create mode 100644 assets/javascripts/lunr/min/lunr.pt.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ro.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ru.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sa.min.js create mode 100644 assets/javascripts/lunr/min/lunr.stemmer.support.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sv.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ta.min.js create mode 100644 assets/javascripts/lunr/min/lunr.te.min.js create mode 100644 assets/javascripts/lunr/min/lunr.th.min.js create mode 100644 assets/javascripts/lunr/min/lunr.tr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.vi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.zh.min.js create mode 100644 assets/javascripts/lunr/tinyseg.js create mode 100644 assets/javascripts/lunr/wordcut.js create mode 100644 assets/javascripts/workers/search.2c215733.min.js create mode 100644 assets/javascripts/workers/search.2c215733.min.js.map create mode 100644 assets/stylesheets/main.484c7ddc.min.css create mode 100644 assets/stylesheets/main.484c7ddc.min.css.map create mode 100644 assets/stylesheets/palette.ab4e12ef.min.css create mode 100644 assets/stylesheets/palette.ab4e12ef.min.css.map create mode 100644 benchmarks/index.html create mode 100644 building/index.html create mode 100644 contributing.html/index.html create mode 100644 contributing/index.html create mode 100644 evolution/index.html create mode 100644 flatbuffers_benchmarks.html/index.html create mode 100644 flatbuffers_grammar.html/index.html create mode 100644 flatbuffers_grpc_guide_use_cpp.html/index.html create mode 100644 flatbuffers_guide_building.html/index.html create mode 100644 flatbuffers_guide_tutorial.html/index.html create mode 100644 flatbuffers_guide_use_c-sharp.html/index.html create mode 100644 flatbuffers_guide_use_c.html/index.html create mode 100644 flatbuffers_guide_use_cpp.html/index.html create mode 100644 flatbuffers_guide_use_dart.html/index.html create mode 100644 flatbuffers_guide_use_go.html/index.html create mode 100644 flatbuffers_guide_use_java.html/index.html create mode 100644 flatbuffers_guide_use_javascript.html/index.html create mode 100644 flatbuffers_guide_use_lobster.html/index.html create mode 100644 flatbuffers_guide_use_lua.html/index.html create mode 100644 flatbuffers_guide_use_php.html/index.html create mode 100644 flatbuffers_guide_use_python.html/index.html create mode 100644 flatbuffers_guide_use_rust.html/index.html create mode 100644 flatbuffers_guide_use_swift.html/index.html create mode 100644 flatbuffers_guide_use_typescript.html/index.html create mode 100644 flatbuffers_guide_using_schema_compiler.html/index.html create mode 100644 flatbuffers_guide_writing_schema.html/index.html create mode 100644 flatbuffers_internals.html/index.html create mode 100644 flatbuffers_support.html/index.html create mode 100644 flatbuffers_white_paper.html/index.html create mode 100644 flatc/index.html create mode 100644 flexbuffers.html/index.html create mode 100644 flexbuffers/index.html create mode 100644 grammar/index.html create mode 100644 index.html create mode 100644 intermediate_representation.html/index.html create mode 100644 intermediate_representation/index.html create mode 100644 internals/index.html create mode 100644 languages/c/index.html create mode 100644 languages/c_sharp/index.html create mode 100644 languages/cpp/index.html create mode 100644 languages/dart/index.html create mode 100644 languages/go/index.html create mode 100644 languages/java/index.html create mode 100644 languages/javascript/index.html create mode 100644 languages/kotlin/index.html create mode 100644 languages/lobster/index.html create mode 100644 languages/lua/index.html create mode 100644 languages/php/index.html create mode 100644 languages/python/index.html create mode 100644 languages/rust/index.html create mode 100644 languages/swift/index.html create mode 100644 languages/typescript/index.html create mode 100644 md__schemas.html/index.html create mode 100644 quick_start/index.html create mode 100644 schema/index.html create mode 100644 sitemap.xml create mode 100644 sitemap.xml.gz create mode 100644 support/index.html create mode 100644 tutorial/index.html create mode 100644 white_paper/index.html diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 000000000..e69de29bb diff --git a/404.html b/404.html new file mode 100644 index 000000000..19b3073cf --- /dev/null +++ b/404.html @@ -0,0 +1,1410 @@ + + + +
+ + + + + + + + + + + + + + + + + +This provides a way to annotate flatbuffer binary data, byte-by-byte, with a +schema. It is useful for development purposes and understanding the details of +the internal format.
+Given a schema, as either a plain-text (.fbs) or a binary schema (.bfbs),
+and binary file(s) that were created by the schema. You can annotate them
+using:
flatc --annotate SCHEMA -- BINARY_FILES...
+This will produce a set of annotated files (.afb Annotated FlatBuffer)
+corresponding to the input binary files.
Taken from the tests/annotated_binary.
+cd tests/annotated_binary
+../../flatc --annotate annotated_binary.fbs -- annotated_binary.bin
+Which will produce a annotated_binary.afb file in the current directory.
The annotated_binary.bin is the flatbufer binary of the data contained within
+annotated_binary.json, which was made by the following command:
..\..\flatc -b annotated_binary.fbs annotated_binary.json
+Currently there is a built-in text-based format for outputting the annotations.
+A full example is shown here:
+annotated_binary.afb
The data is organized as a table with fixed columns grouped into
+Binary sections and regions, starting
+from the beginning of the binary (offset 0).
The columns are as follows:
+The offset from the start of the binary, expressed in hexadecimal format
+ (e.g. +0x003c).
The prefix + is added to make searching for the offset (compared to some
+random value) a bit easier.
The raw binary data, expressed in hexadecimal format.
+This is in the little endian format the buffer uses internally and what you +would see with a normal binary text viewer.
+The type of the data.
+This may be the type specified in the schema or some internally defined +types:
+| Internal Type | +Purpose | +
|---|---|
VOffset16 |
+Virtual table offset, relative to the table offset | +
UOffset32 |
+Unsigned offset, relative to the current offset | +
SOffset32 |
+Signed offset, relative to the current offset | +
The value of the data.
+This is shown in big endian format that is generally written for humans to
+consume (e.g. 0x0013). As well as the "casted" value (e.g. 0x0013is
+19 in decimal) in parentheses.
Notes about the particular data.
+This describes what the data is about, either some internal usage, or tied +to the schema.
+The file is broken up into Binary Sections, which are comprised of contiguous
+binary regions that are logically grouped together. For
+example, a binary section may be a single instance of a flatbuffer Table or
+its vtable. The sections may be labelled with the name of the associated type,
+as defined in the input schema.
An example of a vtable Binary Section that is associated with the user-defined
+AnnotateBinary.Bar table.
vtable (AnnotatedBinary.Bar):
+ +0x00A0 | 08 00 | uint16_t | 0x0008 (8) | size of this vtable
+ +0x00A2 | 13 00 | uint16_t | 0x0013 (19) | size of referring table
+ +0x00A4 | 08 00 | VOffset16 | 0x0008 (8) | offset to field `a` (id: 0)
+ +0x00A6 | 04 00 | VOffset16 | 0x0004 (4) | offset to field `b` (id: 1)
+These are purely annotative, there is no embedded information about these +regions in the flatbuffer itself.
+Binary regions are contiguous bytes regions that are grouped together to form
+some sort of value, e.g. a scalar or an array of scalars. A binary region may
+be split up over multiple text lines, if the size of the region is large.
Looking at an example binary region:
+vtable (AnnotatedBinary.Bar):
+ +0x00A0 | 08 00 | uint16_t | 0x0008 (8) | size of this vtable
+The first column (+0x00A0) is the offset to this region from the beginning of
+the buffer.
The second column are the raw bytes (hexadecimal) that make up this region. +These are expressed in the little-endian format that flatbuffers uses for the +wire format.
+The third column is the type to interpret the bytes as. For the above example,
+the type is uint16_t which is a 16-bit unsigned integer type.
The fourth column shows the raw bytes as a compacted, big-endian value. The raw
+bytes are duplicated in this fashion since it is more intuitive to read the data
+in the big-endian format (e.g., 0x0008). This value is followed by the decimal
+representation of the value (e.g., (8)). For strings, the raw string value is
+shown instead.
The fifth column is a textual comment on what the value is. As much metadata as +known is provided.
+If the type in the 3rd column is of an absolute offset (SOffet32 or
+Offset32), the fourth column also shows an Loc: +0x025A value which shows
+where in the binary this region is pointing to. These values are absolute from
+the beginning of the file, their calculation from the raw value in the 4th
+column depends on the context.
0&&i[i.length-1])&&(p[0]===6||p[0]===2)){r=0;continue}if(p[0]===3&&(!i||p[1]>i[0]&&p[1]=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function K(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var o=r.call(e),n,i=[],s;try{for(;(t===void 0||t-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(a){s={error:a}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(s)throw s.error}}return i}function B(e,t,r){if(r||arguments.length===2)for(var o=0,n=t.length,i;o