[patch] improved cxx class and C-linkage xml descriptions

hi,

please find in attachment a patch to:

- add more informations for CXXRecordDecl. this relies on the
   addition of an "improved" macro in DeclXML.def which in effect
   builds an if-block. naming of that macro could be improved.

- add more informations for C-linkage nodes (and properly add
   sub-decls)

cheers,
sebastien.

improved.cxx.class.and.c.linkage.descr.patch (6.46 KB)

hi,

Excerpts from Sebastien Binet's message of 2010-05-18 10:58:09 +0200:

please find in attachment a patch to:

- add more informations for CXXRecordDecl. this relies on the
   addition of an "improved" macro in DeclXML.def which in effect
   builds an if-block. naming of that macro could be improved.

- add more informations for C-linkage nodes (and properly add
   sub-decls)

(implicitly and perhaps rudely pinging my old patch above...)

please find in attachment a patch for the python bindings.

- splits the python ctypes bindings into 2 files to decrease namespace pollution
- declares missing CursorKinds so that cindex-dump.py doesn't throw anymore on simple C/C++ files

I can provide a patch without the split if deemed necessary.

cheers,
sebastien.

improved.python.clang.bindings.patch (60.4 KB)

ping ?

cheers,
sebastien.

Attachment: improved.cxx.class.and.c.linkage.descr.patch (application/octet-stream)

ping ?

cheers,
sebastien.

Attachment: improved.python.clang.bindings.patch (application/octet-stream)

Hi Sebastien,

Thanks!

Can you provide a patch without the split though, I'm not really
convinced it is necessary. Was there a particular reason for wanting
it?

- Daniel

it's just that it makes an interactive session easier on the eye (and
the terminal) especially with TAB-completion and "experimental
programming" :slight_smile:

but stubborn I ain't: attached is the nosplit-patch.

cheers,
sebastien.

improved.python.clang.bindings.nosplit.patch (3.04 KB)

hi there,

some more improvements.

- the attached patch retains the non-splitted patch I sent earlier,
- renamed CXXMethod to CXXMethodDecl (for consistency with other decl
   enums)
- add CXX{Constructor,Destructor,Conversion}Decl enums
- add ctypes-based Type and TypeKind classes to (for now) print types
   spellings
- adds the ability to retrieve a Type from a Cursor

cheers,
sebastien.

clang.python.bindings.more.types.patch (13.6 KB)