FlatBuffers: Memory Efficient Serialization Library
Go to file
Alex Ames 97face1527 Changed how vector_data works. (#4467)
In some debug environments using vector[i] does bounds checking even
though the standard specifies that it should not. Using
*(vector.begin()) sidesteps this though, giving the same result without
the bounds checking.
2017-10-20 16:49:15 -07:00
.github Added PULL_REQUEST_TEMPLATE.md 2017-02-08 10:15:26 -08:00
CMake Debianization with CPack 2016-08-25 00:00:22 +03:00
android C++98 (stlport) support for core FlatBuffers and FlexBuffers. 2017-07-20 11:01:00 -07:00
biicode Made .sh files all have same comment formatting. 2016-05-23 14:08:21 -07:00
docs Spelling error in C# and Java documentation (#4454) 2017-10-09 08:42:34 -07:00
go Trimmed vtables of trailing zeroes. 2017-08-24 09:35:54 -07:00
grpc [C++] Improve flatbuffers + gRPC integration (#4310) 2017-06-07 13:56:49 -07:00
include/flatbuffers Changed how vector_data works. (#4467) 2017-10-20 16:49:15 -07:00
java/com/google/flatbuffers Trimmed vtables of trailing zeroes. 2017-08-24 09:35:54 -07:00
js Trimmed vtables of trailing zeroes. 2017-08-24 09:35:54 -07:00
net/FlatBuffers Trimmed vtables of trailing zeroes. 2017-08-24 09:35:54 -07:00
php Trimmed vtables of trailing zeroes. 2017-08-24 09:35:54 -07:00
python Python: CreateByteVector function in builder. (#4453) 2017-10-06 08:34:07 -07:00
reflection Added support for structs and strings in unions. 2017-04-12 17:47:47 -07:00
samples [C++] Add explicit keyword on generated constructors for Builder structs (#4452) 2017-10-06 08:50:24 -07:00
src Nullable java (#4455) 2017-10-16 09:24:11 -07:00
tests Fixed Android build failure caused by use of C++11 limits. 2017-10-13 17:35:57 -07:00
.gitattributes Initial commit of the FlatBuffers code. 2014-06-10 13:53:28 -07:00
.gitignore Nullable java (#4455) 2017-10-16 09:24:11 -07:00
.travis.yml Report a build failure when any Android build fails. 2017-10-13 17:35:57 -07:00
CMakeLists.txt Fixed CMake build issue when building with Clang. (#4465) 2017-10-20 16:29:51 -07:00
CONTRIBUTING.md Fixed link to Google C++ Style Guide. 2017-02-08 16:37:25 -08:00
LICENSE.txt Fix Visual Studio 2012 build warning. 2015-09-11 14:35:34 -07:00
appveyor.yml Disabled numpy test in appveyor due to timeout. 2017-08-24 13:46:46 -07:00
biicode.conf added .travis.yml file (build with original and biicode building); 2015-04-15 13:43:25 -07:00
composer.json (PHP) add experimental support for PHP language. 2015-11-18 00:26:39 +09:00
package.json Updated version numbers to 1.7.0 2017-06-16 16:15:02 -07:00
pom.xml Forgot to update pom.xml in recent 1.7.1 release. 2017-08-10 11:35:58 -07:00
readme.md Update StackOverflow links to have relevant queries. 2017-03-29 11:58:42 -07:00

readme.md

logo FlatBuffers

Join the chat at https://gitter.im/google/flatbuffers Build Status Build status

FlatBuffers is an efficient cross platform serialization library for games and other memory constrained apps. It allows you to directly access serialized data without unpacking/parsing it first, while still having great forwards/backwards compatibility.

Go to our landing page to browse our documentation.

Supported operating systems

  • Android
  • Windows
  • MacOS X
  • Linux

Supported programming languages

  • C++
  • C#
  • C
  • Go
  • Java
  • JavaScript
  • PHP
  • Python

and many more in progress...

Contribution

To contribute to this project, see CONTRIBUTING.

Integration

For applications on Google Play that integrate this tool, usage is tracked. This tracking is done automatically using the embedded version string (flatbuffer_version_string), and helps us continue to optimize it. Aside from consuming a few extra bytes in your application binary, it shouldn't affect your application at all. We use this information to let us know if FlatBuffers is useful and if we should continue to invest in it. Since this is open source, you are free to remove the version string but we would appreciate if you would leave it in.

Licensing

Flatbuffers is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.