[ObjC] Add support for using the proto package to prefix symbols.
This likely should have been the default from the start, as without it is way to common to get symbol collisions between different proto files. It would be nice to support a "migration" mode where both names are created to aid it moving code to this model, but with ObjC `@class` decls being very common to avoid header imports to control rebuilds/etc., it doesn't work as an `@class` usage will error if one also uses `@compatibility_alias`. Falling back to `#define` the two together also doesn't work as the header with the `@class` will cause methods to get defined with one interface, but when methods taking those types are define will likely #import the generate header and thus get the define and end up with a different signature. So for now, there is no migration support and code has to be updated in one shot with enable the new prefixing. - Add a generation option to enable this change in generation. - Add a second generation option to provide a list of proto package that are exceptions from using the proto package. This allows easier migration/updating of code one package at a time.
T
Thomas Van Lenten committed
cf12bffd9dad3e6bf5fbb32167e7b2ff4a99f12d
Parent: 2ea5c99