Vera Filippova created THRIFT-4496:
--------------------------------------

             Summary: Screen keywords in service method names
                 Key: THRIFT-4496
                 URL: https://issues.apache.org/jira/browse/THRIFT-4496
             Project: Thrift
          Issue Type: New Feature
          Components: Python - Compiler
            Reporter: Vera Filippova


Apache Thrift compiler doesn't allow to use keywords in any of supported 
languages as field names. However, there are other compilers, like Scrooge, 
which do allow using some keywords as field identifiers, which leads to 
incompatibility.

Assume we had a service with 'delete' method, with Java code generated by 
Scrooge. Now we'd like to generate Python code with Apache Thrift, but 
encounter an error because of the 'delete' keyword.

I understand that using only Apache Thrift compiler, a user will never 
encounter this problem, but I think enabling keywords by request seems feasible.
h1. Proposal

It's possible to tweak keywords on code generation stage, e.g. use 'delete_' as 
a name of a generated function instead of 'delete', then use the original 
method name for a protocol message: writeMethodBegin('delete').

This feature could be enabled with an additional flag, e.g. --screen-keywords.

I have a draft for python generator here [https://github.com/nsrtvwls/thrift]

The questions are, is this functionality welcome? If yes, would it require to 
have it supported for all languages?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to