platform/upstream/flatbuffers.git
8 years agoAdd __DATE__ to FLATC_VERSION based on PR feedback.
Eddie Scholtz [Mon, 1 Feb 2016 21:43:05 +0000 (13:43 -0800)]
Add __DATE__ to FLATC_VERSION based on PR feedback.

8 years agoAdd -v --version arg support to the flatc command.
Eddie Scholtz [Fri, 29 Jan 2016 23:01:54 +0000 (15:01 -0800)]
Add -v --version arg support to the flatc command.

8 years agoMerge pull request #3742 from evolutional/cs-partial
Wouter van Oortmerssen [Thu, 28 Jan 2016 00:18:21 +0000 (16:18 -0800)]
Merge pull request #3742 from evolutional/cs-partial

Added support for C# partial class generation using attribute

8 years agoAdded support for C# partial class generation when the `csharp_partial` attribute...
Oli Wilkinson [Thu, 21 Jan 2016 15:30:13 +0000 (15:30 +0000)]
Added support for C# partial class generation when the `csharp_partial` attribute is used on a table/struct.

8 years agoMerge branch 'master' of https://github.com/google/flatbuffers
Wouter van Oortmerssen [Thu, 21 Jan 2016 02:11:51 +0000 (18:11 -0800)]
Merge branch 'master' of https://github.com/google/flatbuffers

8 years agoRe-Added accidentally deleted sample generated file.
Wouter van Oortmerssen [Thu, 21 Jan 2016 02:09:53 +0000 (18:09 -0800)]
Re-Added accidentally deleted sample generated file.

Change-Id: Ie3b31719f7b133ec4aea64f00f2029566558cb18
Tested: Linux.

8 years agoMerge pull request #3735 from evolutional/vs2010-buildfix
Wouter van Oortmerssen [Wed, 20 Jan 2016 21:49:40 +0000 (13:49 -0800)]
Merge pull request #3735 from evolutional/vs2010-buildfix

Buildfix for VS2010

8 years agoMerge pull request #3734 from evolutional/cs-forcedefaults
Wouter van Oortmerssen [Wed, 20 Jan 2016 21:46:49 +0000 (13:46 -0800)]
Merge pull request #3734 from evolutional/cs-forcedefaults

Implemented ForceDefaults option on C# FlatBufferBuilder.

8 years agoMerge pull request #3729 from fichter/master
Wouter van Oortmerssen [Wed, 20 Jan 2016 21:35:25 +0000 (13:35 -0800)]
Merge pull request #3729 from fichter/master

Fix build error when flatc binary is missing in path.

8 years agoMerge branch 'master' of https://github.com/google/flatbuffers
Wouter van Oortmerssen [Wed, 20 Jan 2016 21:30:09 +0000 (13:30 -0800)]
Merge branch 'master' of https://github.com/google/flatbuffers

8 years agoFixed Python unit test breakage.
Wouter van Oortmerssen [Wed, 20 Jan 2016 21:04:03 +0000 (13:04 -0800)]
Fixed Python unit test breakage.

Test was testing for a field to be None, even though it is populated
in one particular instance.

Change-Id: Id19848d01498d4c0a684efdb2bf49ff12c5b6758
Tested: on Linux.

8 years agoDisabled assignment operator of TableKeyComparator; was causing warning C4512 on...
Oli Wilkinson [Wed, 20 Jan 2016 18:44:44 +0000 (18:44 +0000)]
Disabled assignment operator of TableKeyComparator; was causing warning C4512 on VS2010 and thus causing the build to fail.

8 years agoImplemented ForceDefaults option on C# FlatBufferBuilder.
Oli Wilkinson [Wed, 20 Jan 2016 17:15:29 +0000 (17:15 +0000)]
Implemented ForceDefaults option on C# FlatBufferBuilder.

Tested on: Windows, Unit Tests

8 years agoMerge pull request #3707 from evolutional/vs-gitignore
Wouter van Oortmerssen [Wed, 20 Jan 2016 02:01:34 +0000 (18:01 -0800)]
Merge pull request #3707 from evolutional/vs-gitignore

Added Visual Studio transient files to .gitignore

8 years agoMerge pull request #3491 from faizanrashid/master
Robert [Wed, 20 Jan 2016 01:56:26 +0000 (17:56 -0800)]
Merge pull request #3491 from faizanrashid/master

[BUG FIX] [MINOR] Fix encoding with unicode characters.

8 years agoMerge branch 'master' of https://github.com/google/flatbuffers
Wouter van Oortmerssen [Tue, 19 Jan 2016 23:56:26 +0000 (15:56 -0800)]
Merge branch 'master' of https://github.com/google/flatbuffers

8 years agoMerge pull request #3510 from jaakristioja/patch-1
Wouter van Oortmerssen [Tue, 19 Jan 2016 23:36:45 +0000 (15:36 -0800)]
Merge pull request #3510 from jaakristioja/patch-1

Fixed comment typo

8 years agoSilenced unused variable warnings.
Mark Klara [Tue, 19 Jan 2016 23:27:47 +0000 (15:27 -0800)]
Silenced unused variable warnings.

When built for release, builds were failing with unused
variable warnings, since they were only used in `assert()`
calls.

I added explicit void casting to any potentially unused variables.

Change-Id: I9947ba46891fdda5aa925caa950642dedd4e009f

8 years agoRevamping the FlatBuffers docs.
Mark Klara [Fri, 4 Dec 2015 04:30:54 +0000 (20:30 -0800)]
Revamping the FlatBuffers docs.

Adding an API reference for the supported languages.

General docs cleanup, including a new `tutorial` section that
supports all of the supported languages.

Added samples for each supported language to mirror the new
tutorial page.

Cleaned up all the links by making them `@ref` style links,
instead of referencing the names of the generated `.html` files.

Removed all generated files that were unnecessarily committed.

Also fixed the C# tests (two were failing due to a missing file).

Bug: b/25801305

Tested: Tested all samples on Ubuntu, Mac, and Android. Docs were
generated using doxygen and viewed on Chrome.

Change-Id: I2acaba6e332a15ae2deff5f26a4a25da7bd2c954

8 years agoMerge branch 'master' of https://github.com/google/flatbuffers
Wouter van Oortmerssen [Tue, 19 Jan 2016 22:10:49 +0000 (14:10 -0800)]
Merge branch 'master' of https://github.com/google/flatbuffers

8 years agoAdded support for parsing JSON null value.
Wouter van Oortmerssen [Fri, 8 Jan 2016 23:18:51 +0000 (15:18 -0800)]
Added support for parsing JSON null value.

These cause the field in question to be skipped.

Bug: 16550393
Change-Id: Id05104e89818ee773b8a91fdcc86e18061b9a82f
Tested: on Linux.

8 years agoAdded min/max values for enums/unions.
Wouter van Oortmerssen [Fri, 8 Jan 2016 22:31:26 +0000 (14:31 -0800)]
Added min/max values for enums/unions.

Bug: 21642898
Change-Id: Ifaf0b3c4274fe30ef29507ba1c1216d700efe85b
Tested: on Linux.

8 years agoAdded schema evolution examples to the docs.
Wouter van Oortmerssen [Fri, 8 Jan 2016 22:01:52 +0000 (14:01 -0800)]
Added schema evolution examples to the docs.

Bug: 26296711
Change-Id: I225067d82ac0f8bd71b2b97b1672517ca86cc3b9
Tested: on Linux.

8 years agoMerge pull request #3706 from evolutional/fix-3506
Wouter van Oortmerssen [Tue, 19 Jan 2016 19:10:07 +0000 (11:10 -0800)]
Merge pull request #3706 from evolutional/fix-3506

Check (& skip) of the utf-8 byte order mark

8 years agoMerge pull request #3513 from evolutional/fix-3500
Wouter van Oortmerssen [Tue, 19 Jan 2016 18:40:02 +0000 (10:40 -0800)]
Merge pull request #3513 from evolutional/fix-3500

Java/C#: generation of typed helpers when using nested_flatbuffers

8 years agoMerge pull request #3498 from ncpenke/gcc-4.4.3-support
Wouter van Oortmerssen [Tue, 19 Jan 2016 18:27:57 +0000 (10:27 -0800)]
Merge pull request #3498 from ncpenke/gcc-4.4.3-support

Gcc 4.4.3 support

8 years agoFix build error when flatc binary is missing in PATH.
Rene Fichter [Tue, 19 Jan 2016 12:02:25 +0000 (13:02 +0100)]
Fix build error when flatc binary is missing in PATH.

8 years agoAdded Visual Studio transient files to .gitignore
Oli Wilkinson [Mon, 18 Jan 2016 20:54:22 +0000 (20:54 +0000)]
Added Visual Studio transient files to .gitignore

8 years agoAdded check (& skipping) of the utf-8 byte order mark (0xEF BB BF) at the beginning...
Oli Wilkinson [Mon, 18 Jan 2016 18:58:53 +0000 (18:58 +0000)]
Added check (& skipping) of the utf-8 byte order mark (0xEF BB BF) at the beginning of the file

8 years agoAdded generation of typed helpers when using nested_flatbuffers in Java/C#. Fixes...
Oli Wilkinson [Mon, 18 Jan 2016 15:23:14 +0000 (15:23 +0000)]
Added generation of typed helpers when using nested_flatbuffers in Java/C#. Fixes #3500

8 years agoFixed comment typo
Jaak Ristioja [Wed, 13 Jan 2016 13:30:27 +0000 (15:30 +0200)]
Fixed comment typo

8 years agoFix #3497: Add support for compiling in g++ 4.4 and 4.5
Chandra Penke [Wed, 6 Jan 2016 16:31:53 +0000 (08:31 -0800)]
Fix #3497: Add support for compiling in g++ 4.4 and 4.5

- Removed uses of lambda expressions

- Added custom defines for constexpr and nullptr

- Removed trailing comma of last value from generated enums

8 years agoMake flatc check for binary files to avoid accidental parsing.
Wouter van Oortmerssen [Fri, 8 Jan 2016 21:10:25 +0000 (13:10 -0800)]
Make flatc check for binary files to avoid accidental parsing.

Binary file arguments to flatc have to be preceded by -- to
identify them, forgetting this however results in them being
attempted to be parsed as schema/json, with cryptic errors.
This instead gives an error if 0 bytes are contained in your
text file.

Bug: 22069056
Change-Id: I226bf651dcb016f18d7c8ffadcf23466a1fc0b87
Tested: on Linux.

8 years agoEnsured code is not generated directly from .proto files.
Wouter van Oortmerssen [Fri, 8 Jan 2016 19:39:56 +0000 (11:39 -0800)]
Ensured code is not generated directly from .proto files.

The parser state generated from the .proto conversion process is
not exactly the same as what you get by parsing the generated
schema, which can cause problems. This check enforces that you
first convert the .proto, then generate code from the new schema.

Change-Id: I04b53af9288d87e256d1cc109388332fefb3a09f
Tested: on Linux.

8 years agoAdded android static library target for text parsing/generation etc.
Wouter van Oortmerssen [Thu, 7 Jan 2016 01:48:19 +0000 (17:48 -0800)]
Added android static library target for text parsing/generation etc.

Change-Id: If24e3eea90cef2a0d6a9d98fb503d2e3ec34ceed
Tested: on Linux.

8 years agoUpdated docs to point to benchmark source code location.
Wouter van Oortmerssen [Thu, 7 Jan 2016 00:51:00 +0000 (16:51 -0800)]
Updated docs to point to benchmark source code location.

Change-Id: If4c8fac6a421ac6436cab0dd7a0ae822a32e90bf

8 years agoMerge pull request #2098 from faizanrashid/issue-1741
Robert [Thu, 7 Jan 2016 00:13:59 +0000 (16:13 -0800)]
Merge pull request #2098 from faizanrashid/issue-1741

[BUG] [MINOR] Use buffer for specific py versions

8 years agoMerge pull request #3494 from parnic/fix-vs2012-static-analysis
Wouter van Oortmerssen [Wed, 6 Jan 2016 20:34:08 +0000 (12:34 -0800)]
Merge pull request #3494 from parnic/fix-vs2012-static-analysis

Fixed MS static analysis warnings

8 years agoChanged how the SA warning is suppressed to avoid pragma stuff
Chris Pickett [Wed, 6 Jan 2016 20:21:18 +0000 (14:21 -0600)]
Changed how the SA warning is suppressed to avoid pragma stuff

8 years agoMerge pull request #3495 from parnic/fix-reflection-vs2012-warnings
Wouter van Oortmerssen [Wed, 6 Jan 2016 20:03:40 +0000 (12:03 -0800)]
Merge pull request #3495 from parnic/fix-reflection-vs2012-warnings

Fixed warning building in VS2012

8 years agoMerge pull request #3493 from parnic/support-platforms-without-realpath
Wouter van Oortmerssen [Wed, 6 Jan 2016 19:52:37 +0000 (11:52 -0800)]
Merge pull request #3493 from parnic/support-platforms-without-realpath

Fix build for platforms not supporting realpath

8 years agoFixed warning building in VS2012
Chris Pickett [Wed, 6 Jan 2016 18:33:19 +0000 (12:33 -0600)]
Fixed warning building in VS2012

src\reflection.cpp(297): warning C4267: 'argument' : conversion from 'size_t' to 'flatbuffers::uoffset_t', possible loss of data

sizeof() was promoting the type from uoffset_t to size_t.

8 years agoUpdated comment on endif for new name
Chris Pickett [Wed, 6 Jan 2016 18:21:17 +0000 (12:21 -0600)]
Updated comment on endif for new name

8 years agoMade requested revisions for naming and spacing
Chris Pickett [Wed, 6 Jan 2016 18:20:38 +0000 (12:20 -0600)]
Made requested revisions for naming and spacing

8 years agoDocumented what the suppressed warning is about
Chris Pickett [Wed, 6 Jan 2016 18:04:46 +0000 (12:04 -0600)]
Documented what the suppressed warning is about

8 years agoMerge pull request #3492 from parnic/fix-vs2012-warnings
Wouter van Oortmerssen [Wed, 6 Jan 2016 17:39:23 +0000 (09:39 -0800)]
Merge pull request #3492 from parnic/fix-vs2012-warnings

Fix vs2012 warnings

8 years agoMerge pull request #3 from google/master
ncpenke [Wed, 6 Jan 2016 16:18:04 +0000 (10:18 -0600)]
Merge pull request #3 from google/master

Catchup

8 years agoFixed MS static analysis warnings
Chris Pickett [Tue, 5 Jan 2016 19:38:03 +0000 (13:38 -0600)]
Fixed MS static analysis warnings

Cleaned up a few warnings to allow VS2012 to compile idl_parser and idl_gen_text (for exporting binary protobuf blobs as JSON) cleanly under static analysis.

8 years agoFix build for platforms not supporting realpath
Chris Pickett [Tue, 5 Jan 2016 16:58:46 +0000 (10:58 -0600)]
Fix build for platforms not supporting realpath

Added a check for a preprocessor definition that can be set if the platform you're building for doesn't support any notion of absolute path resolution/realpath()/etc.

8 years agoFixed compile warning with VS2012
Chris Pickett [Tue, 5 Jan 2016 16:58:40 +0000 (10:58 -0600)]
Fixed compile warning with VS2012

flatbuffers\src\idl_parser.cpp(1516): warning C4244: 'argument' : conversion from 'int' to 'char', possible loss of data

8 years agoFixed compile warning with VS2012
Chris Pickett [Tue, 5 Jan 2016 16:58:21 +0000 (10:58 -0600)]
Fixed compile warning with VS2012

flatbuffers\src\idl_parser.cpp(1525): warning C4127: conditional expression is constant
flatbuffers\src\idl_parser.cpp(1546): warning C4127: conditional expression is constant

8 years agoMerge branch 'master' of https://github.com/google/flatbuffers
Wouter van Oortmerssen [Mon, 4 Jan 2016 21:06:19 +0000 (13:06 -0800)]
Merge branch 'master' of https://github.com/google/flatbuffers

Fixed conflicts and added missing generated files.

Change-Id: I4321c798543292d814c2c9e8b238c203b7526c7b

8 years agoClarified binary encoding with an example.
Wouter van Oortmerssen [Wed, 30 Dec 2015 01:05:18 +0000 (17:05 -0800)]
Clarified binary encoding with an example.

Change-Id: I60c900a2f7cbd88fe264f7b0dc78ef86b1580655
Tested: in Chrome.

8 years agoMerge pull request #2 from google/master
ncpenke [Sat, 2 Jan 2016 06:59:41 +0000 (06:59 +0000)]
Merge pull request #2 from google/master

Catchup

8 years ago[BUG FIX] [MINOR] Fix encoding with unicode characters.
Faizan Rashid [Thu, 31 Dec 2015 04:41:00 +0000 (09:41 +0500)]
[BUG FIX] [MINOR] Fix encoding with unicode characters.

When passing a unicode string to builder.CreateString, the
default encoding assumed all characters can be encoded
using ascii. Added a fix so a user can specify the
encoding and how to handle errors when creating strings.

8 years agoMade error checking macros less prone to clashes.
Wouter van Oortmerssen [Wed, 30 Dec 2015 00:33:00 +0000 (16:33 -0800)]
Made error checking macros less prone to clashes.

Change-Id: Ieb252ce01446551699d935507bc95ee286fe1ddd
Tested: on Linux.

8 years agoMerge pull request #2776 from ncpenke/skip-unknown-json-fields
Wouter van Oortmerssen [Tue, 29 Dec 2015 18:29:11 +0000 (10:29 -0800)]
Merge pull request #2776 from ncpenke/skip-unknown-json-fields

Fix #2775: Add parser option to skip unknown JSON fields

8 years agoMerge pull request #2790 from chobie/php-table-fix
Wouter van Oortmerssen [Tue, 29 Dec 2015 18:25:21 +0000 (10:25 -0800)]
Merge pull request #2790 from chobie/php-table-fix

(PHP) fixes getting indirect table, also fixes getInt method on 32bit machine

8 years ago(PHP) remove duplicate test
Shuhei Tanuma [Thu, 24 Dec 2015 06:50:03 +0000 (15:50 +0900)]
(PHP) remove duplicate test

8 years ago(PHP) improve indirect buffer test
Shuhei Tanuma [Thu, 24 Dec 2015 06:35:28 +0000 (15:35 +0900)]
(PHP) improve indirect buffer test

8 years agoFix #2775: Add option to flatc to skip unknown fields in JSON
Nalinichandra Penke [Tue, 22 Dec 2015 08:13:22 +0000 (00:13 -0800)]
Fix #2775: Add option to flatc to skip unknown fields in JSON

8 years agoFix #2775: Add parser option to skip unknown JSON fields
Nalinichandra Penke [Tue, 22 Dec 2015 08:02:19 +0000 (00:02 -0800)]
Fix #2775: Add parser option to skip unknown JSON fields

8 years agoMerge pull request #1 from google/master
ncpenke [Tue, 22 Dec 2015 06:56:49 +0000 (22:56 -0800)]
Merge pull request #1 from google/master

Catchup

8 years agoFixed reflection setting string not changing size field.
Wouter van Oortmerssen [Tue, 22 Dec 2015 00:17:50 +0000 (16:17 -0800)]
Fixed reflection setting string not changing size field.

Change-Id: I3c3e88a79667d1733b6c47e43b55d8b2604ca8e2
Tested: on Linux.

8 years agoMerge branch 'master' of https://github.com/google/flatbuffers
Wouter van Oortmerssen [Mon, 21 Dec 2015 22:43:48 +0000 (14:43 -0800)]
Merge branch 'master' of https://github.com/google/flatbuffers

8 years agoAdded an IsFieldPresent helper function.
Wouter van Oortmerssen [Sat, 19 Dec 2015 01:01:34 +0000 (17:01 -0800)]
Added an IsFieldPresent helper function.

This is implemented as a template function, since Table::CheckField
is not reachable by subclasses of Table (private base class).

Change-Id: I1ed4d47ce7cb672460ccab61cf7442eb9136b0f1
Tested: on Linux.
Bug: 26273432

8 years agoReplaced exception handling in the parser with error checking.
Wouter van Oortmerssen [Thu, 10 Dec 2015 02:06:56 +0000 (18:06 -0800)]
Replaced exception handling in the parser with error checking.

This to allow the code to run on a greater range of build
configurations (that don't allow exceptions/RTTI).

If anyone ever doubts the usefulness of exception handling,
please show them this commit.

Change-Id: If7190babdde93c3f9cd97b8e1ab447bf0c81696d
Tested: on Linux.

8 years ago(PHP) fixes getting indirect table, also fixes getInt method on 32bit machine.
Shuhei Tanuma [Thu, 17 Dec 2015 02:35:31 +0000 (11:35 +0900)]
(PHP) fixes getting indirect table, also fixes getInt method on 32bit machine.

8 years agoMerge pull request #2601 from AaronCritchley/patch-1
Wouter van Oortmerssen [Wed, 16 Dec 2015 17:59:22 +0000 (09:59 -0800)]
Merge pull request #2601 from AaronCritchley/patch-1

Improving the README by linking to the SO tag, and changing SO wording.

8 years agoLinking to SO tag and improving readability
Aaron Critchley [Tue, 15 Dec 2015 21:06:01 +0000 (21:06 +0000)]
Linking to SO tag and improving readability

8 years agoMade sure all namespace test files get generated.
Wouter van Oortmerssen [Thu, 10 Dec 2015 01:06:11 +0000 (17:06 -0800)]
Made sure all namespace test files get generated.

Also included them in the C++ test.

Change-Id: Ib0c8470f0aacdf16616c27494abdda57a010195d
Tested: on Linux.

8 years agoMerge pull request #2090 from evolutional/cs-perf-string
Wouter van Oortmerssen [Mon, 14 Dec 2015 23:16:46 +0000 (15:16 -0800)]
Merge pull request #2090 from evolutional/cs-perf-string

C# - Performance optimizations

8 years ago[BUG] [MINOR] Use buffer for specific py versions
Faizan Rashid [Sun, 13 Dec 2015 07:55:16 +0000 (02:55 -0500)]
[BUG] [MINOR] Use buffer for specific py versions

Fix for Issue 1741
Minor bug where python versions 2.7.x where x < 5 do not support
unpacking from memoryview objects. Versions 2.7.5 and above will
use memoryview while 2.7 versions below 2.7.5  will use buffer
objects.

Manual testing was performed on versions 2.7.5 and 2.7.2 to
confirm both worked correctly.

8 years agoC# performance optimization to Pad/Prep methods
Oli Wilkinson [Sat, 12 Dec 2015 16:39:57 +0000 (11:39 -0500)]
C# performance optimization to Pad/Prep methods

8 years agoPerformance tweak to FlatBufferBuilder.CreateString method to remove the unnecessary...
Oli Wilkinson [Fri, 11 Dec 2015 19:57:59 +0000 (14:57 -0500)]
Performance tweak to FlatBufferBuilder.CreateString method to remove the unnecessary byte buffer allocation

(See https://github.com/google/flatbuffers/issues/55#issuecomment-164031718 for stats)

8 years agoFixed root_type not accepting namespaced types.
Wouter van Oortmerssen [Thu, 10 Dec 2015 00:41:12 +0000 (16:41 -0800)]
Fixed root_type not accepting namespaced types.

Change-Id: I272f377742cc0a2c1bfccaa641b54eb9a8c762b6
Tested: on Linux.

8 years agoMerge branch 'master' of https://github.com/google/flatbuffers
Wouter van Oortmerssen [Wed, 9 Dec 2015 20:57:12 +0000 (12:57 -0800)]
Merge branch 'master' of https://github.com/google/flatbuffers

8 years agoFixed compiler warnings for cast to bool in generated code.
Wouter van Oortmerssen [Wed, 9 Dec 2015 20:56:24 +0000 (12:56 -0800)]
Fixed compiler warnings for cast to bool in generated code.

Change-Id: I7727aeb478feb23d8ef66fd1ba9499b142b3ea7d
Tested: on Linux.

8 years agoMerge pull request #288 from mfcollins3/csharp-byte-buffer
Wouter van Oortmerssen [Tue, 8 Dec 2015 01:35:57 +0000 (17:35 -0800)]
Merge pull request #288 from mfcollins3/csharp-byte-buffer

Add Get Bytes Method Generator for C#

8 years agoMerge pull request #776 from belldon/bytebuffer_pos_fix
Wouter van Oortmerssen [Tue, 8 Dec 2015 00:19:05 +0000 (16:19 -0800)]
Merge pull request #776 from belldon/bytebuffer_pos_fix

Extend C# ByteBuffer Put method fix to unsafe methods

8 years agoMerge pull request #1029 from belldon/vtable_reuse
Wouter van Oortmerssen [Mon, 7 Dec 2015 22:42:04 +0000 (14:42 -0800)]
Merge pull request #1029 from belldon/vtable_reuse

Update C# FlatBufferBuilder to reuse vtable array

8 years agoExtend C# ByteBuffer Put method fix to unsafe methods
belldon [Thu, 3 Dec 2015 21:11:27 +0000 (16:11 -0500)]
Extend C# ByteBuffer Put method fix to unsafe methods

Fixes issue #243.  Extends the initial C# ByteBuffer fix
(e4c3bf3d2cec00522fd1a8edd8704413cdc1303b) to Put methods
used when UNSAFE_BYTEBUFFER is defined.

8 years agoUpdate C# FlatBufferBuilder to reuse vtable array
belldon [Fri, 4 Dec 2015 15:49:03 +0000 (10:49 -0500)]
Update C# FlatBufferBuilder to reuse vtable array

This commit updates the FlatBufferBuilder class to reuse the vtable
array instead of creating a new array with every StartObject() call.

8 years agoMerge pull request #608 from evolutional/master
Wouter van Oortmerssen [Mon, 7 Dec 2015 18:33:38 +0000 (10:33 -0800)]
Merge pull request #608 from evolutional/master

Fix to #360 - Fully qualified names outside of current NS

8 years agoMerge pull request #778 from armen/master
Wouter van Oortmerssen [Mon, 7 Dec 2015 18:27:27 +0000 (10:27 -0800)]
Merge pull request #778 from armen/master

Correct the max/min signed/unsigned 32-bit int

8 years agoFixed language for generators not being set correctly.
Wouter van Oortmerssen [Mon, 7 Dec 2015 17:53:04 +0000 (09:53 -0800)]
Fixed language for generators not being set correctly.

Change-Id: I36c1f05efa836b32635e3274ac0ba976a8961bdd
Tested: on Linux.

8 years agoOptimize get* operation
Armen Baghumian [Fri, 4 Dec 2015 06:10:11 +0000 (06:10 +0000)]
Optimize get* operation

It's slightly faster to convert the value to signed value in PHP as
opposed to use pack and unpack.

For 1M get operation the difference is:

    getShort in 3.3272678852081 seconds
    getInt in 3.8338589668274 seconds
    getLong in 5.6381590366364 seconds
    getLong (neg) in 5.6149101257324 seconds

vs

    getShort in 2.7564418315887 seconds
    getInt in 3.1612701416016 seconds
    getLong in 3.1369340419769 seconds
    getLong (neg) in 3.1478710174561 seconds

And since pack("P") and unpack("q") has been removed now ByteBuffer
works for PHP >= 5.4

8 years agoCorrect the max/min signed/unsigned 32-bit int
Armen Baghumian [Fri, 4 Dec 2015 03:05:42 +0000 (03:05 +0000)]
Correct the max/min signed/unsigned 32-bit int

The test was trying to pack an unsigned int which couldn't fit as a
signed int and putInt() wasn't doing the validation in the correct range

8 years agoFix to #360 - Updated the general generator (Java/C#) to emit fully qualified names...
Oli Wilkinson [Sun, 29 Nov 2015 20:31:55 +0000 (15:31 -0500)]
Fix to #360 - Updated the general generator (Java/C#) to emit fully qualified names where the referenced object isn't directly in this namespace. Added test fbs files to verify compilation.

8 years agoAdd Get Bytes Method Generator for C#
Michael Collins [Mon, 5 Oct 2015 02:57:39 +0000 (19:57 -0700)]
Add Get Bytes Method Generator for C#

I updated idl_gen_general.cpp to add support for generating a Get Bytes
method for a vector to the generated C# source code. Given a byte vector
field named Foo, a method named GetFooBytes() will be generated in the
C# source code that will return an ArraySegment<byte> value referencing
the vector data in the underlying ByteBuffer.

I added a method to Table.cs named __vector_as_arraysegment that is used
by the code generated by the change to the C# generator.
__vector_as_arraysegment will take the offset of the vector and will
return the ArraySegment<byte> value corresponding to the bytes that
store the vector data.

I updated FlatBuffersExampleTests.cs to add tests to validate my
implementation of Table.__vector_as_arraysegment. I added tests to
demonstrate that the bytes for the monster's name can be extracted from
the underlying byte array. I also added tests to show that
Table.__vector_as_arraysegment returns a null value if the vector is not
present in the FlatBuffer.

I used the updated flatc.exe program to regenerate the C# source files
for the MyGame example. The new Monster class includes the GetXXXBytes
methods to return the byte arrays containing data for vectors.

8 years agoDo not create empty enums.
Jason Sanmiya [Fri, 4 Dec 2015 15:09:16 +0000 (07:09 -0800)]
Do not create empty enums.

Mac build issued a warning for enum{}.

Change-Id: I9cab958538ac3cec61aeae289d1da0118ecac15f
Tested: Mac build no longer issues warnings.

8 years agoAdded --gen-all to generate code for a schema and all its includes.
Wouter van Oortmerssen [Tue, 1 Dec 2015 01:42:19 +0000 (17:42 -0800)]
Added --gen-all to generate code for a schema and all its includes.

Also refactored the way options are stored.

Change-Id: I709ac908cd2aba396c9c282725cf1d42ccce0882
Tested: on Linux.

8 years agoFixed implicit dereference in flatc.
Wouter van Oortmerssen [Tue, 1 Dec 2015 01:49:51 +0000 (17:49 -0800)]
Fixed implicit dereference in flatc.

Change-Id: If2e62a325b47399561b4c20d2def55ede4831d19
Tested: on Linux.

8 years agoLink clang builds against libc++abi on Linux
Perry Hung [Tue, 1 Dec 2015 00:41:54 +0000 (19:41 -0500)]
Link clang builds against libc++abi on Linux

Simply running clang with -stdlib=libc++ requires a manual link against
libc++abi on Linux. This is documented in the libc++ documentation:
    http://libcxx.llvm.org/

Tested on Arch Linux, using clang 3.7.0 RELEASE.

Signed-off-by: Perry Hung <iperry@gmail.com>
8 years agoMultiple schemas parsed by flatc are now parsed independently.
Wouter van Oortmerssen [Tue, 1 Dec 2015 00:42:48 +0000 (16:42 -0800)]
Multiple schemas parsed by flatc are now parsed independently.

It used to be such that later schemas could depend on earlier
schemas. This was a convenience from days before include files
were implemented. Nowadays they cause subtle bugs rather than being
useful, so this functionality has been removed.

You now need to explicitly include files you depend upon.

Change-Id: Id8292c3c621fc38fbd796da2d2cbdd63efc230d1
Tested: on Linux.

8 years agoC++ generated code now has constants for vtable offsets.
Wouter van Oortmerssen [Mon, 30 Nov 2015 22:27:47 +0000 (14:27 -0800)]
C++ generated code now has constants for vtable offsets.

Besides making the generated code looking a lot more readable,
it also allows you to use these offsets in calls to
Table::CheckField, to see if a field is present in a table.

Change-Id: I1b4cc350c4f27c4e474c31add40c701ef4ae63b2
Tested: On Linux.

8 years agoMade C++ generated code use "bool" instead of uint8_t wire type.
Wouter van Oortmerssen [Mon, 30 Nov 2015 21:54:24 +0000 (13:54 -0800)]
Made C++ generated code use "bool" instead of uint8_t wire type.

Change-Id: I5756d15a758429ca67456264842017063d1f755e
Tested: on Linux.

8 years agoAllow vectors to be aligned beyond their natural type.
Wouter van Oortmerssen [Mon, 30 Nov 2015 19:50:09 +0000 (11:50 -0800)]
Allow vectors to be aligned beyond their natural type.

Change-Id: I09ade6b688a6b97d65fd832558917225d86c9118

8 years agoJava builder now checks if buffer was finished upon access.
Wouter van Oortmerssen [Mon, 30 Nov 2015 19:25:21 +0000 (11:25 -0800)]
Java builder now checks if buffer was finished upon access.

Also checks for nesting of objects in vector construction.

This avoids common errors in FlatBuffer construction.

Change-Id: I5507c5d767684e20e94883a92448f05acefba4d6
Tested: on Linux.

8 years agoFix use of std::max when Windows.h is imported.
Chris [Fri, 27 Nov 2015 20:06:41 +0000 (20:06 +0000)]
Fix use of std::max when Windows.h is imported.