Implement hack_namespace option for hack codegen #31
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Modify proto-hack codegen to support a custom namespace for generated hack code.
A new option called
hack_namespace
can be added to .proto files as a compiler hint. Eg. `option (hack_namespace) = "fizzy\bazzy";. When the hack_namespace option is set, the generated hack classes will be placed in the specified namespace.Change details:
hack_namespace
, all references to its fields in other proto classes will use custom namespace prefix.When running the codegen, the first phase is to build a namespace tree for protobuf file. During this phase, a new attribute
cFqn
will also be populated. This attribute is the fully qualified name of the field prefixed with custom namespace. When generating output classes,cFqn
will be used to refer to fields instead offqn
, if it is available.