mirror of https://github.com/vee1e/flatbuffers - FlatBuffers: Memory Efficient Serialization Library
Find a file
Diogo Monteiro f96d1ef744
[Java] allowing larger buffer sizes when growing a byte buffer (#6118)
Related with issue #6113.

`(old_buf_size & 0xC0000000) != 0` checks if we can duplicate old_buf_size
 and still be under 2GB (by checking if bit 30 or 31 is 1). This doesn't
allow buffers larger than 1GB.

The strategy now is to allocate a buffer with the maximum array size
when we detect that we are overflowing the 2GB.

Also changed default buffer size to 1024.
2020-09-17 11:55:24 -07:00
.appveyor
.bazelci
.github Deleted old stale bot 2020-06-15 13:39:46 -07:00
.travis Add CMake 'generated_code' target to simplify resolution of build dependencies (#5697) 2020-01-06 15:26:41 -08:00
android
bazel Allow to run cpp tests under grpc/tests/ using bazel. (#6040) 2020-07-21 11:08:01 -07:00
CMake Fix git command executed in wrong folder when doing cmake superbuild (#6039) 2020-07-20 12:26:01 -07:00
conan
dart [JS] FlexBuffers Fix for wrong type of offset and length values (#6107) 2020-09-10 12:36:37 -07:00
docs [Swift] Migrates struct write APIS to write directly to the buffer (#6093) 2020-09-17 17:10:59 +03:00
go [Go] Implements a SharedStrings function (#5733) 2020-01-24 09:57:34 -08:00
grpc Adds proper access types for swift object api & flatbuffers & grpc (#6081) 2020-08-22 22:39:09 +03:00
include/flatbuffers Optional-ness in reflection (#6097) 2020-09-11 14:20:32 -07:00
java/com/google/flatbuffers [Java] allowing larger buffer sizes when growing a byte buffer (#6118) 2020-09-17 11:55:24 -07:00
js [JS] FlexBuffers Fix for wrong type of offset and length values (#6107) 2020-09-10 12:36:37 -07:00
lobster [Lobster] optional scalars support 2020-08-18 14:00:02 -07:00
lua
net/FlatBuffers [Feature] Checks for Nullable strings (#6050) 2020-07-27 09:57:50 -07:00
php
python export a __version__ variable for python module (#5309) 2020-07-30 15:56:21 -07:00
reflection Optional-ness in reflection (#6097) 2020-09-11 14:20:32 -07:00
rust Rust codegen improvements and lint fixes (#6046) 2020-07-25 13:46:20 -07:00
samples Optional-ness in reflection (#6097) 2020-09-11 14:20:32 -07:00
snap + Add removable-media plug to the snapcraft config (#6083) 2020-08-24 09:55:38 -07:00
src [Swift] Migrates struct write APIS to write directly to the buffer (#6093) 2020-09-17 17:10:59 +03:00
swift [Swift] Migrates struct write APIS to write directly to the buffer (#6093) 2020-09-17 17:10:59 +03:00
tests [Swift] Migrates struct write APIS to write directly to the buffer (#6093) 2020-09-17 17:10:59 +03:00
.clang-format
.editorconfig
.gitattributes
.gitignore adding fb import when no other imports are present (#6030) 2020-07-30 15:55:11 -07:00
.travis.yml
appveyor.yml [C#] Cleaned up .NET testing script for Mono (#6016) 2020-08-17 13:10:10 -07:00
BUILD Allow to run cpp tests under grpc/tests/ using bazel. (#6040) 2020-07-21 11:08:01 -07:00
build_defs.bzl
CMakeLists.txt [CMake] enabled multi-core builds in VS projects 2020-08-18 14:00:22 -07:00
composer.json
conanfile.py
CONTRIBUTING.md
LICENSE.txt
package.json pre-tag version bump for 1.12 2020-03-12 15:33:39 -07:00
pom.xml updated maven build files 2020-03-16 11:33:42 -07:00
readme.md
WORKSPACE Allow to run cpp tests under grpc/tests/ using bazel. (#6040) 2020-07-21 11:08:01 -07:00

logo FlatBuffers

Build Status Build status Join the chat at https://gitter.im/google/flatbuffers Discord Chat Twitter Follow

FlatBuffers is a cross platform serialization library architected for maximum memory efficiency. It allows you to directly access serialized data without parsing/unpacking it first, while still having great forwards/backwards compatibility.

Go to our landing page to browse our documentation.

Supported operating systems

  • Windows
  • MacOS X
  • Linux
  • Android
  • And any others with a recent C++ compiler.

Supported programming languages

  • C++
  • C#
  • C
  • Dart
  • Go
  • Java
  • JavaScript
  • Lobster
  • Lua
  • PHP
  • Python
  • Rust
  • TypeScript

and more in progress...

Contribution

To contribute to this project, see CONTRIBUTING.

Licensing

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