Skip to content
Snippets Groups Projects
  1. Sep 12, 2016
  2. Sep 01, 2016
  3. May 26, 2016
  4. Jan 21, 2016
  5. Dec 04, 2015
    • Michael Collins's avatar
      Add Get Bytes Method Generator for C# · e083e466
      Michael Collins authored
      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.
      e083e466
  6. Nov 23, 2015
    • Donnell's avatar
      Fix C# vector of enum code generation · 644bcbde
      Donnell authored
      Fixes a bug where the logic to determine when to use a C# enum flags
      both enums and vectors of enums.  This causes the C# generator to
      generate code that doesn't compile for tables that contain vectors of
      enums.
      
      The fix also consolidates type generation functions a bit and adds
      some additional casting functions for clarity.
      644bcbde
  7. Nov 17, 2015
    • Shuhei Tanuma's avatar
      C# Unity can't cast integer represented enum value. · 37e28d98
      Shuhei Tanuma authored
      ```
      namespace MyGame;
      
      enum CommandType : byte {
      	None = 0,
      }
      
      table Command {
      	id:int;
      	type:CommandType;
      }
      ```
      
      then generate c# files. it'll output compile error like these.
      
      ```
      Assets/MyGame/Command.cs(18,39): error CS1041: Identifier expected
      Assets/MyGame/Command.cs(18,39): error CS1737: Optional parameter cannot precede required parameters
      
      16:   public static Offset<Command> CreateCommand(FlatBufferBuilder builder,
      17:   int id = 0,
      18:   CommandType type = (CommandType)0) {
      ```
      37e28d98
  8. Aug 19, 2015
  9. Aug 11, 2015
    • Mormegil's avatar
      [Issue 252] Add type cast for default enum values in C# · 25c99273
      Mormegil authored
      When creating a “CreateXxx(...)” method for a “simple table” type,
      enum-type fields with a non-zero default must have an explicit
      cast for the respective argument default value, because in C#,
      there is an implicit cast from int to an enum only for 0.
      
      Also, added an example of such type into the example monster_test
      type, so that we test this feature.
      25c99273
Loading