facebookarchive / swift

An annotation-based Java library for creating Thrift serializable types and services.
Apache License 2.0
900 stars 297 forks source link

Optional and required field handling #187

Closed andrewcox closed 10 years ago

andrewcox commented 10 years ago

A collection of diffs that mostly add some support for optional.

This also makes the optional/required setting for fields available in swift at runtime, but required is not yet enforced. Will add some changes in the future for this.

And while I was touching normalization of field metadata, I tried to correct a few oddities like allowing multiple conflicting types or names on a field with only a warning (now this will be an error).

alandau commented 10 years ago

lgtm, a few small comments inside

andrewcox commented 10 years ago

Rebased, combined review feedback commits into the main commits, and pushed.