It moves the responsibility of string formatting to the Base Julia code generator. (e.g. breaking printing bugs such as was fixed for empty structs in #221 could not occur unless they are in Julia itself)
It can make it easier to use existing metaprogramming and formatting tools within ProtoBuf.jl.
It can make some fun shenanigans a little easier, such as evaling protobuf code directly into a module. You could do things like dynamically load new protobufs at run-time more easily, though I'm not necessarily claiming that something like this is ever a good idea.
This would require codegen to be completely rewritten, so it's not a very simple change, but it's good to keep in mind in case major changes are ever made to codegen.
There are several reasons for this:
Base
Julia code generator. (e.g. breaking printing bugs such as was fixed for empty structs in #221 could not occur unless they are in Julia itself)eval
ing protobuf code directly into a module. You could do things like dynamically load new protobufs at run-time more easily, though I'm not necessarily claiming that something like this is ever a good idea.This would require codegen to be completely rewritten, so it's not a very simple change, but it's good to keep in mind in case major changes are ever made to codegen.