FlatBuffers: Memory Efficient Serialization Library
Go to file
ianXian 60de374486 Convert to unsigned char before applying bit shift operator (#4664)
* Convert to unsigned char before applying bit shift operator

* convert to const unsigned char inline

* convert to unsigned char inline
2018-03-09 09:45:47 -08:00
.github Added PULL_REQUEST_TEMPLATE.md 2017-02-08 10:15:26 -08:00
.travis Change mikeholler to PYPI_USERNAME 2017-12-13 15:14:01 -06:00
CMake Support version compatibility checks via find_package command (#4625) 2018-02-15 13:39:15 -08:00
android Text files should not have executable bit set (#4480) 2017-11-06 10:20:22 -08:00
biicode Made .sh files all have same comment formatting. 2016-05-23 14:08:21 -07:00
docs Fix the spell mistake (#4599) 2018-01-22 09:08:13 -08:00
go Trimmed vtables of trailing zeroes. 2017-08-24 09:35:54 -07:00
grpc Misc fixes from internal integration / clang tidy. 2018-02-08 14:58:16 -08:00
include/flatbuffers Convert to unsigned char before applying bit shift operator (#4664) 2018-03-09 09:45:47 -08:00
java/com/google/flatbuffers Fix for Java infinite loop encoding into 0-sized buffer (#4654) 2018-03-02 15:21:08 -08:00
js Trimmed vtables of trailing zeroes. 2017-08-24 09:35:54 -07:00
net/FlatBuffers Text files should not have executable bit set (#4480) 2017-11-06 10:20:22 -08:00
php Trimmed vtables of trailing zeroes. 2017-08-24 09:35:54 -07:00
python Add support for Python lib continuous deployment. 2017-11-27 13:14:33 -06:00
reflection Added support for structs and strings in unions. 2017-04-12 17:47:47 -07:00
samples Add new c++ helpers to ease usage of size prefixed FlatBuffers (#4626) 2018-02-22 09:19:08 -08:00
src Json : Add --size-prefixed option to flatc (#4645) 2018-03-09 08:21:28 -08:00
tests Fix broken Java/C# codegen 2018-03-05 16:37:04 -08:00
.clang-format Made all C++ files clang-formatted. 2017-12-21 11:45:02 -08:00
.editorconfig added config files for popular formatting tools (#4554) 2017-12-21 10:18:20 -08:00
.gitattributes Text files should not have executable bit set (#4480) 2017-11-06 10:20:22 -08:00
.gitignore Update .gitignore with Ninja stuff (#4659) 2018-03-08 10:36:27 -08:00
.travis.yml #4522 Conan package support (#4590) 2018-01-12 08:18:20 -08:00
BUILD Protobufs: Added '--oneof-union' option. (#4647) 2018-03-05 08:45:25 -08:00
CMakeLists.txt Support version compatibility checks via find_package command (#4625) 2018-02-15 13:39:15 -08: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
WORKSPACE Add initial Bazel WORKSPACE and BUILD (#4608) 2018-02-05 10:23:15 -08: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
conanfile.py #4522 Conan package support (#4590) 2018-01-12 08:18:20 -08:00
package.json publish additional js/flatbuffers.mjs to npm to support ESModules in node (#4504) 2017-12-01 14:18:43 -08:00
pom.xml Updated version numbers to 1.8.0 2017-11-20 09:46:03 -08:00
readme.md Text files should not have executable bit set (#4480) 2017-11-06 10:20:22 -08: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.