summaryrefslogtreecommitdiffstats
path: root/clang/include/clang-c/Index.h
Commit message (Collapse)AuthorAgeFilesLines
...
* Documentation cleanup for clang-c:James Dennett2012-06-151-74/+88
| | | | | | | | | | | | | | | * Add parameter names to various \param commands; * Ensure that \brief summaries are followed by blank lines where needed to prevent subsequent text being merged into the summary; * Mark code examples with \code...\endcode so that they're appropriately formatted by Doxygen. * Add qualification for links to field of structs (specifically callbacks); * Escape #, @ and < as needed to avoid them being interpreted by Doxygen; * Remove incorrect uses of "\see name", preferring #name; * Fix a glitchy "\param Returns..." to be "\returns"; * Fix parameter names given to \param, typos and otherwise. llvm-svn: 158489
* Etch out the code path for MS-style inline assembly.Chad Rosier2012-06-111-0/+4
| | | | llvm-svn: 158325
* Documentation cleanup, fixing Doxygen markup. Mostly this avoids common termsJames Dennett2012-06-111-7/+7
| | | | | | | | | | | | | | such as "protocol" and "expression" being implicitly turned into links to mistakenly-generated Doxygen pages: - Escaping @ symbols when Doxygen would otherwise incorrectly interpret them; - Escaping # symbols when they're not intended as explicit Doxygen link requests, such as when discussing preprocessor directives; - In one odd case, unescaping @ in @__experimental_modules_import, because Doxygen wrote '\@' to the output in that case, causing the example in the description of ImportDecl to be wrong; and - Fixing a typo: @breif -> @brief. llvm-svn: 158299
* Fix typos found by http://github.com/lyda/misspell-checkBenjamin Kramer2012-06-021-1/+1
| | | | llvm-svn: 157886
* Introduce a new libclang API to determine the platform availability ofDouglas Gregor2012-05-081-1/+113
| | | | | | | | a given entity, so that we can tell when the entity was introduced/deprecated/obsoleted on each platform for which we have an annotation. Addresses <rdar://problem/11365715>. llvm-svn: 156347
* Simple typo fix (syntex to syntax). Fixes PR12735Aaron Ballman2012-05-061-2/+2
| | | | llvm-svn: 156259
* Added a flag to the parser to skip method bodies.Erik Verbruggen2012-04-121-1/+10
| | | | llvm-svn: 154584
* Implement clang_getDiagnosticCategoryText() to provide a way for a client of ↵Ted Kremenek2012-04-121-2/+23
| | | | | | | | | libclang to accurately get the diagnostic category name from a serialized diagnostic when the version of libclang used to read the diagnostic file is newer than the clang that emitted the diagnostic file. llvm-svn: 154567
* [libclang] Introduce a couple of functions to make it convenientArgyrios Kyrtzidis2012-04-111-2/+18
| | | | | | | | | | | to get at the parameters (and their types) of a function or objc method cursor. int clang_Cursor_getNumArguments(CXCursor C); CXCursor clang_Cursor_getArgument(CXCursor C, unsigned i); rdar://11201527 llvm-svn: 154523
* [libclang] Introduce clang_Cursor_getObjCSelectorIndex() function.Argyrios Kyrtzidis2012-03-301-0/+14
| | | | | | | | | | After getting a cursor with clang_getCursor for a particular source location, allows querying the cursor in order to find out if the location points to a selector identifier in an objc method or message expression, and which selector index it is. rdar://11158946 llvm-svn: 153781
* [libclang] Introduce clang_Cursor_getSpellingNameRange().Argyrios Kyrtzidis2012-03-301-0/+15
| | | | | | | | | | | It retrieves a source range for a piece that forms the cursors spelling name. Most of the times there is only one range for the complete spelling but for objc methods and objc message expressions, there are multiple pieces for each selector identifier. Part of rdar://11113120 llvm-svn: 153775
* [libclang] Introduce options to control the priority for the threadsArgyrios Kyrtzidis2012-03-281-0/+55
| | | | | | | | | | | | | | | | | | | | | | that libclang creates. -Introduce CXGlobalOptFlags enum for the new options that can be set on the CXIndex object. -CXGlobalOpt_ThreadBackgroundPriorityForIndexing affects: clang_indexSourceFile clang_indexTranslationUnit clang_parseTranslationUnit clang_saveTranslationUnit -CXGlobalOpt_ThreadBackgroundPriorityForEditing affects: clang_reparseTranslationUnit clang_codeCompleteAt clang_annotateTokens rdar://9075282 llvm-svn: 153562
* Introduce a new libclang API to determine the parent context of a codeDouglas Gregor2012-03-271-0/+20
| | | | | | | | | completion item. For example, if the code completion itself represents a declaration in a namespace (say, std::vector), then this API retrieves the cursor kind and name of the namespace (std). Implements <rdar://problem/11121951>. llvm-svn: 153545
* [libclang] Introduce indexing option CXIndexOpt_SuppressWarnings, whichArgyrios Kyrtzidis2012-03-271-1/+6
| | | | | | | | disables all compiler warnings. rdar://11059556 llvm-svn: 153539
* [libclang] Enhance clang_getOverriddenCursors.Argyrios Kyrtzidis2012-03-081-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | Basically the current design is: -for an implementation method, show as overridden the interface method. This is not useful, and is inconsistent with the C++ side -for an interface method, show as overridden the protocols methods (this is desirable) and the methods from the categories; methods from categories are not useful since they are considered the same method (same USR). -If there is a protocol method or category method reported, it does not check the super class for overridden methods. This is really problematic since overridden methods from super class is what we want to give back. Change clang_getOverriddenCursors to show as overridden any method in the class's base class, its protocols, or its categories' protocols, that has the same selector and is of the same kind (class or instance). If no such method exists, the search continues to the class's superclass, its protocols, and its categories, and so on. A method from an Objective-C implementation is considered to override the same methods as its corresponding method in the interface. rdar://10967206 llvm-svn: 152270
* Add new code migrator support for migrating existing Objective-C code to useTed Kremenek2012-03-061-0/+14
| | | | | | | | | | | the new Objective-C NSArray/NSDictionary/NSNumber literal syntax. This introduces a new library, libEdit, which provides a new way to support migration of code that improves on the original ARC migrator. We now believe that most of its functionality can be refactored into the existing libraries, and thus this new library may shortly disappear. llvm-svn: 152141
* And libclang cursor/indexing support for new Objective-C ↵Ted Kremenek2012-03-061-1/+5
| | | | | | NSArray/NSDictionary/NSNumber literals. llvm-svn: 152138
* [libclang] When indexing an objc property, also provide information aboutArgyrios Kyrtzidis2012-02-281-0/+9
| | | | | | | | the getter/setter objc method entities that the property is associated with. rdar://10244558 llvm-svn: 151634
* Don't record nested macro expansions in the preprocessing record,Argyrios Kyrtzidis2012-02-251-22/+1
| | | | | | | | it can only bring pain when dealing with preprocessor abuse (see: boost). rdar://10898986 llvm-svn: 151427
* Implement indexing support for lambdas in libclang (both kinds), asDouglas Gregor2012-02-151-2/+22
| | | | | | | well as improving the RecursiveASTVisitor's walk of lambda expressions. llvm-svn: 150549
* [libclang] Indexing: only index implicit template instantiations via an ↵Argyrios Kyrtzidis2012-02-141-1/+7
| | | | | | opt-in indexing option. llvm-svn: 150517
* libclang: Mark clang_Cursor_isNull with CINDEX_LINKAGE to make it available ↵Benjamin Kramer2012-02-011-1/+1
| | | | | | | | on windows. Patch by Timothy J Fontaine! llvm-svn: 149533
* [libclang] Add CXIndexOpt_IndexFunctionLocalSymbols indexing option to indicateArgyrios Kyrtzidis2012-01-141-1/+7
| | | | | | that one wants indexing callbacks for function-local symbols as well. llvm-svn: 148160
* Mass rename C1x references to C11. The name hasn't proliferated like "C++0x" ↵Benjamin Kramer2011-12-231-1/+1
| | | | | | | | so this patch is surprisingly small. Also drop -Wc1x-extensions in favor of -Wc11-extensions. I don't think we need to keep this around for compatibility. llvm-svn: 147221
* [libclang] Indexing API: provide an attribute list inside CXIdxEntityInfoArgyrios Kyrtzidis2011-12-151-13/+15
| | | | | | so that we can access the attributes of an entity for a reference. llvm-svn: 146616
* [libclang] Indexing API: Provide the protocols list for objc categories as well.Argyrios Kyrtzidis2011-12-131-7/+8
| | | | | | rdar://10573361 llvm-svn: 146498
* [libclang] Indexing API: Fix indexing of missed references.Argyrios Kyrtzidis2011-12-131-2/+3
| | | | | | rdar://10567864&10567916 llvm-svn: 146497
* Add clang_getDiagnosticSetFromTU() to libclang. Fixes ↵Ted Kremenek2011-12-091-0/+9
| | | | | | <rdar://problem/10553081>. llvm-svn: 146287
* [libclang] Indexing API: provide both the semantic and the lexical container.Argyrios Kyrtzidis2011-12-071-2/+7
| | | | | | They are generally the same except in C++ cases like out-of-line member functions. llvm-svn: 146069
* [libclang] Introduce CXIdxEntityLanguage that indicates the languageArgyrios Kyrtzidis2011-12-071-2/+9
| | | | | | of an indexed entity. llvm-svn: 146067
* [libclang] API enhancements by Joe Groff!Argyrios Kyrtzidis2011-12-061-4/+107
| | | | | | | | | | | | | - Exposes a CXType_Vector type kind for vector types. - Adds generalized versions of the clang_getArrayElementType and clang_getArraySize functions, named clang_getElementType and clang_getNumElements, which work on array, vector, or complex types. - Adds additional functions for querying function types. clang_isFunctionTypeVariadic returns true if a function type is variadic. clang_getFunctionCallingConv returns an enumeration value indicating the calling convention of the function type. clang_getNumArgTypes returns the number of static argument types, and clang_getArgType gets the type of an argument. - Adds a clang_getTypedefDeclUnderlyingType function to get the underlying type from a TypedefDecl cursor. - Adds a clang_getEnumDeclIntegerType function to get the integer type from an EnumDecl cursor. - Adds clang_getEnumConstantDeclValue and clang_getEnumConstantDeclUnsignedValue functions to get the value of an EnumConstantDecl as a signed or unsigned long long, respectively. - Exposes a CXCursor_AsmLabelAttr cursor kind for __asm__("label") attributes. - Alters clang_getCursorSpelling to return the label value for AsmLabelAttr-kind cursors. llvm-svn: 145972
* [libclang] When indexing a field in a C++ class, return an entityArgyrios Kyrtzidis2011-12-051-1/+2
| | | | | | of kind CXIdxEntity_CXXInstanceVariable. rdar://10522503. llvm-svn: 145859
* [libclang] Indexing API: Support C++ symbols.Argyrios Kyrtzidis2011-11-221-11/+106
| | | | llvm-svn: 145058
* [libclang] Indexing API:Argyrios Kyrtzidis2011-11-181-6/+33
| | | | | | | | | -For indexDeclaration, also pass the declaration attributes as an array of cursors. -Rename CXIndexOpt_OneRefPerFile -> CXIndexOpt_SuppressRedundantRefs, and only pass a reference if a declaration/definition does not exist in the file. -Other fixes. llvm-svn: 144942
* [libclang] Introduce a new function to apply the indexing callbacks on an ↵Argyrios Kyrtzidis2011-11-151-4/+42
| | | | | | | | existing CXTranslationUnit, mainly to be used for indexing a PCH. llvm-svn: 144623
* [libclang] Slight changes to the indexing API and bigger internal changes ↵Argyrios Kyrtzidis2011-11-141-16/+21
| | | | | | for it. llvm-svn: 144577
* [libclang] Further simplify the indexing API.Argyrios Kyrtzidis2011-11-121-208/+44
| | | | | | | That stuff can be added later on if we need them. Also add some const goodness. llvm-svn: 144446
* Fix some typos, grammar errors, etc. in cursor kind descriptionsDouglas Gregor2011-11-111-4/+4
| | | | llvm-svn: 144412
* include/clang-c/Index.h: Update CINDEX_LINKAGE on 6 decls. Corresponds to ↵NAKAMURA Takumi2011-11-111-5/+6
| | | | | | libclang.exports in r144343 llvm-svn: 144357
* [libclang] Simplify the indexing API.Argyrios Kyrtzidis2011-11-111-295/+100
| | | | | | | | Cut down the number of callbacks to more generic ones. Clients can check an enum to find out what kind of declaration it is and they can call functions to get more specific information than the generic provided info. llvm-svn: 144343
* serialized diagnostics: implement full deserialization of clang diagnostics ↵Ted Kremenek2011-11-101-0/+80
| | | | | | | | via the libclang API. I've tested it on simple cases and it works. Test cases to follow as well as a few tweaks. llvm-svn: 144269
* Fix comment typosDouglas Gregor2011-11-081-1/+1
| | | | llvm-svn: 144120
* [libclang] Add comments.Argyrios Kyrtzidis2011-10-271-0/+339
| | | | llvm-svn: 143111
* [libclang] Index implicit property references.Argyrios Kyrtzidis2011-10-181-0/+6
| | | | llvm-svn: 142355
* [libclang] Introduce a new high level API for indexing clients that assumesArgyrios Kyrtzidis2011-10-171-0/+323
| | | | | | | | | more of the work involved in indexing a translation unit and simplifies client implementations. Only C/ObjC for now, C++ (and comments) to come. llvm-svn: 142233
* Added clang_getCompletionAnnotation and clang_getCompletionNumAnnotations toErik Verbruggen2011-10-141-2/+28
| | | | | | retrieve annotations from completion string. llvm-svn: 141953
* Allow for annotate attributes after access specifiers. When suchErik Verbruggen2011-10-131-1/+2
| | | | | | attributes are found, propagate them to subsequent declarations. llvm-svn: 141861
* [libclang] Removed accidental addition of CXCursor_AnnotateAttr.Erik Verbruggen2011-10-061-2/+1
| | | | llvm-svn: 141292
* [libclang] Fix symbol export for clang_Range_isNull so MSVC won't complain.Erik Verbruggen2011-10-061-2/+3
| | | | llvm-svn: 141282
* Added CXAvailability_NotAccessible to indicate that a declaration is ↵Erik Verbruggen2011-10-061-1/+6
| | | | | | available, but not accessible from the current code completion context. llvm-svn: 141278
OpenPOWER on IntegriCloud