[
https://issues.apache.org/jira/browse/THRIFT-676?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Rush Manbert updated THRIFT-676:
--------------------------------
Attachment: patchThrift-676.txt
Patch file.
> Change C++ code generator so that generated classes can be wrapped with SWIG
> ----------------------------------------------------------------------------
>
> Key: THRIFT-676
> URL: https://issues.apache.org/jira/browse/THRIFT-676
> Project: Thrift
> Issue Type: Improvement
> Components: Compiler (C++)
> Affects Versions: 0.3
> Environment: Any C++
> Reporter: Rush Manbert
> Attachments: patchThrift-676.txt
>
>
> There are times when it would be beneficial to wrap Thrift-generated C++
> classes with the SWIG tool (http://www.swig.org). This is a problem, though,
> because SWIG does not yet handle nested class or structure definitions and
> the C++ code generator defines the __isset structure within the scope of the
> class definition to which it pertains.
> In order to make the Thrift-generated classes wrappable by SWIG, the __isset
> structure definition needs to be moved outside of the class definition. For a
> Thrift generated class called foo, the __isset definition would look like
> this:
> typedef struct _foo__isset {
> _foo__isset() : member0(false), member1(false) {}
> bool member0;
> bool member1;
> } _foo__isset;
> and the using class would contain this line:
> _foo__isset __isset;
> All existing code will continue to work, and can be regenerated at will.
> I have a patch for this.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.