clang API Documentation
#include <sys/stat.h>#include <time.h>#include <stdio.h>

Go to the source code of this file.
Classes | |
| struct | CXUnsavedFile |
| Provides the contents of a file that has not yet been saved to disk. More... | |
| struct | CXVersion |
| Describes a version number of the form major.minor.subminor. More... | |
| struct | CXString |
| A character string. More... | |
| struct | CXSourceLocation |
| Identifies a specific source location within a translation unit. More... | |
| struct | CXSourceRange |
| Identifies a half-open character range in the source code. More... | |
| struct | CXTUResourceUsageEntry |
| struct | CXTUResourceUsage |
| The memory usage of a CXTranslationUnit, broken into categories. More... | |
| struct | CXCursor |
| A cursor representing some element in the abstract syntax tree for a translation unit. More... | |
| struct | CXPlatformAvailability |
| struct | CXType |
| The type of an element in the abstract syntax tree. More... | |
| struct | CXToken |
| Describes a single preprocessing token. More... | |
| struct | CXCompletionResult |
| A single result of code completion. More... | |
| struct | CXCodeCompleteResults |
| Contains the results of code-completion. More... | |
| struct | CXCursorAndRangeVisitor |
| struct | CXIdxLoc |
| Source location passed to index callbacks. More... | |
| struct | CXIdxIncludedFileInfo |
| Data for. More... | |
| struct | CXIdxImportedASTFileInfo |
| Data for. More... | |
| struct | CXIdxAttrInfo |
| struct | CXIdxEntityInfo |
| struct | CXIdxContainerInfo |
| struct | CXIdxIBOutletCollectionAttrInfo |
| struct | CXIdxDeclInfo |
| struct | CXIdxObjCContainerDeclInfo |
| struct | CXIdxBaseClassInfo |
| struct | CXIdxObjCProtocolRefInfo |
| struct | CXIdxObjCProtocolRefListInfo |
| struct | CXIdxObjCInterfaceDeclInfo |
| struct | CXIdxObjCCategoryDeclInfo |
| struct | CXIdxObjCPropertyDeclInfo |
| struct | CXIdxCXXClassDeclInfo |
| struct | CXIdxEntityRefInfo |
| Data for. More... | |
| struct | IndexerCallbacks |
Defines | |
| #define | CINDEX_LINKAGE |
| #define | CINDEX_DEPRECATED |
Typedefs | |
| typedef void * | CXIndex |
| An "index" that consists of a set of translation units that would typically be linked together into an executable or library. | |
| typedef struct CXTranslationUnitImpl * | CXTranslationUnit |
| A single translation unit, which resides in an index. | |
| typedef void * | CXClientData |
| Opaque pointer representing client data that will be passed through to various callbacks and visitors. | |
| typedef struct CXVersion | CXVersion |
| Describes a version number of the form major.minor.subminor. | |
| typedef void * | CXFile |
| A particular source file that is part of a translation unit. | |
| typedef void * | CXDiagnostic |
| A single diagnostic, containing the diagnostic's severity, location, text, source ranges, and fix-it hints. | |
| typedef void * | CXDiagnosticSet |
| A group of CXDiagnostics. | |
| typedef struct CXTUResourceUsageEntry | CXTUResourceUsageEntry |
| typedef struct CXTUResourceUsage | CXTUResourceUsage |
| The memory usage of a CXTranslationUnit, broken into categories. | |
| typedef struct CXPlatformAvailability | CXPlatformAvailability |
| typedef struct CXCursorSetImpl * | CXCursorSet |
| A fast container representing a set of CXCursors. | |
| typedef enum CXChildVisitResult(* | CXCursorVisitor )(CXCursor cursor, CXCursor parent, CXClientData client_data) |
| Visitor invoked for each cursor found by a traversal. | |
| typedef enum CXTokenKind | CXTokenKind |
| Describes a kind of token. | |
| typedef void * | CXCompletionString |
| A semantic string that describes a code-completion result. | |
| typedef void(* | CXInclusionVisitor )(CXFile included_file, CXSourceLocation *inclusion_stack, unsigned include_len, CXClientData client_data) |
| Visitor invoked for each file in a translation unit (used with clang_getInclusions()). | |
| typedef void * | CXRemapping |
| A remapping of original source files and their translated files. | |
| typedef void * | CXIdxClientFile |
| The client's data object that is associated with a CXFile. | |
| typedef void * | CXIdxClientEntity |
| The client's data object that is associated with a semantic entity. | |
| typedef void * | CXIdxClientContainer |
| The client's data object that is associated with a semantic container of entities. | |
| typedef void * | CXIdxClientASTFile |
| The client's data object that is associated with an AST file (PCH or module). | |
| typedef void * | CXIndexAction |
| An indexing action, to be applied to one or multiple translation units but not on concurrent threads. If there are threads doing indexing concurrently, they should use different CXIndexAction objects. | |
Enumerations | |
| enum | CXAvailabilityKind { CXAvailability_Available, CXAvailability_Deprecated, CXAvailability_NotAvailable, CXAvailability_NotAccessible } |
| Describes the availability of a particular entity, which indicates whether the use of this entity will result in a warning or error due to it being deprecated or unavailable. More... | |
| enum | CXGlobalOptFlags { CXGlobalOpt_None = 0x0, CXGlobalOpt_ThreadBackgroundPriorityForIndexing = 0x1, CXGlobalOpt_ThreadBackgroundPriorityForEditing = 0x2, CXGlobalOpt_ThreadBackgroundPriorityForAll } |
| enum | CXDiagnosticSeverity { CXDiagnostic_Ignored = 0, CXDiagnostic_Note = 1, CXDiagnostic_Warning = 2, CXDiagnostic_Error = 3, CXDiagnostic_Fatal = 4 } |
| Describes the severity of a particular diagnostic. More... | |
| enum | CXLoadDiag_Error { CXLoadDiag_None = 0, CXLoadDiag_Unknown = 1, CXLoadDiag_CannotLoad = 2, CXLoadDiag_InvalidFile = 3 } |
Describes the kind of error that occurred (if any) in a call to clang_loadDiagnostics. More... | |
| enum | CXDiagnosticDisplayOptions { CXDiagnostic_DisplaySourceLocation = 0x01, CXDiagnostic_DisplayColumn = 0x02, CXDiagnostic_DisplaySourceRanges = 0x04, CXDiagnostic_DisplayOption = 0x08, CXDiagnostic_DisplayCategoryId = 0x10, CXDiagnostic_DisplayCategoryName = 0x20 } |
| Options to control the display of diagnostics. More... | |
| enum | CXTranslationUnit_Flags { CXTranslationUnit_None = 0x0, CXTranslationUnit_DetailedPreprocessingRecord = 0x01, CXTranslationUnit_Incomplete = 0x02, CXTranslationUnit_PrecompiledPreamble = 0x04, CXTranslationUnit_CacheCompletionResults = 0x08, CXTranslationUnit_CXXPrecompiledPreamble = 0x10, CXTranslationUnit_CXXChainedPCH = 0x20, CXTranslationUnit_SkipFunctionBodies = 0x40 } |
| Flags that control the creation of translation units. More... | |
| enum | CXSaveTranslationUnit_Flags { CXSaveTranslationUnit_None = 0x0 } |
| Flags that control how translation units are saved. More... | |
| enum | CXSaveError { CXSaveError_None = 0, CXSaveError_Unknown = 1, CXSaveError_TranslationErrors = 2, CXSaveError_InvalidTU = 3 } |
Describes the kind of error that occurred (if any) in a call to clang_saveTranslationUnit(). More... | |
| enum | CXReparse_Flags { CXReparse_None = 0x0 } |
| Flags that control the reparsing of translation units. More... | |
| enum | CXTUResourceUsageKind { CXTUResourceUsage_AST = 1, CXTUResourceUsage_Identifiers = 2, CXTUResourceUsage_Selectors = 3, CXTUResourceUsage_GlobalCompletionResults = 4, CXTUResourceUsage_SourceManagerContentCache = 5, CXTUResourceUsage_AST_SideTables = 6, CXTUResourceUsage_SourceManager_Membuffer_Malloc = 7, CXTUResourceUsage_SourceManager_Membuffer_MMap = 8, CXTUResourceUsage_ExternalASTSource_Membuffer_Malloc = 9, CXTUResourceUsage_ExternalASTSource_Membuffer_MMap = 10, CXTUResourceUsage_Preprocessor = 11, CXTUResourceUsage_PreprocessingRecord = 12, CXTUResourceUsage_SourceManager_DataStructures = 13, CXTUResourceUsage_Preprocessor_HeaderSearch = 14, CXTUResourceUsage_MEMORY_IN_BYTES_BEGIN = CXTUResourceUsage_AST, CXTUResourceUsage_MEMORY_IN_BYTES_END, CXTUResourceUsage_First = CXTUResourceUsage_AST, CXTUResourceUsage_Last = CXTUResourceUsage_Preprocessor_HeaderSearch } |
| Categorizes how memory is being used by a translation unit. More... | |
| enum | CXCursorKind { CXCursor_UnexposedDecl = 1, CXCursor_StructDecl = 2, CXCursor_UnionDecl = 3, CXCursor_ClassDecl = 4, CXCursor_EnumDecl = 5, CXCursor_FieldDecl = 6, CXCursor_EnumConstantDecl = 7, CXCursor_FunctionDecl = 8, CXCursor_VarDecl = 9, CXCursor_ParmDecl = 10, CXCursor_ObjCInterfaceDecl = 11, CXCursor_ObjCCategoryDecl = 12, CXCursor_ObjCProtocolDecl = 13, CXCursor_ObjCPropertyDecl = 14, CXCursor_ObjCIvarDecl = 15, CXCursor_ObjCInstanceMethodDecl = 16, CXCursor_ObjCClassMethodDecl = 17, CXCursor_ObjCImplementationDecl = 18, CXCursor_ObjCCategoryImplDecl = 19, CXCursor_TypedefDecl = 20, CXCursor_CXXMethod = 21, CXCursor_Namespace = 22, CXCursor_LinkageSpec = 23, CXCursor_Constructor = 24, CXCursor_Destructor = 25, CXCursor_ConversionFunction = 26, CXCursor_TemplateTypeParameter = 27, CXCursor_NonTypeTemplateParameter = 28, CXCursor_TemplateTemplateParameter = 29, CXCursor_FunctionTemplate = 30, CXCursor_ClassTemplate = 31, CXCursor_ClassTemplatePartialSpecialization = 32, CXCursor_NamespaceAlias = 33, CXCursor_UsingDirective = 34, CXCursor_UsingDeclaration = 35, CXCursor_TypeAliasDecl = 36, CXCursor_ObjCSynthesizeDecl = 37, CXCursor_ObjCDynamicDecl = 38, CXCursor_CXXAccessSpecifier = 39, CXCursor_FirstDecl = CXCursor_UnexposedDecl, CXCursor_LastDecl = CXCursor_CXXAccessSpecifier, CXCursor_FirstRef = 40, CXCursor_ObjCSuperClassRef = 40, CXCursor_ObjCProtocolRef = 41, CXCursor_ObjCClassRef = 42, CXCursor_TypeRef = 43, CXCursor_CXXBaseSpecifier = 44, CXCursor_TemplateRef = 45, CXCursor_NamespaceRef = 46, CXCursor_MemberRef = 47, CXCursor_LabelRef = 48, CXCursor_OverloadedDeclRef = 49, CXCursor_VariableRef = 50, CXCursor_LastRef = CXCursor_VariableRef, CXCursor_FirstInvalid = 70, CXCursor_InvalidFile = 70, CXCursor_NoDeclFound = 71, CXCursor_NotImplemented = 72, CXCursor_InvalidCode = 73, CXCursor_LastInvalid = CXCursor_InvalidCode, CXCursor_FirstExpr = 100, CXCursor_UnexposedExpr = 100, CXCursor_DeclRefExpr = 101, CXCursor_MemberRefExpr = 102, CXCursor_CallExpr = 103, CXCursor_ObjCMessageExpr = 104, CXCursor_BlockExpr = 105, CXCursor_IntegerLiteral = 106, CXCursor_FloatingLiteral = 107, CXCursor_ImaginaryLiteral = 108, CXCursor_StringLiteral = 109, CXCursor_CharacterLiteral = 110, CXCursor_ParenExpr = 111, CXCursor_UnaryOperator = 112, CXCursor_ArraySubscriptExpr = 113, CXCursor_BinaryOperator = 114, CXCursor_CompoundAssignOperator = 115, CXCursor_ConditionalOperator = 116, CXCursor_CStyleCastExpr = 117, CXCursor_CompoundLiteralExpr = 118, CXCursor_InitListExpr = 119, CXCursor_AddrLabelExpr = 120, CXCursor_StmtExpr = 121, CXCursor_GenericSelectionExpr = 122, CXCursor_GNUNullExpr = 123, CXCursor_CXXStaticCastExpr = 124, CXCursor_CXXDynamicCastExpr = 125, CXCursor_CXXReinterpretCastExpr = 126, CXCursor_CXXConstCastExpr = 127, CXCursor_CXXFunctionalCastExpr = 128, CXCursor_CXXTypeidExpr = 129, CXCursor_CXXBoolLiteralExpr = 130, CXCursor_CXXNullPtrLiteralExpr = 131, CXCursor_CXXThisExpr = 132, CXCursor_CXXThrowExpr = 133, CXCursor_CXXNewExpr = 134, CXCursor_CXXDeleteExpr = 135, CXCursor_UnaryExpr = 136, CXCursor_ObjCStringLiteral = 137, CXCursor_ObjCEncodeExpr = 138, CXCursor_ObjCSelectorExpr = 139, CXCursor_ObjCProtocolExpr = 140, CXCursor_ObjCBridgedCastExpr = 141, CXCursor_PackExpansionExpr = 142, CXCursor_SizeOfPackExpr = 143, CXCursor_LambdaExpr = 144, CXCursor_ObjCBoolLiteralExpr = 145, CXCursor_LastExpr = CXCursor_ObjCBoolLiteralExpr, CXCursor_FirstStmt = 200, CXCursor_UnexposedStmt = 200, CXCursor_LabelStmt = 201, CXCursor_CompoundStmt = 202, CXCursor_CaseStmt = 203, CXCursor_DefaultStmt = 204, CXCursor_IfStmt = 205, CXCursor_SwitchStmt = 206, CXCursor_WhileStmt = 207, CXCursor_DoStmt = 208, CXCursor_ForStmt = 209, CXCursor_GotoStmt = 210, CXCursor_IndirectGotoStmt = 211, CXCursor_ContinueStmt = 212, CXCursor_BreakStmt = 213, CXCursor_ReturnStmt = 214, CXCursor_AsmStmt = 215, CXCursor_ObjCAtTryStmt = 216, CXCursor_ObjCAtCatchStmt = 217, CXCursor_ObjCAtFinallyStmt = 218, CXCursor_ObjCAtThrowStmt = 219, CXCursor_ObjCAtSynchronizedStmt = 220, CXCursor_ObjCAutoreleasePoolStmt = 221, CXCursor_ObjCForCollectionStmt = 222, CXCursor_CXXCatchStmt = 223, CXCursor_CXXTryStmt = 224, CXCursor_CXXForRangeStmt = 225, CXCursor_SEHTryStmt = 226, CXCursor_SEHExceptStmt = 227, CXCursor_SEHFinallyStmt = 228, CXCursor_NullStmt = 230, CXCursor_DeclStmt = 231, CXCursor_LastStmt = CXCursor_DeclStmt, CXCursor_TranslationUnit = 300, CXCursor_FirstAttr = 400, CXCursor_UnexposedAttr = 400, CXCursor_IBActionAttr = 401, CXCursor_IBOutletAttr = 402, CXCursor_IBOutletCollectionAttr = 403, CXCursor_CXXFinalAttr = 404, CXCursor_CXXOverrideAttr = 405, CXCursor_AnnotateAttr = 406, CXCursor_AsmLabelAttr = 407, CXCursor_LastAttr = CXCursor_AsmLabelAttr, CXCursor_PreprocessingDirective = 500, CXCursor_MacroDefinition = 501, CXCursor_MacroExpansion = 502, CXCursor_MacroInstantiation = CXCursor_MacroExpansion, CXCursor_InclusionDirective = 503, CXCursor_FirstPreprocessing = CXCursor_PreprocessingDirective, CXCursor_LastPreprocessing = CXCursor_InclusionDirective } |
| Describes the kind of entity that a cursor refers to. More... | |
| enum | CXLinkageKind { CXLinkage_Invalid, CXLinkage_NoLinkage, CXLinkage_Internal, CXLinkage_UniqueExternal, CXLinkage_External } |
| Describe the linkage of the entity referred to by a cursor. More... | |
| enum | CXLanguageKind { CXLanguage_Invalid = 0, CXLanguage_C, CXLanguage_ObjC, CXLanguage_CPlusPlus } |
| Describe the "language" of the entity referred to by a cursor. More... | |
| enum | CXTypeKind { CXType_Invalid = 0, CXType_Unexposed = 1, CXType_Void = 2, CXType_Bool = 3, CXType_Char_U = 4, CXType_UChar = 5, CXType_Char16 = 6, CXType_Char32 = 7, CXType_UShort = 8, CXType_UInt = 9, CXType_ULong = 10, CXType_ULongLong = 11, CXType_UInt128 = 12, CXType_Char_S = 13, CXType_SChar = 14, CXType_WChar = 15, CXType_Short = 16, CXType_Int = 17, CXType_Long = 18, CXType_LongLong = 19, CXType_Int128 = 20, CXType_Float = 21, CXType_Double = 22, CXType_LongDouble = 23, CXType_NullPtr = 24, CXType_Overload = 25, CXType_Dependent = 26, CXType_ObjCId = 27, CXType_ObjCClass = 28, CXType_ObjCSel = 29, CXType_FirstBuiltin = CXType_Void, CXType_LastBuiltin = CXType_ObjCSel, CXType_Complex = 100, CXType_Pointer = 101, CXType_BlockPointer = 102, CXType_LValueReference = 103, CXType_RValueReference = 104, CXType_Record = 105, CXType_Enum = 106, CXType_Typedef = 107, CXType_ObjCInterface = 108, CXType_ObjCObjectPointer = 109, CXType_FunctionNoProto = 110, CXType_FunctionProto = 111, CXType_ConstantArray = 112, CXType_Vector = 113 } |
| Describes the kind of type. More... | |
| enum | CXCallingConv { CXCallingConv_Default = 0, CXCallingConv_C = 1, CXCallingConv_X86StdCall = 2, CXCallingConv_X86FastCall = 3, CXCallingConv_X86ThisCall = 4, CXCallingConv_X86Pascal = 5, CXCallingConv_AAPCS = 6, CXCallingConv_AAPCS_VFP = 7, CXCallingConv_Invalid = 100, CXCallingConv_Unexposed = 200 } |
| Describes the calling convention of a function type. More... | |
| enum | CX_CXXAccessSpecifier { CX_CXXInvalidAccessSpecifier, CX_CXXPublic, CX_CXXProtected, CX_CXXPrivate } |
| Represents the C++ access control level to a base class for a cursor with kind CX_CXXBaseSpecifier. More... | |
| enum | CXChildVisitResult { CXChildVisit_Break, CXChildVisit_Continue, CXChildVisit_Recurse } |
| Describes how the traversal of the children of a particular cursor should proceed after visiting a particular child cursor. More... | |
| enum | CXNameRefFlags { CXNameRange_WantQualifier = 0x1, CXNameRange_WantTemplateArgs = 0x2, CXNameRange_WantSinglePiece = 0x4 } |
| enum | CXTokenKind { CXToken_Punctuation, CXToken_Keyword, CXToken_Identifier, CXToken_Literal, CXToken_Comment } |
| Describes a kind of token. More... | |
| enum | CXCompletionChunkKind { CXCompletionChunk_Optional, CXCompletionChunk_TypedText, CXCompletionChunk_Text, CXCompletionChunk_Placeholder, CXCompletionChunk_Informative, CXCompletionChunk_CurrentParameter, CXCompletionChunk_LeftParen, CXCompletionChunk_RightParen, CXCompletionChunk_LeftBracket, CXCompletionChunk_RightBracket, CXCompletionChunk_LeftBrace, CXCompletionChunk_RightBrace, CXCompletionChunk_LeftAngle, CXCompletionChunk_RightAngle, CXCompletionChunk_Comma, CXCompletionChunk_ResultType, CXCompletionChunk_Colon, CXCompletionChunk_SemiColon, CXCompletionChunk_Equal, CXCompletionChunk_HorizontalSpace, CXCompletionChunk_VerticalSpace } |
| Describes a single piece of text within a code-completion string. More... | |
| enum | CXCodeComplete_Flags { CXCodeComplete_IncludeMacros = 0x01, CXCodeComplete_IncludeCodePatterns = 0x02 } |
Flags that can be passed to clang_codeCompleteAt() to modify its behavior. More... | |
| enum | CXCompletionContext { CXCompletionContext_Unexposed = 0, CXCompletionContext_AnyType = 1 << 0, CXCompletionContext_AnyValue = 1 << 1, CXCompletionContext_ObjCObjectValue = 1 << 2, CXCompletionContext_ObjCSelectorValue = 1 << 3, CXCompletionContext_CXXClassTypeValue = 1 << 4, CXCompletionContext_DotMemberAccess = 1 << 5, CXCompletionContext_ArrowMemberAccess = 1 << 6, CXCompletionContext_ObjCPropertyAccess = 1 << 7, CXCompletionContext_EnumTag = 1 << 8, CXCompletionContext_UnionTag = 1 << 9, CXCompletionContext_StructTag = 1 << 10, CXCompletionContext_ClassTag = 1 << 11, CXCompletionContext_Namespace = 1 << 12, CXCompletionContext_NestedNameSpecifier = 1 << 13, CXCompletionContext_ObjCInterface = 1 << 14, CXCompletionContext_ObjCProtocol = 1 << 15, CXCompletionContext_ObjCCategory = 1 << 16, CXCompletionContext_ObjCInstanceMessage = 1 << 17, CXCompletionContext_ObjCClassMessage = 1 << 18, CXCompletionContext_ObjCSelectorName = 1 << 19, CXCompletionContext_MacroName = 1 << 20, CXCompletionContext_NaturalLanguage = 1 << 21, CXCompletionContext_Unknown = ((1 << 22) - 1) } |
| Bits that represent the context under which completion is occurring. More... | |
| enum | CXVisitorResult { CXVisit_Break, CXVisit_Continue } |
| enum | CXIdxEntityKind { CXIdxEntity_Unexposed = 0, CXIdxEntity_Typedef = 1, CXIdxEntity_Function = 2, CXIdxEntity_Variable = 3, CXIdxEntity_Field = 4, CXIdxEntity_EnumConstant = 5, CXIdxEntity_ObjCClass = 6, CXIdxEntity_ObjCProtocol = 7, CXIdxEntity_ObjCCategory = 8, CXIdxEntity_ObjCInstanceMethod = 9, CXIdxEntity_ObjCClassMethod = 10, CXIdxEntity_ObjCProperty = 11, CXIdxEntity_ObjCIvar = 12, CXIdxEntity_Enum = 13, CXIdxEntity_Struct = 14, CXIdxEntity_Union = 15, CXIdxEntity_CXXClass = 16, CXIdxEntity_CXXNamespace = 17, CXIdxEntity_CXXNamespaceAlias = 18, CXIdxEntity_CXXStaticVariable = 19, CXIdxEntity_CXXStaticMethod = 20, CXIdxEntity_CXXInstanceMethod = 21, CXIdxEntity_CXXConstructor = 22, CXIdxEntity_CXXDestructor = 23, CXIdxEntity_CXXConversionFunction = 24, CXIdxEntity_CXXTypeAlias = 25 } |
| enum | CXIdxEntityLanguage { CXIdxEntityLang_None = 0, CXIdxEntityLang_C = 1, CXIdxEntityLang_ObjC = 2, CXIdxEntityLang_CXX = 3 } |
| enum | CXIdxEntityCXXTemplateKind { CXIdxEntity_NonTemplate = 0, CXIdxEntity_Template = 1, CXIdxEntity_TemplatePartialSpecialization = 2, CXIdxEntity_TemplateSpecialization = 3 } |
| Extra C++ template information for an entity. This can apply to: CXIdxEntity_Function CXIdxEntity_CXXClass CXIdxEntity_CXXStaticMethod CXIdxEntity_CXXInstanceMethod CXIdxEntity_CXXConstructor CXIdxEntity_CXXConversionFunction CXIdxEntity_CXXTypeAlias. More... | |
| enum | CXIdxAttrKind { CXIdxAttr_Unexposed = 0, CXIdxAttr_IBAction = 1, CXIdxAttr_IBOutlet = 2, CXIdxAttr_IBOutletCollection = 3 } |
| enum | CXIdxObjCContainerKind { CXIdxObjCContainer_ForwardRef = 0, CXIdxObjCContainer_Interface = 1, CXIdxObjCContainer_Implementation = 2 } |
| enum | CXIdxEntityRefKind { CXIdxEntityRef_Direct = 1, CXIdxEntityRef_Implicit = 2 } |
| Data for. More... | |
| enum | CXIndexOptFlags { CXIndexOpt_None = 0x0, CXIndexOpt_SuppressRedundantRefs = 0x1, CXIndexOpt_IndexFunctionLocalSymbols = 0x2, CXIndexOpt_IndexImplicitTemplateInstantiations = 0x4, CXIndexOpt_SuppressWarnings = 0x8 } |
Functions | |
| CINDEX_LINKAGE const char * | clang_getCString (CXString string) |
| Retrieve the character data associated with the given string. | |
| CINDEX_LINKAGE void | clang_disposeString (CXString string) |
| Free the given string,. | |
| CINDEX_LINKAGE CXIndex | clang_createIndex (int excludeDeclarationsFromPCH, int displayDiagnostics) |
| clang_createIndex() provides a shared context for creating translation units. It provides two options: | |
| CINDEX_LINKAGE void | clang_disposeIndex (CXIndex index) |
| Destroy the given index. | |
| CINDEX_LINKAGE void | clang_CXIndex_setGlobalOptions (CXIndex, unsigned options) |
| Sets general options associated with a CXIndex. | |
| CINDEX_LINKAGE unsigned | clang_CXIndex_getGlobalOptions (CXIndex) |
| Gets the general options associated with a CXIndex. | |
| CINDEX_LINKAGE CXString | clang_getFileName (CXFile SFile) |
| Retrieve the complete file and path name of the given file. | |
| CINDEX_LINKAGE time_t | clang_getFileTime (CXFile SFile) |
| Retrieve the last modification time of the given file. | |
| CINDEX_LINKAGE unsigned | clang_isFileMultipleIncludeGuarded (CXTranslationUnit tu, CXFile file) |
| Determine whether the given header is guarded against multiple inclusions, either with the conventional #ifndef/#define/#endif macro guards or with #pragma once. | |
| CINDEX_LINKAGE CXFile | clang_getFile (CXTranslationUnit tu, const char *file_name) |
| Retrieve a file handle within the given translation unit. | |
| CINDEX_LINKAGE CXSourceLocation | clang_getNullLocation () |
| Retrieve a NULL (invalid) source location. | |
| CINDEX_LINKAGE unsigned | clang_equalLocations (CXSourceLocation loc1, CXSourceLocation loc2) |
| CINDEX_LINKAGE CXSourceLocation | clang_getLocation (CXTranslationUnit tu, CXFile file, unsigned line, unsigned column) |
| Retrieves the source location associated with a given file/line/column in a particular translation unit. | |
| CINDEX_LINKAGE CXSourceLocation | clang_getLocationForOffset (CXTranslationUnit tu, CXFile file, unsigned offset) |
| Retrieves the source location associated with a given character offset in a particular translation unit. | |
| CINDEX_LINKAGE CXSourceRange | clang_getNullRange () |
| Retrieve a NULL (invalid) source range. | |
| CINDEX_LINKAGE CXSourceRange | clang_getRange (CXSourceLocation begin, CXSourceLocation end) |
| Retrieve a source range given the beginning and ending source locations. | |
| CINDEX_LINKAGE unsigned | clang_equalRanges (CXSourceRange range1, CXSourceRange range2) |
| Determine whether two ranges are equivalent. | |
| CINDEX_LINKAGE int | clang_Range_isNull (CXSourceRange range) |
| Returns non-zero if. | |
| CINDEX_LINKAGE void | clang_getExpansionLocation (CXSourceLocation location, CXFile *file, unsigned *line, unsigned *column, unsigned *offset) |
| Retrieve the file, line, column, and offset represented by the given source location. | |
| CINDEX_LINKAGE void | clang_getPresumedLocation (CXSourceLocation location, CXString *filename, unsigned *line, unsigned *column) |
| Retrieve the file, line, column, and offset represented by the given source location, as specified in a # line directive. | |
| CINDEX_LINKAGE void | clang_getInstantiationLocation (CXSourceLocation location, CXFile *file, unsigned *line, unsigned *column, unsigned *offset) |
| Legacy API to retrieve the file, line, column, and offset represented by the given source location. | |
| CINDEX_LINKAGE void | clang_getSpellingLocation (CXSourceLocation location, CXFile *file, unsigned *line, unsigned *column, unsigned *offset) |
| Retrieve the file, line, column, and offset represented by the given source location. | |
| CINDEX_LINKAGE CXSourceLocation | clang_getRangeStart (CXSourceRange range) |
| Retrieve a source location representing the first character within a source range. | |
| CINDEX_LINKAGE CXSourceLocation | clang_getRangeEnd (CXSourceRange range) |
| Retrieve a source location representing the last character within a source range. | |
| CINDEX_LINKAGE unsigned | clang_getNumDiagnosticsInSet (CXDiagnosticSet Diags) |
| Determine the number of diagnostics in a CXDiagnosticSet. | |
| CINDEX_LINKAGE CXDiagnostic | clang_getDiagnosticInSet (CXDiagnosticSet Diags, unsigned Index) |
| Retrieve a diagnostic associated with the given CXDiagnosticSet. | |
| CINDEX_LINKAGE CXDiagnosticSet | clang_loadDiagnostics (const char *file, enum CXLoadDiag_Error *error, CXString *errorString) |
| Deserialize a set of diagnostics from a Clang diagnostics bitcode file. | |
| CINDEX_LINKAGE void | clang_disposeDiagnosticSet (CXDiagnosticSet Diags) |
| Release a CXDiagnosticSet and all of its contained diagnostics. | |
| CINDEX_LINKAGE CXDiagnosticSet | clang_getChildDiagnostics (CXDiagnostic D) |
| Retrieve the child diagnostics of a CXDiagnostic. This CXDiagnosticSet does not need to be released by clang_diposeDiagnosticSet. | |
| CINDEX_LINKAGE unsigned | clang_getNumDiagnostics (CXTranslationUnit Unit) |
| Determine the number of diagnostics produced for the given translation unit. | |
| CINDEX_LINKAGE CXDiagnostic | clang_getDiagnostic (CXTranslationUnit Unit, unsigned Index) |
| Retrieve a diagnostic associated with the given translation unit. | |
| CINDEX_LINKAGE CXDiagnosticSet | clang_getDiagnosticSetFromTU (CXTranslationUnit Unit) |
| Retrieve the complete set of diagnostics associated with a translation unit. | |
| CINDEX_LINKAGE void | clang_disposeDiagnostic (CXDiagnostic Diagnostic) |
| Destroy a diagnostic. | |
| CINDEX_LINKAGE CXString | clang_formatDiagnostic (CXDiagnostic Diagnostic, unsigned Options) |
| Format the given diagnostic in a manner that is suitable for display. | |
| CINDEX_LINKAGE unsigned | clang_defaultDiagnosticDisplayOptions (void) |
| Retrieve the set of display options most similar to the default behavior of the clang compiler. | |
| CINDEX_LINKAGE enum CXDiagnosticSeverity | clang_getDiagnosticSeverity (CXDiagnostic) |
| Determine the severity of the given diagnostic. | |
| CINDEX_LINKAGE CXSourceLocation | clang_getDiagnosticLocation (CXDiagnostic) |
| Retrieve the source location of the given diagnostic. | |
| CINDEX_LINKAGE CXString | clang_getDiagnosticSpelling (CXDiagnostic) |
| Retrieve the text of the given diagnostic. | |
| CINDEX_LINKAGE CXString | clang_getDiagnosticOption (CXDiagnostic Diag, CXString *Disable) |
| Retrieve the name of the command-line option that enabled this diagnostic. | |
| CINDEX_LINKAGE unsigned | clang_getDiagnosticCategory (CXDiagnostic) |
| Retrieve the category number for this diagnostic. | |
| CINDEX_DEPRECATED CINDEX_LINKAGE CXString | clang_getDiagnosticCategoryName (unsigned Category) |
| Retrieve the name of a particular diagnostic category. This is now deprecated. Use clang_getDiagnosticCategoryText() instead. | |
| CINDEX_LINKAGE CXString | clang_getDiagnosticCategoryText (CXDiagnostic) |
| Retrieve the diagnostic category text for a given diagnostic. | |
| CINDEX_LINKAGE unsigned | clang_getDiagnosticNumRanges (CXDiagnostic) |
| Determine the number of source ranges associated with the given diagnostic. | |
| CINDEX_LINKAGE CXSourceRange | clang_getDiagnosticRange (CXDiagnostic Diagnostic, unsigned Range) |
| Retrieve a source range associated with the diagnostic. | |
| CINDEX_LINKAGE unsigned | clang_getDiagnosticNumFixIts (CXDiagnostic Diagnostic) |
| Determine the number of fix-it hints associated with the given diagnostic. | |
| CINDEX_LINKAGE CXString | clang_getDiagnosticFixIt (CXDiagnostic Diagnostic, unsigned FixIt, CXSourceRange *ReplacementRange) |
| Retrieve the replacement information for a given fix-it. | |
| CINDEX_LINKAGE CXString | clang_getTranslationUnitSpelling (CXTranslationUnit CTUnit) |
| Get the original translation unit source file name. | |
| CINDEX_LINKAGE CXTranslationUnit | clang_createTranslationUnitFromSourceFile (CXIndex CIdx, const char *source_filename, int num_clang_command_line_args, const char *const *clang_command_line_args, unsigned num_unsaved_files, struct CXUnsavedFile *unsaved_files) |
| Return the CXTranslationUnit for a given source file and the provided command line arguments one would pass to the compiler. | |
| CINDEX_LINKAGE CXTranslationUnit | clang_createTranslationUnit (CXIndex, const char *ast_filename) |
| Create a translation unit from an AST file (-emit-ast). | |
| CINDEX_LINKAGE unsigned | clang_defaultEditingTranslationUnitOptions (void) |
| Returns the set of flags that is suitable for parsing a translation unit that is being edited. | |
| CINDEX_LINKAGE CXTranslationUnit | clang_parseTranslationUnit (CXIndex CIdx, const char *source_filename, const char *const *command_line_args, int num_command_line_args, struct CXUnsavedFile *unsaved_files, unsigned num_unsaved_files, unsigned options) |
| Parse the given source file and the translation unit corresponding to that file. | |
| CINDEX_LINKAGE unsigned | clang_defaultSaveOptions (CXTranslationUnit TU) |
| Returns the set of flags that is suitable for saving a translation unit. | |
| CINDEX_LINKAGE int | clang_saveTranslationUnit (CXTranslationUnit TU, const char *FileName, unsigned options) |
| Saves a translation unit into a serialized representation of that translation unit on disk. | |
| CINDEX_LINKAGE void | clang_disposeTranslationUnit (CXTranslationUnit) |
| Destroy the specified CXTranslationUnit object. | |
| CINDEX_LINKAGE unsigned | clang_defaultReparseOptions (CXTranslationUnit TU) |
| Returns the set of flags that is suitable for reparsing a translation unit. | |
| CINDEX_LINKAGE int | clang_reparseTranslationUnit (CXTranslationUnit TU, unsigned num_unsaved_files, struct CXUnsavedFile *unsaved_files, unsigned options) |
| Reparse the source files that produced this translation unit. | |
| CINDEX_LINKAGE const char * | clang_getTUResourceUsageName (enum CXTUResourceUsageKind kind) |
| Returns the human-readable null-terminated C string that represents the name of the memory category. This string should never be freed. | |
| CINDEX_LINKAGE CXTUResourceUsage | clang_getCXTUResourceUsage (CXTranslationUnit TU) |
| Return the memory usage of a translation unit. This object should be released with clang_disposeCXTUResourceUsage(). | |
| CINDEX_LINKAGE void | clang_disposeCXTUResourceUsage (CXTUResourceUsage usage) |
| CINDEX_LINKAGE CXCursor | clang_getNullCursor (void) |
| Retrieve the NULL cursor, which represents no entity. | |
| CINDEX_LINKAGE CXCursor | clang_getTranslationUnitCursor (CXTranslationUnit) |
| Retrieve the cursor that represents the given translation unit. | |
| CINDEX_LINKAGE unsigned | clang_equalCursors (CXCursor, CXCursor) |
| Determine whether two cursors are equivalent. | |
| CINDEX_LINKAGE int | clang_Cursor_isNull (CXCursor) |
| Returns non-zero if. | |
| CINDEX_LINKAGE unsigned | clang_hashCursor (CXCursor) |
| Compute a hash value for the given cursor. | |
| CINDEX_LINKAGE enum CXCursorKind | clang_getCursorKind (CXCursor) |
| Retrieve the kind of the given cursor. | |
| CINDEX_LINKAGE unsigned | clang_isDeclaration (enum CXCursorKind) |
| Determine whether the given cursor kind represents a declaration. | |
| CINDEX_LINKAGE unsigned | clang_isReference (enum CXCursorKind) |
| Determine whether the given cursor kind represents a simple reference. | |
| CINDEX_LINKAGE unsigned | clang_isExpression (enum CXCursorKind) |
| Determine whether the given cursor kind represents an expression. | |
| CINDEX_LINKAGE unsigned | clang_isStatement (enum CXCursorKind) |
| Determine whether the given cursor kind represents a statement. | |
| CINDEX_LINKAGE unsigned | clang_isAttribute (enum CXCursorKind) |
| Determine whether the given cursor kind represents an attribute. | |
| CINDEX_LINKAGE unsigned | clang_isInvalid (enum CXCursorKind) |
| Determine whether the given cursor kind represents an invalid cursor. | |
| CINDEX_LINKAGE unsigned | clang_isTranslationUnit (enum CXCursorKind) |
| Determine whether the given cursor kind represents a translation unit. | |
| CINDEX_LINKAGE unsigned | clang_isPreprocessing (enum CXCursorKind) |
| CINDEX_LINKAGE unsigned | clang_isUnexposed (enum CXCursorKind) |
| CINDEX_LINKAGE enum CXLinkageKind | clang_getCursorLinkage (CXCursor cursor) |
| Determine the linkage of the entity referred to by a given cursor. | |
| CINDEX_LINKAGE enum CXAvailabilityKind | clang_getCursorAvailability (CXCursor cursor) |
| Determine the availability of the entity that this cursor refers to, taking the current target platform into account. | |
| CINDEX_LINKAGE int | clang_getCursorPlatformAvailability (CXCursor cursor, int *always_deprecated, CXString *deprecated_message, int *always_unavailable, CXString *unavailable_message, CXPlatformAvailability *availability, int availability_size) |
| Determine the availability of the entity that this cursor refers to on any platforms for which availability information is known. | |
| CINDEX_LINKAGE void | clang_disposeCXPlatformAvailability (CXPlatformAvailability *availability) |
Free the memory associated with a CXPlatformAvailability structure. | |
| CINDEX_LINKAGE enum CXLanguageKind | clang_getCursorLanguage (CXCursor cursor) |
| Determine the "language" of the entity referred to by a given cursor. | |
| CINDEX_LINKAGE CXTranslationUnit | clang_Cursor_getTranslationUnit (CXCursor) |
| Returns the translation unit that a cursor originated from. | |
| CINDEX_LINKAGE CXCursorSet | clang_createCXCursorSet () |
| Creates an empty CXCursorSet. | |
| CINDEX_LINKAGE void | clang_disposeCXCursorSet (CXCursorSet cset) |
| Disposes a CXCursorSet and releases its associated memory. | |
| CINDEX_LINKAGE unsigned | clang_CXCursorSet_contains (CXCursorSet cset, CXCursor cursor) |
| Queries a CXCursorSet to see if it contains a specific CXCursor. | |
| CINDEX_LINKAGE unsigned | clang_CXCursorSet_insert (CXCursorSet cset, CXCursor cursor) |
| Inserts a CXCursor into a CXCursorSet. | |
| CINDEX_LINKAGE CXCursor | clang_getCursorSemanticParent (CXCursor cursor) |
| Determine the semantic parent of the given cursor. | |
| CINDEX_LINKAGE CXCursor | clang_getCursorLexicalParent (CXCursor cursor) |
| Determine the lexical parent of the given cursor. | |
| CINDEX_LINKAGE void | clang_getOverriddenCursors (CXCursor cursor, CXCursor **overridden, unsigned *num_overridden) |
| Determine the set of methods that are overridden by the given method. | |
| CINDEX_LINKAGE void | clang_disposeOverriddenCursors (CXCursor *overridden) |
Free the set of overridden cursors returned by clang_getOverriddenCursors(). | |
| CINDEX_LINKAGE CXFile | clang_getIncludedFile (CXCursor cursor) |
| Retrieve the file that is included by the given inclusion directive cursor. | |
| CINDEX_LINKAGE CXCursor | clang_getCursor (CXTranslationUnit, CXSourceLocation) |
| Map a source location to the cursor that describes the entity at that location in the source code. | |
| CINDEX_LINKAGE CXSourceLocation | clang_getCursorLocation (CXCursor) |
| Retrieve the physical location of the source constructor referenced by the given cursor. | |
| CINDEX_LINKAGE CXSourceRange | clang_getCursorExtent (CXCursor) |
| Retrieve the physical extent of the source construct referenced by the given cursor. | |
| CINDEX_LINKAGE CXType | clang_getCursorType (CXCursor C) |
| Retrieve the type of a CXCursor (if any). | |
| CINDEX_LINKAGE CXType | clang_getTypedefDeclUnderlyingType (CXCursor C) |
| Retrieve the underlying type of a typedef declaration. | |
| CINDEX_LINKAGE CXType | clang_getEnumDeclIntegerType (CXCursor C) |
| Retrieve the integer type of an enum declaration. | |
| CINDEX_LINKAGE long long | clang_getEnumConstantDeclValue (CXCursor C) |
| Retrieve the integer value of an enum constant declaration as a signed long long. | |
| CINDEX_LINKAGE unsigned long long | clang_getEnumConstantDeclUnsignedValue (CXCursor C) |
| Retrieve the integer value of an enum constant declaration as an unsigned long long. | |
| CINDEX_LINKAGE int | clang_Cursor_getNumArguments (CXCursor C) |
| Retrieve the number of non-variadic arguments associated with a given cursor. | |
| CINDEX_LINKAGE CXCursor | clang_Cursor_getArgument (CXCursor C, unsigned i) |
| Retrieve the argument cursor of a function or method. | |
| CINDEX_LINKAGE unsigned | clang_equalTypes (CXType A, CXType B) |
| CINDEX_LINKAGE CXType | clang_getCanonicalType (CXType T) |
| Return the canonical type for a CXType. | |
| CINDEX_LINKAGE unsigned | clang_isConstQualifiedType (CXType T) |
| CINDEX_LINKAGE unsigned | clang_isVolatileQualifiedType (CXType T) |
| CINDEX_LINKAGE unsigned | clang_isRestrictQualifiedType (CXType T) |
| CINDEX_LINKAGE CXType | clang_getPointeeType (CXType T) |
| For pointer types, returns the type of the pointee. | |
| CINDEX_LINKAGE CXCursor | clang_getTypeDeclaration (CXType T) |
| Return the cursor for the declaration of the given type. | |
| CINDEX_LINKAGE CXString | clang_getDeclObjCTypeEncoding (CXCursor C) |
| CINDEX_LINKAGE CXString | clang_getTypeKindSpelling (enum CXTypeKind K) |
| Retrieve the spelling of a given CXTypeKind. | |
| CINDEX_LINKAGE enum CXCallingConv | clang_getFunctionTypeCallingConv (CXType T) |
| Retrieve the calling convention associated with a function type. | |
| CINDEX_LINKAGE CXType | clang_getResultType (CXType T) |
| Retrieve the result type associated with a function type. | |
| CINDEX_LINKAGE int | clang_getNumArgTypes (CXType T) |
| Retrieve the number of non-variadic arguments associated with a function type. | |
| CINDEX_LINKAGE CXType | clang_getArgType (CXType T, unsigned i) |
| Retrieve the type of an argument of a function type. | |
| CINDEX_LINKAGE unsigned | clang_isFunctionTypeVariadic (CXType T) |
| Return 1 if the CXType is a variadic function type, and 0 otherwise. | |
| CINDEX_LINKAGE CXType | clang_getCursorResultType (CXCursor C) |
| Retrieve the result type associated with a given cursor. | |
| CINDEX_LINKAGE unsigned | clang_isPODType (CXType T) |
| Return 1 if the CXType is a POD (plain old data) type, and 0 otherwise. | |
| CINDEX_LINKAGE CXType | clang_getElementType (CXType T) |
| Return the element type of an array, complex, or vector type. | |
| CINDEX_LINKAGE long long | clang_getNumElements (CXType T) |
| Return the number of elements of an array or vector type. | |
| CINDEX_LINKAGE CXType | clang_getArrayElementType (CXType T) |
| Return the element type of an array type. | |
| CINDEX_LINKAGE long long | clang_getArraySize (CXType T) |
| Return the the array size of a constant array. | |
| CINDEX_LINKAGE unsigned | clang_isVirtualBase (CXCursor) |
| Returns 1 if the base class specified by the cursor with kind CX_CXXBaseSpecifier is virtual. | |
| CINDEX_LINKAGE enum CX_CXXAccessSpecifier | clang_getCXXAccessSpecifier (CXCursor) |
| Returns the access control level for the C++ base specifier represented by a cursor with kind CXCursor_CXXBaseSpecifier or CXCursor_AccessSpecifier. | |
| CINDEX_LINKAGE unsigned | clang_getNumOverloadedDecls (CXCursor cursor) |
Determine the number of overloaded declarations referenced by a CXCursor_OverloadedDeclRef cursor. | |
| CINDEX_LINKAGE CXCursor | clang_getOverloadedDecl (CXCursor cursor, unsigned index) |
Retrieve a cursor for one of the overloaded declarations referenced by a CXCursor_OverloadedDeclRef cursor. | |
| CINDEX_LINKAGE CXType | clang_getIBOutletCollectionType (CXCursor) |
| For cursors representing an iboutletcollection attribute, this function returns the collection element type. | |
| CINDEX_LINKAGE unsigned | clang_visitChildren (CXCursor parent, CXCursorVisitor visitor, CXClientData client_data) |
| Visit the children of a particular cursor. | |
| CINDEX_LINKAGE CXString | clang_getCursorUSR (CXCursor) |
| Retrieve a Unified Symbol Resolution (USR) for the entity referenced by the given cursor. | |
| CINDEX_LINKAGE CXString | clang_constructUSR_ObjCClass (const char *class_name) |
| Construct a USR for a specified Objective-C class. | |
| CINDEX_LINKAGE CXString | clang_constructUSR_ObjCCategory (const char *class_name, const char *category_name) |
| Construct a USR for a specified Objective-C category. | |
| CINDEX_LINKAGE CXString | clang_constructUSR_ObjCProtocol (const char *protocol_name) |
| Construct a USR for a specified Objective-C protocol. | |
| CINDEX_LINKAGE CXString | clang_constructUSR_ObjCIvar (const char *name, CXString classUSR) |
| Construct a USR for a specified Objective-C instance variable and the USR for its containing class. | |
| CINDEX_LINKAGE CXString | clang_constructUSR_ObjCMethod (const char *name, unsigned isInstanceMethod, CXString classUSR) |
| Construct a USR for a specified Objective-C method and the USR for its containing class. | |
| CINDEX_LINKAGE CXString | clang_constructUSR_ObjCProperty (const char *property, CXString classUSR) |
| Construct a USR for a specified Objective-C property and the USR for its containing class. | |
| CINDEX_LINKAGE CXString | clang_getCursorSpelling (CXCursor) |
| Retrieve a name for the entity referenced by this cursor. | |
| CINDEX_LINKAGE CXSourceRange | clang_Cursor_getSpellingNameRange (CXCursor, unsigned pieceIndex, unsigned options) |
| Retrieve a 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. | |
| CINDEX_LINKAGE CXString | clang_getCursorDisplayName (CXCursor) |
| Retrieve the display name for the entity referenced by this cursor. | |
| CINDEX_LINKAGE CXCursor | clang_getCursorReferenced (CXCursor) |
| For a cursor that is a reference, retrieve a cursor representing the entity that it references. | |
| CINDEX_LINKAGE CXCursor | clang_getCursorDefinition (CXCursor) |
| For a cursor that is either a reference to or a declaration of some entity, retrieve a cursor that describes the definition of that entity. | |
| CINDEX_LINKAGE unsigned | clang_isCursorDefinition (CXCursor) |
| Determine whether the declaration pointed to by this cursor is also a definition of that entity. | |
| CINDEX_LINKAGE CXCursor | clang_getCanonicalCursor (CXCursor) |
| Retrieve the canonical cursor corresponding to the given cursor. | |
| CINDEX_LINKAGE int | clang_Cursor_getObjCSelectorIndex (CXCursor) |
| If the cursor points to a selector identifier in a objc method or message expression, this returns the selector index. | |
| CINDEX_LINKAGE unsigned | clang_CXXMethod_isStatic (CXCursor C) |
| Determine if a C++ member function or member function template is declared 'static'. | |
| CINDEX_LINKAGE unsigned | clang_CXXMethod_isVirtual (CXCursor C) |
| Determine if a C++ member function or member function template is explicitly declared 'virtual' or if it overrides a virtual method from one of the base classes. | |
| CINDEX_LINKAGE enum CXCursorKind | clang_getTemplateCursorKind (CXCursor C) |
| Given a cursor that represents a template, determine the cursor kind of the specializations would be generated by instantiating the template. | |
| CINDEX_LINKAGE CXCursor | clang_getSpecializedCursorTemplate (CXCursor C) |
| Given a cursor that may represent a specialization or instantiation of a template, retrieve the cursor that represents the template that it specializes or from which it was instantiated. | |
| CINDEX_LINKAGE CXSourceRange | clang_getCursorReferenceNameRange (CXCursor C, unsigned NameFlags, unsigned PieceIndex) |
| Given a cursor that references something else, return the source range covering that reference. | |
| CINDEX_LINKAGE CXTokenKind | clang_getTokenKind (CXToken) |
| Determine the kind of the given token. | |
| CINDEX_LINKAGE CXString | clang_getTokenSpelling (CXTranslationUnit, CXToken) |
| Determine the spelling of the given token. | |
| CINDEX_LINKAGE CXSourceLocation | clang_getTokenLocation (CXTranslationUnit, CXToken) |
| Retrieve the source location of the given token. | |
| CINDEX_LINKAGE CXSourceRange | clang_getTokenExtent (CXTranslationUnit, CXToken) |
| Retrieve a source range that covers the given token. | |
| CINDEX_LINKAGE void | clang_tokenize (CXTranslationUnit TU, CXSourceRange Range, CXToken **Tokens, unsigned *NumTokens) |
| Tokenize the source code described by the given range into raw lexical tokens. | |
| CINDEX_LINKAGE void | clang_annotateTokens (CXTranslationUnit TU, CXToken *Tokens, unsigned NumTokens, CXCursor *Cursors) |
| Annotate the given set of tokens by providing cursors for each token that can be mapped to a specific entity within the abstract syntax tree. | |
| CINDEX_LINKAGE void | clang_disposeTokens (CXTranslationUnit TU, CXToken *Tokens, unsigned NumTokens) |
| Free the given set of tokens. | |
| CINDEX_LINKAGE CXString | clang_getCursorKindSpelling (enum CXCursorKind Kind) |
| CINDEX_LINKAGE void | clang_getDefinitionSpellingAndExtent (CXCursor, const char **startBuf, const char **endBuf, unsigned *startLine, unsigned *startColumn, unsigned *endLine, unsigned *endColumn) |
| CINDEX_LINKAGE void | clang_enableStackTraces (void) |
| CINDEX_LINKAGE void | clang_executeOnThread (void(*fn)(void *), void *user_data, unsigned stack_size) |
| CINDEX_LINKAGE enum CXCompletionChunkKind | clang_getCompletionChunkKind (CXCompletionString completion_string, unsigned chunk_number) |
| Determine the kind of a particular chunk within a completion string. | |
| CINDEX_LINKAGE CXString | clang_getCompletionChunkText (CXCompletionString completion_string, unsigned chunk_number) |
| Retrieve the text associated with a particular chunk within a completion string. | |
| CINDEX_LINKAGE CXCompletionString | clang_getCompletionChunkCompletionString (CXCompletionString completion_string, unsigned chunk_number) |
| Retrieve the completion string associated with a particular chunk within a completion string. | |
| CINDEX_LINKAGE unsigned | clang_getNumCompletionChunks (CXCompletionString completion_string) |
| Retrieve the number of chunks in the given code-completion string. | |
| CINDEX_LINKAGE unsigned | clang_getCompletionPriority (CXCompletionString completion_string) |
| Determine the priority of this code completion. | |
| CINDEX_LINKAGE enum CXAvailabilityKind | clang_getCompletionAvailability (CXCompletionString completion_string) |
| Determine the availability of the entity that this code-completion string refers to. | |
| CINDEX_LINKAGE unsigned | clang_getCompletionNumAnnotations (CXCompletionString completion_string) |
| Retrieve the number of annotations associated with the given completion string. | |
| CINDEX_LINKAGE CXString | clang_getCompletionAnnotation (CXCompletionString completion_string, unsigned annotation_number) |
| Retrieve the annotation associated with the given completion string. | |
| CINDEX_LINKAGE CXString | clang_getCompletionParent (CXCompletionString completion_string, enum CXCursorKind *kind) |
| Retrieve the parent context of the given completion string. | |
| CINDEX_LINKAGE CXCompletionString | clang_getCursorCompletionString (CXCursor cursor) |
| Retrieve a completion string for an arbitrary declaration or macro definition cursor. | |
| CINDEX_LINKAGE unsigned | clang_defaultCodeCompleteOptions (void) |
Returns a default set of code-completion options that can be passed toclang_codeCompleteAt(). | |
| CINDEX_LINKAGE CXCodeCompleteResults * | clang_codeCompleteAt (CXTranslationUnit TU, const char *complete_filename, unsigned complete_line, unsigned complete_column, struct CXUnsavedFile *unsaved_files, unsigned num_unsaved_files, unsigned options) |
| Perform code completion at a given location in a translation unit. | |
| CINDEX_LINKAGE void | clang_sortCodeCompletionResults (CXCompletionResult *Results, unsigned NumResults) |
| Sort the code-completion results in case-insensitive alphabetical order. | |
| CINDEX_LINKAGE void | clang_disposeCodeCompleteResults (CXCodeCompleteResults *Results) |
| Free the given set of code-completion results. | |
| CINDEX_LINKAGE unsigned | clang_codeCompleteGetNumDiagnostics (CXCodeCompleteResults *Results) |
| Determine the number of diagnostics produced prior to the location where code completion was performed. | |
| CINDEX_LINKAGE CXDiagnostic | clang_codeCompleteGetDiagnostic (CXCodeCompleteResults *Results, unsigned Index) |
| Retrieve a diagnostic associated with the given code completion. | |
| CINDEX_LINKAGE unsigned long long | clang_codeCompleteGetContexts (CXCodeCompleteResults *Results) |
| Determines what compeltions are appropriate for the context the given code completion. | |
| CINDEX_LINKAGE enum CXCursorKind | clang_codeCompleteGetContainerKind (CXCodeCompleteResults *Results, unsigned *IsIncomplete) |
| Returns the cursor kind for the container for the current code completion context. The container is only guaranteed to be set for contexts where a container exists (i.e. member accesses or Objective-C message sends); if there is not a container, this function will return CXCursor_InvalidCode. | |
| CINDEX_LINKAGE CXString | clang_codeCompleteGetContainerUSR (CXCodeCompleteResults *Results) |
| Returns the USR for the container for the current code completion context. If there is not a container for the current context, this function will return the empty string. | |
| CINDEX_LINKAGE CXString | clang_codeCompleteGetObjCSelector (CXCodeCompleteResults *Results) |
| Returns the currently-entered selector for an Objective-C message send, formatted like "initWithFoo:bar:". Only guaranteed to return a non-empty string for CXCompletionContext_ObjCInstanceMessage and CXCompletionContext_ObjCClassMessage. | |
| CINDEX_LINKAGE CXString | clang_getClangVersion () |
| Return a version string, suitable for showing to a user, but not intended to be parsed (the format is not guaranteed to be stable). | |
| CINDEX_LINKAGE void | clang_toggleCrashRecovery (unsigned isEnabled) |
| Enable/disable crash recovery. | |
| CINDEX_LINKAGE void | clang_getInclusions (CXTranslationUnit tu, CXInclusionVisitor visitor, CXClientData client_data) |
| Visit the set of preprocessor inclusions in a translation unit. The visitor function is called with the provided data for every included file. This does not include headers included by the PCH file (unless one is inspecting the inclusions in the PCH file itself). | |
| CINDEX_LINKAGE CXRemapping | clang_getRemappings (const char *path) |
| Retrieve a remapping. | |
| CINDEX_LINKAGE CXRemapping | clang_getRemappingsFromFileList (const char **filePaths, unsigned numFiles) |
| Retrieve a remapping. | |
| CINDEX_LINKAGE unsigned | clang_remap_getNumFiles (CXRemapping) |
| Determine the number of remappings. | |
| CINDEX_LINKAGE void | clang_remap_getFilenames (CXRemapping, unsigned index, CXString *original, CXString *transformed) |
| Get the original and the associated filename from the remapping. | |
| CINDEX_LINKAGE void | clang_remap_dispose (CXRemapping) |
| Dispose the remapping. | |
| CINDEX_LINKAGE void | clang_findReferencesInFile (CXCursor cursor, CXFile file, CXCursorAndRangeVisitor visitor) |
| Find references of a declaration in a specific file. | |
| CINDEX_LINKAGE int | clang_index_isEntityObjCContainerKind (CXIdxEntityKind) |
| CINDEX_LINKAGE const CXIdxObjCContainerDeclInfo * | clang_index_getObjCContainerDeclInfo (const CXIdxDeclInfo *) |
| CINDEX_LINKAGE const CXIdxObjCInterfaceDeclInfo * | clang_index_getObjCInterfaceDeclInfo (const CXIdxDeclInfo *) |
| CINDEX_LINKAGE const CXIdxObjCCategoryDeclInfo * | clang_index_getObjCCategoryDeclInfo (const CXIdxDeclInfo *) |
| CINDEX_LINKAGE const CXIdxObjCProtocolRefListInfo * | clang_index_getObjCProtocolRefListInfo (const CXIdxDeclInfo *) |
| CINDEX_LINKAGE const CXIdxObjCPropertyDeclInfo * | clang_index_getObjCPropertyDeclInfo (const CXIdxDeclInfo *) |
| CINDEX_LINKAGE const CXIdxIBOutletCollectionAttrInfo * | clang_index_getIBOutletCollectionAttrInfo (const CXIdxAttrInfo *) |
| CINDEX_LINKAGE const CXIdxCXXClassDeclInfo * | clang_index_getCXXClassDeclInfo (const CXIdxDeclInfo *) |
| CINDEX_LINKAGE CXIdxClientContainer | clang_index_getClientContainer (const CXIdxContainerInfo *) |
| For retrieving a custom CXIdxClientContainer attached to a container. | |
| CINDEX_LINKAGE void | clang_index_setClientContainer (const CXIdxContainerInfo *, CXIdxClientContainer) |
| For setting a custom CXIdxClientContainer attached to a container. | |
| CINDEX_LINKAGE CXIdxClientEntity | clang_index_getClientEntity (const CXIdxEntityInfo *) |
| For retrieving a custom CXIdxClientEntity attached to an entity. | |
| CINDEX_LINKAGE void | clang_index_setClientEntity (const CXIdxEntityInfo *, CXIdxClientEntity) |
| For setting a custom CXIdxClientEntity attached to an entity. | |
| CINDEX_LINKAGE CXIndexAction | clang_IndexAction_create (CXIndex CIdx) |
| An indexing action, to be applied to one or multiple translation units but not on concurrent threads. If there are threads doing indexing concurrently, they should use different CXIndexAction objects. | |
| CINDEX_LINKAGE void | clang_IndexAction_dispose (CXIndexAction) |
| Destroy the given index action. | |
| CINDEX_LINKAGE int | clang_indexSourceFile (CXIndexAction, CXClientData client_data, IndexerCallbacks *index_callbacks, unsigned index_callbacks_size, unsigned index_options, const char *source_filename, const char *const *command_line_args, int num_command_line_args, struct CXUnsavedFile *unsaved_files, unsigned num_unsaved_files, CXTranslationUnit *out_TU, unsigned TU_options) |
| Index the given source file and the translation unit corresponding to that file via callbacks implemented through. | |
| CINDEX_LINKAGE int | clang_indexTranslationUnit (CXIndexAction, CXClientData client_data, IndexerCallbacks *index_callbacks, unsigned index_callbacks_size, unsigned index_options, CXTranslationUnit) |
| Index the given translation unit via callbacks implemented through. | |
| CINDEX_LINKAGE void | clang_indexLoc_getFileLocation (CXIdxLoc loc, CXIdxClientFile *indexFile, CXFile *file, unsigned *line, unsigned *column, unsigned *offset) |
| Retrieve the CXIdxFile, file, line, column, and offset represented by the given CXIdxLoc. | |
| CINDEX_LINKAGE CXSourceLocation | clang_indexLoc_getCXSourceLocation (CXIdxLoc loc) |
| Retrieve the CXSourceLocation represented by the given CXIdxLoc. | |