1. 17 Nov, 2018 3 commits
    • Robert's avatar
      0143f4e3
    • Russell Chou's avatar
      Make Parser skip files it's seen already. (#5048) · e161ade6
      Russell Chou authored
      The use case is so we can batch compile a bunch of schemas, some which can depend on each other, without caring about their order.
      e161ade6
    • Wouter van Oortmerssen's avatar
      Make string/vector field serialization order not depend on optimizer. · f575b02f
      Wouter van Oortmerssen authored
      Multiple calls of e.g. CreateString inside a call to a CreateTable
      could cause those strings to end up in different locations in the
      wire format, since order or argument evaluation is undefined.
      
      This is allowed by the FlatBuffer format, but it is not helpful,
      especially when debugging the contents of binaries, or comparing
      against a "golden" binary for tests etc.
      
      Now making sure that all the CreateTableDirect calls first serialize
      sub strings/vectors before calling CreateTable.
      
      Also made similar changes to the serialization of "binary schemas".
      
      Change-Id: I5747c4038b37a0d400aca2bc592bec751cf5c172
      f575b02f
  2. 16 Nov, 2018 4 commits
  3. 15 Nov, 2018 1 commit
  4. 13 Nov, 2018 1 commit
  5. 12 Nov, 2018 3 commits
  6. 06 Nov, 2018 1 commit
  7. 05 Nov, 2018 1 commit
  8. 02 Nov, 2018 3 commits
  9. 01 Nov, 2018 2 commits
  10. 30 Oct, 2018 2 commits
  11. 29 Oct, 2018 1 commit
  12. 25 Oct, 2018 2 commits
  13. 24 Oct, 2018 1 commit
  14. 22 Oct, 2018 5 commits
    • Felix Hanley's avatar
      560718e9
    • Doug Muir's avatar
      Make alignment checking optional. (#5011) · ff687ae9
      Doug Muir authored
      ff687ae9
    • Frank Benkstein's avatar
      make flatbuffers::IsFieldPresent safer (#4988) · ca417426
      Frank Benkstein authored
      Give the vtable offset enum inside each table the name
      "FlatBuffersVTableOffset" and base type voffset_t so it can be used as a
      dependent type in IsFieldPresent. This makes that function slightly
      safer since it prevents calling it with arbitrary, non-table types.
      Now, the only way to use IsFieldPresent incorrectly is to create your
      own type which does not inherit from flatbuffers::Table but has a
      dependent voffset convertible type "FlatBuffersVTableOffset".
      ca417426
    • Vladimir Glavnyy's avatar
      Add fuzzer test for scalar numbers in json. (#4996) · 55b30827
      Vladimir Glavnyy authored
      * Add fuzzer test for scalar numbers in json. Grammar-based regex used to check correctness.
      
      * Fix conversation
      55b30827
    • Frank Benkstein's avatar
      CI check generate code (#4998) · efbb11e0
      Frank Benkstein authored
      * call reflection code generation from tests
      
      This simplifies instructions to contributors so they don't forget to update
      reflection code.
      
      * add error handling to generate_code scripts
      
      Let them propagate their errors instead of swallowing them so they show
      up when called in CI.
      
      * apply editorconfig to shell scripts
      
      * use ordered map in dart codegen
      
      Using an unordered map in the codegen can lead to spurious diffs in the
      generated dart code.
      
      * add CI check for generate_code being run
      
      * update reflection_generated.h
      
      * disable diff-check for monster_test.bfbs
      
      Work around #5008.
      efbb11e0
  15. 18 Oct, 2018 2 commits
    • Frank Benkstein's avatar
      forbid enum values that are out of range (#4977) · 5c0f914f
      Frank Benkstein authored
      * forbid enum values that are out of range
      
      Enum values that are out of range can lead to generated C++ code that does
      not compile.  Also forbid boolean enums.
      
      * update enum and union documentation slightly
      5c0f914f
    • Sumant Tambe's avatar
      Efficient Conversion of a FlatBufferBuilder to a MessageBuilder (#4980) · 802639e4
      Sumant Tambe authored
      * Efficient conversion of FlatBufferBuilder to grpc::MessageBuilder
      
      * Added a variety of tests to validate correctness of the MessageBuilder move operations.
      Disable MessageBuilder half-n-half tests on MacOS.
      
      * Fix failing Android build
      
      * Generalized the MessageBuilder move constructor to accept a deallocator
      802639e4
  16. 16 Oct, 2018 1 commit
  17. 15 Oct, 2018 4 commits
    • kostya-sh's avatar
      Go - Use Go bool type for bool fields (#4962) · 76d31e1b
      kostya-sh authored
      * Use Go bool type for bool fields, and store non-default bool field to test data
      76d31e1b
    • Frank Benkstein's avatar
      disallow c style casts (#4981) · 20396a17
      Frank Benkstein authored
      Fixes #4857.
      20396a17
    • Frank Benkstein's avatar
      don't use std::function in flatbuffers::Parser (#4995) · a3d8391f
      Frank Benkstein authored
      std::function makes code harder to debug because it requires stepping
      through a separate destructor and call operator.  It's use unnecessary
      in the Parser since the functions taking functors are private and are
      only used within idl_parser.cpp.  Therefore the definitions can stay in
      idl_parser.cpp as well.  Only care must be taken that the definitions
      appear before use but that's already true and all compilers will
      complain equally if it get's violated.  This change might also improve
      performance since it might allow inlining where it wasn't possible
      before but I haven't measured that.
      a3d8391f
    • iceboy's avatar
      add :runtime_cc target (#4994) · 241e87d1
      iceboy authored
      241e87d1
  18. 11 Oct, 2018 3 commits
    • Frank Benkstein's avatar
      35f0b41f
    • Frank Benkstein's avatar
      fix #4974 (#4989) · cb5422c3
      Frank Benkstein authored
      cb5422c3
    • Vladimir Glavnyy's avatar
      Refactoring of idl_parser (#4948) · 4ed6fafd
      Vladimir Glavnyy authored
      * Refactoring of numbers parser
      
      More accurate parse of float and double.
      Hexadecimal floats.
      Check "out-of-range" of uint64 fields.
      Check correctness of default values and metadata.
      
      * Remove locale-independent code strtod/strtof from PR #4948.
      
      * small optimization
      
      * Add is_(ascii) functions
      
      * is_ascii cleanup
      
      * Fix format conversation
      
      * Refine number parser
      
      * Make code compatible with Android build
      
      * Remove unnecessary suppression of warning C4127
      4ed6fafd