1. 09 Jul, 2015 2 commits
    • Jon Skeet's avatar
      Lots more tests for FieldCodec, MapField, RepeatedField · 14f2222a
      Jon Skeet authored
      ... and some implementation changes to go with them.
      14f2222a
    • Jon Skeet's avatar
      Implement reflection properly for fields. · 78ea98f5
      Jon Skeet authored
      - FieldAccessorTable is now non-generic
      - We don't have a static field per message type in the umbrella class. (Message descriptors are accessed via the file descriptor.)
      - Removed the "descriptor assigner" complication from the descriptor fixup; without extensions, we don't need it
      - MapField implements IDictionary (more tests would be good...)
      - RepeatedField implements IList (more tests would be good)
      - Use expression trees to build accessors. (Will need to test this on various platforms... probably need a fallback strategy just using reflection directly.)
      - Added FieldDescriptor.IsMap
      - Added tests for reflection with generated messages
      
      Changes to generated code coming in next commit.
      78ea98f5
  2. 30 Jun, 2015 1 commit
  3. 26 Jun, 2015 1 commit
    • Jon Skeet's avatar
      Tweaks and more tests for maps · c1283310
      Jon Skeet authored
      - Change the default message hash code to 1 to be consistent with other code
      - Change the empty list/map hash code to 0 as "empty map" is equivalent to "no map"
      - Removed map fields from unittest_proto3.proto
      - Created map_unittest_proto3.proto which is like map_unittest.proto but proto3-only
      - Fixed factory methods in FieldCodec highlighted by using all field types :)
      - Added tests for map serialization:
        - Extra fields within entries
        - Entries with value then key
        - Non-contiguous entries for the same map
        - Multiple entries for the same key
      
      Changes to generated code coming in next commit
      c1283310
  4. 25 Jun, 2015 2 commits