On Oct 10, 2013 12:07 PM, "Vladimir Kalinin" <email@example.com> wrote:
> > Some first impressions of the patch:
> > - Documentation needed.
> This is what I was able to compose atm:
> <H2><a name="SWIGPlus_nested_classes"></a>6.27 Nested classes</H2>
> If the target language supports the nested classes concept (like Java), the nested C++ classes
> are wrapped as nested target language proxy classes. (In case of Java - "static" nested classes.)
> Only public nested classes are wrapped. Otherwise there is little difference between nested and
> normal classes.
> If the target language doesn't support nested classes directly, or the support is not implemented in the
> language module (like for python currently), then the visible nested classes are moved to the same name
> space as the containing class (nesting hierarchy is "flattened"). The same behaviour may be turned on for
> C# and Java by the %feature ("flatnested");
> Would that be enough? Actually, the nested classes should require no
> special attention from the user, so the extensive documentation seems
> to be unnecessary
Yes sounds good if it is that simple. Perhaps add on what happens with a super simple example if the nested class has the same name as one in the outer namespace.
> Also, what to do with the old workarounds description - just delete
> it or mark as "Compatibility Note" for SWIG 2.0 and earlier?
Yes. Can you just mention the workaround so that it can be found by users upgrading and just mention what needs doing to replace the feature and how the generated code will be different.