On 10/09/2013 10:38 AM, Jesse Phillips wrote: > On Tuesday, 8 October 2013 at 20:50:22 UTC, Matt Soucy wrote: >> Thanks for the tip - I actually did find this one when I started using >> this, however I found it on another page that hadn't been updated (that >> I ironically can't find now), so I wrongfully assumed that it was >> abandoned. I did find the github page, but I wasn't thrilled by it. > > You're thinking: https://256.makerslocal.org/wiki/index.php/ProtocolBuffer > I've been updating it from that > Exactly, that's the page! All I remembered about the location was that it was a wiki with a number in the URL... >> >> Pros for opticron's: >> Much more idiomatic code >> Supports D1 >> Much better unit tests >> Pros for mine (highly based on opinion): >> Exposes slightly more convenient helpers >> (In my opinion) slightly easier to read >> Generated code looks like a POD struct, though with some "hidden" >> attributes (optional variables support .clean(), .exists(), instead of >> looking like myStruct.foo_exists()) > > For the D2 output I've got it really close to POD. It declares fields as > Nullable!T meaning myStruct.foo.isNull would check availability. I was > intending to distinguish required/optional with this, but that would > remove error checking (which I don't think is there yet). > >> Basically, mine is much more simplistic, which is both good and bad. I'd >> like to improve mine a bit more, and the one you pointed me at is pretty >> good. It gave me some things to improve on. > > Go for it, have fun.
-- Matt Soucy http://msoucy.me/
Description: OpenPGP digital signature