summaryrefslogtreecommitdiffstats
path: root/clang/bindings/python
Commit message (Collapse)AuthorAgeFilesLines
* python: add bindings for children of diagnosticsSaleem Abdulrasool2016-04-302-0/+44
| | | | | | | | | | | | | This exposes the Clang API bindings clang_getChildDiagnostics (which returns a CXDiagnosticSet) and clang_getNumDiagnosticsInSet / clang_getDiagnosticInSet (to traverse the CXDiagnosticSet), and adds a helper children property in the Python Diagnostic wrapper. Also, this adds the missing OVERLOAD_CANDIDATE (700) cursor type. Patch by Hanson Wang! llvm-svn: 268167
* Expose cxx constructor and method properties through libclang and python ↵Jonathan Coe2016-04-272-0/+128
| | | | | | | | | | | | | | | | | | | | | | | bindings. Summary: I have exposed the following function through libclang and the clang.cindex python bindings: clang_CXXConstructor_isConvertingConstructor, clang_CXXConstructor_isCopyConstructor, clang_CXXConstructor_isDefaultConstructor, clang_CXXConstructor_isMoveConstructor, clang_CXXMethod_isDefaulted I need (some of) these methods for a C++ code model I am building in Python to drive a code generator. Reviewers: compnerd, skalinichev Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D15469 llvm-svn: 267706
* Revert 266186 as it breaks anything that includes type_traits on some platformsNemanja Ivanovic2016-04-151-1/+0
| | | | | | | | | | Since this patch provided support for the __float128 type but disabled it on all platforms by default, some platforms can't compile type_traits with -std=gnu++11 since there is a specialization with __float128. This reverts the patch until D19125 is approved (i.e. we know which platforms need this support enabled). llvm-svn: 266460
* Enable support for __float128 in ClangNemanja Ivanovic2016-04-131-0/+1
| | | | | | | | | | | | | | | | This patch corresponds to review: http://reviews.llvm.org/D15120 It adds support for the __float128 keyword, literals and a target feature to enable it. This support is disabled by default on all targets and any target that has support for this type is free to add it. Based on feedback that I've received from target maintainers, this appears to be the right thing for most targets. I have not heard from the maintainers of X86 which I believe supports this type. I will subsequently investigate the impact of enabling this on X86. llvm-svn: 266186
* libclang python bindings: Fix for bug 26394Jonathan Coe2016-03-101-1/+1
| | | | | | | | | | | Summary: https://llvm.org/bugs/show_bug.cgi?id=26394 reports that clang's python bindings tests are failing. I can confirm that the bug exists and that the proposed fix is good. Differential Revision: http://reviews.llvm.org/D17226 llvm-svn: 263170
* python binding: expose compile command filenameGuillaume Papin2016-03-072-5/+22
| | | | | | | | Reviewers: compnerd, skalinichev Differential Revision: http://reviews.llvm.org/D17278 llvm-svn: 262845
* libclang: expose dllexport, dllimport attributesSaleem Abdulrasool2015-12-101-0/+3
| | | | | | | These attributes were previously unexposed. Expose them through the libclang interfaces. Add tests that cover both the MSVC spelling and the GNU spelling. llvm-svn: 255273
* [libclang] Visit TypeAliasTemplateDeclSergey Kalinichev2015-11-152-1/+3
| | | | | | | | This makes TypeAliasTemplateDecl accessible via LibClang and python bindings Differential Revision: http://reviews.llvm.org/D13844 llvm-svn: 253166
* [libclang] Expose AutoTypeSergey Kalinichev2015-11-151-0/+1
| | | | | | | | Expose the AutoType via LibClang and python bindings Differential Revision: http://reviews.llvm.org/D13000 llvm-svn: 253165
* Index: expose is_mutable_fieldSaleem Abdulrasool2015-10-272-0/+25
| | | | | | | | Expose isMutable via libClang and python bindings. Patch by Jonathan B Coe! llvm-svn: 251410
* bindings: add new C++ function attribute accessorsSaleem Abdulrasool2015-10-122-0/+67
| | | | | | | | | Add methods to index Cursor to see if a cxx method is pure_virtual, virtual or const methods. Patch by Jonathan B Coe! llvm-svn: 250008
* Index: expose visibility attributeSaleem Abdulrasool2015-09-051-0/+2
| | | | | | | Expose the previously unexposed visibility attribute via the python and C bindings. llvm-svn: 246931
* [libclang] Return deduced type for auto type, not the one written in the source.Manuel Klimek2015-09-031-2/+2
| | | | | | | | | | | | It used to work, but was accidentally broken by r179769. The issue with decayed types was fixed by r190796. So this patch partially reverts r179769, and adds more tests. This also fixes PR 18669. Patch by Sergey Kalinichev. llvm-svn: 246778
* [libclang] Add functions to get information about fields.Argyrios Kyrtzidis2015-04-132-6/+55
| | | | | | Patch by Loïc Jaquemet! llvm-svn: 234762
* This reverts commit r227432, r227438 and r227448.Rafael Espindola2015-01-292-55/+6
| | | | | | | | | | | | | | | | | | | | | | | It should bring the bots back. Original messagses: r227448: Remove unnecessary default. r227438: Fix Index/print-type.cpp test following r227432. r227432: libclang: Add three functions useful for dealing with anonymous fields: clang_Cursor_getOffsetOfField clang_Cursor_isAnonymous clang_Type_visitFields Python: Add corresponding methods for dealing with anonymous fields. Patch by Loïc Jaquemet llvm-svn: 227472
* libclang: Add three functions useful for dealing with anonymous fields:Francois Pichet2015-01-292-6/+55
| | | | | | | | | | | clang_Cursor_getOffsetOfField clang_Cursor_isAnonymous clang_Type_visitFields Python: Add corresponding methods for dealing with anonymous fields. Patch by Loïc Jaquemet llvm-svn: 227432
* [libclang] Add function to retrieve storage class in libclang.Argyrios Kyrtzidis2014-10-151-0/+61
| | | | | | Patch by guibufolo! llvm-svn: 219809
* Add libclang capabilities to retriete template arguments from specializations.Eli Bendersky2014-10-102-106/+142
| | | | | | | | | Includes Python bindings. Reviewed in http://reviews.llvm.org/D5621 Patch by Rob Springer llvm-svn: 219529
* Expose the CUDA shared attribute to the C API.Eli Bendersky2014-08-081-0/+1
| | | | | | | | Similar to r209767, which exposed other CUDA-related attributes. Patch by Rob Springer. llvm-svn: 215208
* Expose the name mangling C API to Python bindings.Eli Bendersky2014-08-052-0/+27
| | | | llvm-svn: 214930
* Reformat docstring to 80-colEli Bendersky2014-07-311-3/+3
| | | | llvm-svn: 214412
* cindex.py: remove obsolete workaround and FIXMEAlp Toker2014-06-221-4/+0
| | | | | | | | | clang_getCursorSpelling() doesn't assert on non-declarations any more and the behaviour is covered by c-index tests. Passes nosetests. llvm-svn: 211482
* Implement a convenience recursive walk method over a cursor and its descendants.Eli Bendersky2014-05-292-29/+21
| | | | | | | | | | | | | Before r160106 there was a way to recursively visit all descendants of a cursor via Cursor_visit, but it was removed. Since then, every user needs to reimplement the recursive descent into get_children. Adding a walk_preorder() method to Cursor that conveniently implements recursive walking in a Pythonic way. This also greatly simplifies get_cursor and get_cursors in tests/cindex/util.py (walk_preorder is now tested through these utility functions, since they are used in many tests). llvm-svn: 209793
* Expose CUDA function attributes to the C interface.Eli Bendersky2014-05-281-0/+4
| | | | | | | | Until now all CUDA-specific attributes were represented with CXCursor_UnexposedAttr; now they are actually implemented, including the Python bindings. llvm-svn: 209767
* Trim trailing whitespace in cindex.pyEli Bendersky2014-05-281-6/+6
| | | | llvm-svn: 209754
* cindex/test_cursor.py: no need to skip implicit decls in testsAlp Toker2014-05-211-8/+1
| | | | | | | | | clang was fixed some time ago to always skip "builtins and other cruft" so tools no longer need hacks like this. Passes nosetests. llvm-svn: 209316
* Clean up language and grammar.Eric Christopher2014-05-201-2/+2
| | | | | | | Based on a patch by jfcaron3@gmail.com! PR19806 llvm-svn: 209215
* cindex-dump.py: fix the --show-ids description stringAlp Toker2014-05-051-1/+1
| | | | | | It looks like this was botched back in r94936. llvm-svn: 207947
* Fix cindex-dump.py --show-idsAlp Toker2014-05-051-1/+1
| | | | | | | | | | | | | This option flag was incorrectly expecting an argument: $ cindex-dump.py --show-ids test.cpp cindex-dump.py: error: invalid number arguments With this change the feature correctly gets enabled by --show-ids. No tests. llvm-svn: 207946
* [libclang] Add attribute support for 'pure', 'const' and 'noduplicate'.Joey Gouly2014-05-011-0/+3
| | | | | | This bumps CINDEX_VERSION_MINOR up (to 26). llvm-svn: 207767
* Fix the method len of the CompletionString object. Patch by Christopher GreeneSylvestre Ledru2014-04-271-1/+1
| | | | llvm-svn: 207348
* bindings: expose C++ access specifiersSaleem Abdulrasool2014-04-252-0/+93
| | | | | | | | | | Expose the enum CX_CXXAccessSpecifier in the python bindings as a property of the cursor. If access specifier is not applicable to the node, return the INVALID specifier rather than raising an exception. Patch by Tamás Szeli! llvm-svn: 207173
* cindex.py: Avoid deprecated functionAlp Toker2014-04-201-4/+4
| | | | | | | | | Implement Diagnostic::category_name() using clang_getDiagnosticCategoryText() instead of the deprected clang_getDiagnosticCategoryName(). Preserves existing behaviour and API covered by existing tests. llvm-svn: 206712
* Use the correct symbol for a left bracket.Bill Wendling2014-03-141-1/+1
| | | | | | PR19089 llvm-svn: 203906
* [libclang/python] Use a Python standard library module to create a temporary ↵Argyrios Kyrtzidis2014-02-201-9/+2
| | | | | | | | file. Patch by Brian Gesiak! llvm-svn: 201762
* [libclang/python] Add CompilationDatabase.getAllCompileCommands to the ↵Argyrios Kyrtzidis2013-12-202-0/+34
| | | | | | | | python bindings. Patch by Laszlo Nagy! llvm-svn: 197765
* Fix a tranche of comment, test and doc typosAlp Toker2013-12-051-1/+1
| | | | llvm-svn: 196510
* [libclang/python] Add __contains__ to SourceRange class.Argyrios Kyrtzidis2013-10-311-0/+23
| | | | | | Patch by Loïc Jaquemet! llvm-svn: 193725
* [libclang] Introduce clang_Type_getCXXRefQualifier whichexposes ↵Argyrios Kyrtzidis2013-10-111-5/+60
| | | | | | | | ref-qualifier information of function type. Patch by Che-Liang Chiou! llvm-svn: 192493
* [libclang] Add some tests by Loïc Jaquemet that I forgot to add earlier.Argyrios Kyrtzidis2013-10-071-0/+40
| | | | llvm-svn: 192108
* [libclang] python: expose a few functions, patch by Loïc Jaquemet!Argyrios Kyrtzidis2013-10-032-0/+46
| | | | llvm-svn: 191907
* [libclang] Introduce clang_Type_getClassType which returns the class type of ↵Argyrios Kyrtzidis2013-10-031-0/+12
| | | | | | | | a member pointer type. Patch by Che-Liang Chiou! llvm-svn: 191906
* [libclang] python: fix return type of clang_Type_getSizeOf().Argyrios Kyrtzidis2013-09-251-1/+1
| | | | | | Patch by Loïc Jaquemet! llvm-svn: 191346
* [libclang] Provide location for attributes and expose 'packed' attribute.Argyrios Kyrtzidis2013-09-251-0/+1
| | | | | | Patch by Loïc Jaquemet! llvm-svn: 191345
* [libclang] Don't report a DecayedType as "unexposed", report it as the ↵Argyrios Kyrtzidis2013-09-161-0/+10
| | | | | | | | original (as written) type. Patch by Anders Waldenborg! llvm-svn: 190796
* [libclang] Expose the rest of the array types.Argyrios Kyrtzidis2013-07-232-2/+13
| | | | | | Patch by Che-Liang Chiou! llvm-svn: 186967
* [libclang/python] Add a few "cursor kinds" that were missing in the python ↵Argyrios Kyrtzidis2013-06-112-5/+45
| | | | | | | | binding for libclang. Patch by Mathieu Baudet! llvm-svn: 183760
* libclang: add a function to check whether a member function is pure virtualDmitri Gribenko2013-05-171-0/+4
| | | | | | Patch by Seth Fowler. llvm-svn: 182139
* Fix return type of isBitfield in the binding definitionDmitri Gribenko2013-04-211-1/+1
| | | | | | Patch by Loïc Jaquemet. llvm-svn: 179984
* [libclang] Expose record layout info via new libclang functions:Argyrios Kyrtzidis2013-04-113-2/+115
| | | | | | | | | | | clang_Type_getAlignOf clang_Type_getSizeOf clang_Type_getOffsetOf clang_Cursor_isBitField Patch by Loïc Jaquemet! llvm-svn: 179251
OpenPOWER on IntegriCloud