Add support of overriding function names in Go through annotations
Summary:
Just adding a feature to set a function name for Go through annotations.
An use case example:
Language Go has specific constraints about function names. Because of that Thrift compiler modifies function names to satisfy Go requirements. Which creates some incompatibilities with other languages. For example, it is expected that having simultaneously API functions `get_value` and `GetValue` would cause an error only in Go. But more importantly, thrift-code in Go already has method `GetStatus`, so when somebody define method (for example:) `get_status` it will get an error. And the annotations would allow to manually redefine the function name and avoid the error.
The initial problem is posted here: https://fb.workplace.com/groups/codegophers/permalink/
9557809194267610/
Reviewed By: leoleovich, iahs
Differential Revision:
D39314589
fbshipit-source-id:
73be847b837a294b4125d47408878d9e543438f1