blob: 43044b0133e8cd9d607cec8b208c503f650bc401 [file] [log] [blame]
/* automatically generated by rust-bindgen */
use core::libc::*;
pub type CXIndex = *c_void;
pub type Struct_CXTranslationUnitImpl = c_void;
pub type CXTranslationUnit = *Struct_CXTranslationUnitImpl;
pub type CXClientData = *c_void;
pub struct Struct_CXUnsavedFile {
pub Filename: *c_schar,
pub Contents: *c_schar,
pub Length: c_ulong,
}
pub type Enum_CXAvailabilityKind = c_uint;
pub static CXAvailability_Available: c_uint = 0;
pub static CXAvailability_Deprecated: c_uint = 1;
pub static CXAvailability_NotAvailable: c_uint = 2;
pub static CXAvailability_NotAccessible: c_uint = 3;
pub struct CXString {
pub data: *c_void,
pub private_flags: c_uint,
}
pub type CXGlobalOptFlags = c_uint;
pub static CXGlobalOpt_None: c_uint = 0;
pub static CXGlobalOpt_ThreadBackgroundPriorityForIndexing: c_uint = 1;
pub static CXGlobalOpt_ThreadBackgroundPriorityForEditing: c_uint = 2;
pub static CXGlobalOpt_ThreadBackgroundPriorityForAll: c_uint = 3;
pub type CXFile = *c_void;
pub struct CXSourceLocation {
pub ptr_data: [*c_void, ..2u],
pub int_data: c_uint,
}
pub struct CXSourceRange {
pub ptr_data: [*c_void, ..2u],
pub begin_int_data: c_uint,
pub end_int_data: c_uint,
}
pub type Enum_CXDiagnosticSeverity = c_uint;
pub static CXDiagnostic_Ignored: c_uint = 0;
pub static CXDiagnostic_Note: c_uint = 1;
pub static CXDiagnostic_Warning: c_uint = 2;
pub static CXDiagnostic_Error: c_uint = 3;
pub static CXDiagnostic_Fatal: c_uint = 4;
pub type CXDiagnostic = *c_void;
pub type CXDiagnosticSet = *c_void;
pub type Enum_CXLoadDiag_Error = c_uint;
pub static CXLoadDiag_None: c_uint = 0;
pub static CXLoadDiag_Unknown: c_uint = 1;
pub static CXLoadDiag_CannotLoad: c_uint = 2;
pub static CXLoadDiag_InvalidFile: c_uint = 3;
pub type Enum_CXDiagnosticDisplayOptions = c_uint;
pub static CXDiagnostic_DisplaySourceLocation: c_uint = 1;
pub static CXDiagnostic_DisplayColumn: c_uint = 2;
pub static CXDiagnostic_DisplaySourceRanges: c_uint = 4;
pub static CXDiagnostic_DisplayOption: c_uint = 8;
pub static CXDiagnostic_DisplayCategoryId: c_uint = 16;
pub static CXDiagnostic_DisplayCategoryName: c_uint = 32;
pub type Enum_CXTranslationUnit_Flags = c_uint;
pub static CXTranslationUnit_None: c_uint = 0;
pub static CXTranslationUnit_DetailedPreprocessingRecord: c_uint = 1;
pub static CXTranslationUnit_Incomplete: c_uint = 2;
pub static CXTranslationUnit_PrecompiledPreamble: c_uint = 4;
pub static CXTranslationUnit_CacheCompletionResults: c_uint = 8;
pub static CXTranslationUnit_CXXPrecompiledPreamble: c_uint = 16;
pub static CXTranslationUnit_CXXChainedPCH: c_uint = 32;
pub static CXTranslationUnit_SkipFunctionBodies: c_uint = 64;
pub type Enum_CXSaveTranslationUnit_Flags = c_uint;
pub static CXSaveTranslationUnit_None: c_uint = 0;
pub type Enum_CXSaveError = c_uint;
pub static CXSaveError_None: c_uint = 0;
pub static CXSaveError_Unknown: c_uint = 1;
pub static CXSaveError_TranslationErrors: c_uint = 2;
pub static CXSaveError_InvalidTU: c_uint = 3;
pub type Enum_CXReparse_Flags = c_uint;
pub static CXReparse_None: c_uint = 0;
pub type Enum_CXTUResourceUsageKind = c_uint;
pub static CXTUResourceUsage_AST: c_uint = 1;
pub static CXTUResourceUsage_Identifiers: c_uint = 2;
pub static CXTUResourceUsage_Selectors: c_uint = 3;
pub static CXTUResourceUsage_GlobalCompletionResults: c_uint = 4;
pub static CXTUResourceUsage_SourceManagerContentCache: c_uint = 5;
pub static CXTUResourceUsage_AST_SideTables: c_uint = 6;
pub static CXTUResourceUsage_SourceManager_Membuffer_Malloc: c_uint = 7;
pub static CXTUResourceUsage_SourceManager_Membuffer_MMap: c_uint = 8;
pub static CXTUResourceUsage_ExternalASTSource_Membuffer_Malloc: c_uint = 9;
pub static CXTUResourceUsage_ExternalASTSource_Membuffer_MMap: c_uint = 10;
pub static CXTUResourceUsage_Preprocessor: c_uint = 11;
pub static CXTUResourceUsage_PreprocessingRecord: c_uint = 12;
pub static CXTUResourceUsage_SourceManager_DataStructures: c_uint = 13;
pub static CXTUResourceUsage_Preprocessor_HeaderSearch: c_uint = 14;
pub static CXTUResourceUsage_MEMORY_IN_BYTES_BEGIN: c_uint = 1;
pub static CXTUResourceUsage_MEMORY_IN_BYTES_END: c_uint = 14;
pub static CXTUResourceUsage_First: c_uint = 1;
pub static CXTUResourceUsage_Last: c_uint = 14;
pub struct Struct_CXTUResourceUsageEntry {
pub kind: Enum_CXTUResourceUsageKind,
pub amount: c_ulong,
}
pub type CXTUResourceUsageEntry = Struct_CXTUResourceUsageEntry;
pub struct Struct_CXTUResourceUsage {
pub data: *c_void,
pub numEntries: c_uint,
pub entries: *CXTUResourceUsageEntry,
}
pub type CXTUResourceUsage = Struct_CXTUResourceUsage;
pub type Enum_CXCursorKind = c_uint;
pub static CXCursor_UnexposedDecl: c_uint = 1;
pub static CXCursor_StructDecl: c_uint = 2;
pub static CXCursor_UnionDecl: c_uint = 3;
pub static CXCursor_ClassDecl: c_uint = 4;
pub static CXCursor_EnumDecl: c_uint = 5;
pub static CXCursor_FieldDecl: c_uint = 6;
pub static CXCursor_EnumConstantDecl: c_uint = 7;
pub static CXCursor_FunctionDecl: c_uint = 8;
pub static CXCursor_VarDecl: c_uint = 9;
pub static CXCursor_ParmDecl: c_uint = 10;
pub static CXCursor_ObjCInterfaceDecl: c_uint = 11;
pub static CXCursor_ObjCCategoryDecl: c_uint = 12;
pub static CXCursor_ObjCProtocolDecl: c_uint = 13;
pub static CXCursor_ObjCPropertyDecl: c_uint = 14;
pub static CXCursor_ObjCIvarDecl: c_uint = 15;
pub static CXCursor_ObjCInstanceMethodDecl: c_uint = 16;
pub static CXCursor_ObjCClassMethodDecl: c_uint = 17;
pub static CXCursor_ObjCImplementationDecl: c_uint = 18;
pub static CXCursor_ObjCCategoryImplDecl: c_uint = 19;
pub static CXCursor_TypedefDecl: c_uint = 20;
pub static CXCursor_CXXMethod: c_uint = 21;
pub static CXCursor_Namespace: c_uint = 22;
pub static CXCursor_LinkageSpec: c_uint = 23;
pub static CXCursor_Constructor: c_uint = 24;
pub static CXCursor_Destructor: c_uint = 25;
pub static CXCursor_ConversionFunction: c_uint = 26;
pub static CXCursor_TemplateTypeParameter: c_uint = 27;
pub static CXCursor_NonTypeTemplateParameter: c_uint = 28;
pub static CXCursor_TemplateTemplateParameter: c_uint = 29;
pub static CXCursor_FunctionTemplate: c_uint = 30;
pub static CXCursor_ClassTemplate: c_uint = 31;
pub static CXCursor_ClassTemplatePartialSpecialization: c_uint = 32;
pub static CXCursor_NamespaceAlias: c_uint = 33;
pub static CXCursor_UsingDirective: c_uint = 34;
pub static CXCursor_UsingDeclaration: c_uint = 35;
pub static CXCursor_TypeAliasDecl: c_uint = 36;
pub static CXCursor_ObjCSynthesizeDecl: c_uint = 37;
pub static CXCursor_ObjCDynamicDecl: c_uint = 38;
pub static CXCursor_CXXAccessSpecifier: c_uint = 39;
pub static CXCursor_FirstDecl: c_uint = 1;
pub static CXCursor_LastDecl: c_uint = 39;
pub static CXCursor_FirstRef: c_uint = 40;
pub static CXCursor_ObjCSuperClassRef: c_uint = 40;
pub static CXCursor_ObjCProtocolRef: c_uint = 41;
pub static CXCursor_ObjCClassRef: c_uint = 42;
pub static CXCursor_TypeRef: c_uint = 43;
pub static CXCursor_CXXBaseSpecifier: c_uint = 44;
pub static CXCursor_TemplateRef: c_uint = 45;
pub static CXCursor_NamespaceRef: c_uint = 46;
pub static CXCursor_MemberRef: c_uint = 47;
pub static CXCursor_LabelRef: c_uint = 48;
pub static CXCursor_OverloadedDeclRef: c_uint = 49;
pub static CXCursor_VariableRef: c_uint = 50;
pub static CXCursor_LastRef: c_uint = 50;
pub static CXCursor_FirstInvalid: c_uint = 70;
pub static CXCursor_InvalidFile: c_uint = 70;
pub static CXCursor_NoDeclFound: c_uint = 71;
pub static CXCursor_NotImplemented: c_uint = 72;
pub static CXCursor_InvalidCode: c_uint = 73;
pub static CXCursor_LastInvalid: c_uint = 73;
pub static CXCursor_FirstExpr: c_uint = 100;
pub static CXCursor_UnexposedExpr: c_uint = 100;
pub static CXCursor_DeclRefExpr: c_uint = 101;
pub static CXCursor_MemberRefExpr: c_uint = 102;
pub static CXCursor_CallExpr: c_uint = 103;
pub static CXCursor_ObjCMessageExpr: c_uint = 104;
pub static CXCursor_BlockExpr: c_uint = 105;
pub static CXCursor_IntegerLiteral: c_uint = 106;
pub static CXCursor_FloatingLiteral: c_uint = 107;
pub static CXCursor_ImaginaryLiteral: c_uint = 108;
pub static CXCursor_StringLiteral: c_uint = 109;
pub static CXCursor_CharacterLiteral: c_uint = 110;
pub static CXCursor_ParenExpr: c_uint = 111;
pub static CXCursor_UnaryOperator: c_uint = 112;
pub static CXCursor_ArraySubscriptExpr: c_uint = 113;
pub static CXCursor_BinaryOperator: c_uint = 114;
pub static CXCursor_CompoundAssignOperator: c_uint = 115;
pub static CXCursor_ConditionalOperator: c_uint = 116;
pub static CXCursor_CStyleCastExpr: c_uint = 117;
pub static CXCursor_CompoundLiteralExpr: c_uint = 118;
pub static CXCursor_InitListExpr: c_uint = 119;
pub static CXCursor_AddrLabelExpr: c_uint = 120;
pub static CXCursor_StmtExpr: c_uint = 121;
pub static CXCursor_GenericSelectionExpr: c_uint = 122;
pub static CXCursor_GNUNullExpr: c_uint = 123;
pub static CXCursor_CXXStaticCastExpr: c_uint = 124;
pub static CXCursor_CXXDynamicCastExpr: c_uint = 125;
pub static CXCursor_CXXReinterpretCastExpr: c_uint = 126;
pub static CXCursor_CXXConstCastExpr: c_uint = 127;
pub static CXCursor_CXXFunctionalCastExpr: c_uint = 128;
pub static CXCursor_CXXTypeidExpr: c_uint = 129;
pub static CXCursor_CXXBoolLiteralExpr: c_uint = 130;
pub static CXCursor_CXXNullPtrLiteralExpr: c_uint = 131;
pub static CXCursor_CXXThisExpr: c_uint = 132;
pub static CXCursor_CXXThrowExpr: c_uint = 133;
pub static CXCursor_CXXNewExpr: c_uint = 134;
pub static CXCursor_CXXDeleteExpr: c_uint = 135;
pub static CXCursor_UnaryExpr: c_uint = 136;
pub static CXCursor_ObjCStringLiteral: c_uint = 137;
pub static CXCursor_ObjCEncodeExpr: c_uint = 138;
pub static CXCursor_ObjCSelectorExpr: c_uint = 139;
pub static CXCursor_ObjCProtocolExpr: c_uint = 140;
pub static CXCursor_ObjCBridgedCastExpr: c_uint = 141;
pub static CXCursor_PackExpansionExpr: c_uint = 142;
pub static CXCursor_SizeOfPackExpr: c_uint = 143;
pub static CXCursor_LambdaExpr: c_uint = 144;
pub static CXCursor_ObjCBoolLiteralExpr: c_uint = 145;
pub static CXCursor_LastExpr: c_uint = 145;
pub static CXCursor_FirstStmt: c_uint = 200;
pub static CXCursor_UnexposedStmt: c_uint = 200;
pub static CXCursor_LabelStmt: c_uint = 201;
pub static CXCursor_CompoundStmt: c_uint = 202;
pub static CXCursor_CaseStmt: c_uint = 203;
pub static CXCursor_DefaultStmt: c_uint = 204;
pub static CXCursor_IfStmt: c_uint = 205;
pub static CXCursor_SwitchStmt: c_uint = 206;
pub static CXCursor_WhileStmt: c_uint = 207;
pub static CXCursor_DoStmt: c_uint = 208;
pub static CXCursor_ForStmt: c_uint = 209;
pub static CXCursor_GotoStmt: c_uint = 210;
pub static CXCursor_IndirectGotoStmt: c_uint = 211;
pub static CXCursor_ContinueStmt: c_uint = 212;
pub static CXCursor_BreakStmt: c_uint = 213;
pub static CXCursor_ReturnStmt: c_uint = 214;
pub static CXCursor_AsmStmt: c_uint = 215;
pub static CXCursor_ObjCAtTryStmt: c_uint = 216;
pub static CXCursor_ObjCAtCatchStmt: c_uint = 217;
pub static CXCursor_ObjCAtFinallyStmt: c_uint = 218;
pub static CXCursor_ObjCAtThrowStmt: c_uint = 219;
pub static CXCursor_ObjCAtSynchronizedStmt: c_uint = 220;
pub static CXCursor_ObjCAutoreleasePoolStmt: c_uint = 221;
pub static CXCursor_ObjCForCollectionStmt: c_uint = 222;
pub static CXCursor_CXXCatchStmt: c_uint = 223;
pub static CXCursor_CXXTryStmt: c_uint = 224;
pub static CXCursor_CXXForRangeStmt: c_uint = 225;
pub static CXCursor_SEHTryStmt: c_uint = 226;
pub static CXCursor_SEHExceptStmt: c_uint = 227;
pub static CXCursor_SEHFinallyStmt: c_uint = 228;
pub static CXCursor_NullStmt: c_uint = 230;
pub static CXCursor_DeclStmt: c_uint = 231;
pub static CXCursor_LastStmt: c_uint = 231;
pub static CXCursor_TranslationUnit: c_uint = 300;
pub static CXCursor_FirstAttr: c_uint = 400;
pub static CXCursor_UnexposedAttr: c_uint = 400;
pub static CXCursor_IBActionAttr: c_uint = 401;
pub static CXCursor_IBOutletAttr: c_uint = 402;
pub static CXCursor_IBOutletCollectionAttr: c_uint = 403;
pub static CXCursor_CXXFinalAttr: c_uint = 404;
pub static CXCursor_CXXOverrideAttr: c_uint = 405;
pub static CXCursor_AnnotateAttr: c_uint = 406;
pub static CXCursor_AsmLabelAttr: c_uint = 407;
pub static CXCursor_LastAttr: c_uint = 407;
pub static CXCursor_PreprocessingDirective: c_uint = 500;
pub static CXCursor_MacroDefinition: c_uint = 501;
pub static CXCursor_MacroExpansion: c_uint = 502;
pub static CXCursor_MacroInstantiation: c_uint = 502;
pub static CXCursor_InclusionDirective: c_uint = 503;
pub static CXCursor_FirstPreprocessing: c_uint = 500;
pub static CXCursor_LastPreprocessing: c_uint = 503;
pub struct CXCursor {
pub kind: Enum_CXCursorKind,
pub xdata: c_int,
pub data: [*c_void, ..3u],
}
pub type Enum_CXLinkageKind = c_uint;
pub static CXLinkage_Invalid: c_uint = 0;
pub static CXLinkage_NoLinkage: c_uint = 1;
pub static CXLinkage_Internal: c_uint = 2;
pub static CXLinkage_UniqueExternal: c_uint = 3;
pub static CXLinkage_External: c_uint = 4;
pub type Enum_CXLanguageKind = c_uint;
pub static CXLanguage_Invalid: c_uint = 0;
pub static CXLanguage_C: c_uint = 1;
pub static CXLanguage_ObjC: c_uint = 2;
pub static CXLanguage_CPlusPlus: c_uint = 3;
pub type Struct_CXCursorSetImpl = c_void;
pub type CXCursorSet = *Struct_CXCursorSetImpl;
pub type Enum_CXTypeKind = c_uint;
pub static CXType_Invalid: c_uint = 0;
pub static CXType_Unexposed: c_uint = 1;
pub static CXType_Void: c_uint = 2;
pub static CXType_Bool: c_uint = 3;
pub static CXType_Char_U: c_uint = 4;
pub static CXType_UChar: c_uint = 5;
pub static CXType_Char16: c_uint = 6;
pub static CXType_Char32: c_uint = 7;
pub static CXType_UShort: c_uint = 8;
pub static CXType_UInt: c_uint = 9;
pub static CXType_ULong: c_uint = 10;
pub static CXType_ULongLong: c_uint = 11;
pub static CXType_UInt128: c_uint = 12;
pub static CXType_Char_S: c_uint = 13;
pub static CXType_SChar: c_uint = 14;
pub static CXType_WChar: c_uint = 15;
pub static CXType_Short: c_uint = 16;
pub static CXType_Int: c_uint = 17;
pub static CXType_Long: c_uint = 18;
pub static CXType_LongLong: c_uint = 19;
pub static CXType_Int128: c_uint = 20;
pub static CXType_Float: c_uint = 21;
pub static CXType_Double: c_uint = 22;
pub static CXType_LongDouble: c_uint = 23;
pub static CXType_NullPtr: c_uint = 24;
pub static CXType_Overload: c_uint = 25;
pub static CXType_Dependent: c_uint = 26;
pub static CXType_ObjCId: c_uint = 27;
pub static CXType_ObjCClass: c_uint = 28;
pub static CXType_ObjCSel: c_uint = 29;
pub static CXType_FirstBuiltin: c_uint = 2;
pub static CXType_LastBuiltin: c_uint = 29;
pub static CXType_Complex: c_uint = 100;
pub static CXType_Pointer: c_uint = 101;
pub static CXType_BlockPointer: c_uint = 102;
pub static CXType_LValueReference: c_uint = 103;
pub static CXType_RValueReference: c_uint = 104;
pub static CXType_Record: c_uint = 105;
pub static CXType_Enum: c_uint = 106;
pub static CXType_Typedef: c_uint = 107;
pub static CXType_ObjCInterface: c_uint = 108;
pub static CXType_ObjCObjectPointer: c_uint = 109;
pub static CXType_FunctionNoProto: c_uint = 110;
pub static CXType_FunctionProto: c_uint = 111;
pub static CXType_ConstantArray: c_uint = 112;
pub static CXType_Vector: c_uint = 113;
pub type Enum_CXCallingConv = c_uint;
pub static CXCallingConv_Default: c_uint = 0;
pub static CXCallingConv_C: c_uint = 1;
pub static CXCallingConv_X86StdCall: c_uint = 2;
pub static CXCallingConv_X86FastCall: c_uint = 3;
pub static CXCallingConv_X86ThisCall: c_uint = 4;
pub static CXCallingConv_X86Pascal: c_uint = 5;
pub static CXCallingConv_AAPCS: c_uint = 6;
pub static CXCallingConv_AAPCS_VFP: c_uint = 7;
pub static CXCallingConv_Invalid: c_uint = 100;
pub static CXCallingConv_Unexposed: c_uint = 200;
pub struct CXType {
pub kind: Enum_CXTypeKind,
pub data: [*c_void, ..2u],
}
pub type Enum_CX_CXXAccessSpecifier = c_uint;
pub static CX_CXXInvalidAccessSpecifier: c_uint = 0;
pub static CX_CXXPublic: c_uint = 1;
pub static CX_CXXProtected: c_uint = 2;
pub static CX_CXXPrivate: c_uint = 3;
pub type Enum_CXChildVisitResult = c_uint;
pub static CXChildVisit_Break: c_uint = 0;
pub static CXChildVisit_Continue: c_uint = 1;
pub static CXChildVisit_Recurse: c_uint = 2;
pub type CXCursorVisitor = *u8;
pub type Enum_CXNameRefFlags = c_uint;
pub static CXNameRange_WantQualifier: c_uint = 1;
pub static CXNameRange_WantTemplateArgs: c_uint = 2;
pub static CXNameRange_WantSinglePiece: c_uint = 4;
pub type Enum_CXTokenKind = c_uint;
pub static CXToken_Punctuation: c_uint = 0;
pub static CXToken_Keyword: c_uint = 1;
pub static CXToken_Identifier: c_uint = 2;
pub static CXToken_Literal: c_uint = 3;
pub static CXToken_Comment: c_uint = 4;
pub type CXTokenKind = Enum_CXTokenKind;
pub struct CXToken {
pub int_data: [c_uint, ..4u],
pub ptr_data: *c_void,
}
pub type CXCompletionString = *c_void;
pub struct CXCompletionResult {
pub CursorKind: Enum_CXCursorKind,
pub CompletionString: CXCompletionString,
}
pub type Enum_CXCompletionChunkKind = c_uint;
pub static CXCompletionChunk_Optional: c_uint = 0;
pub static CXCompletionChunk_TypedText: c_uint = 1;
pub static CXCompletionChunk_Text: c_uint = 2;
pub static CXCompletionChunk_Placeholder: c_uint = 3;
pub static CXCompletionChunk_Informative: c_uint = 4;
pub static CXCompletionChunk_CurrentParameter: c_uint = 5;
pub static CXCompletionChunk_LeftParen: c_uint = 6;
pub static CXCompletionChunk_RightParen: c_uint = 7;
pub static CXCompletionChunk_LeftBracket: c_uint = 8;
pub static CXCompletionChunk_RightBracket: c_uint = 9;
pub static CXCompletionChunk_LeftBrace: c_uint = 10;
pub static CXCompletionChunk_RightBrace: c_uint = 11;
pub static CXCompletionChunk_LeftAngle: c_uint = 12;
pub static CXCompletionChunk_RightAngle: c_uint = 13;
pub static CXCompletionChunk_Comma: c_uint = 14;
pub static CXCompletionChunk_ResultType: c_uint = 15;
pub static CXCompletionChunk_Colon: c_uint = 16;
pub static CXCompletionChunk_SemiColon: c_uint = 17;
pub static CXCompletionChunk_Equal: c_uint = 18;
pub static CXCompletionChunk_HorizontalSpace: c_uint = 19;
pub static CXCompletionChunk_VerticalSpace: c_uint = 20;
pub struct CXCodeCompleteResults {
pub Results: *CXCompletionResult,
pub NumResults: c_uint,
}
pub type Enum_CXCodeComplete_Flags = c_uint;
pub static CXCodeComplete_IncludeMacros: c_uint = 1;
pub static CXCodeComplete_IncludeCodePatterns: c_uint = 2;
pub type Enum_CXCompletionContext = c_uint;
pub static CXCompletionContext_Unexposed: c_uint = 0;
pub static CXCompletionContext_AnyType: c_uint = 1;
pub static CXCompletionContext_AnyValue: c_uint = 2;
pub static CXCompletionContext_ObjCObjectValue: c_uint = 4;
pub static CXCompletionContext_ObjCSelectorValue: c_uint = 8;
pub static CXCompletionContext_CXXClassTypeValue: c_uint = 16;
pub static CXCompletionContext_DotMemberAccess: c_uint = 32;
pub static CXCompletionContext_ArrowMemberAccess: c_uint = 64;
pub static CXCompletionContext_ObjCPropertyAccess: c_uint = 128;
pub static CXCompletionContext_EnumTag: c_uint = 256;
pub static CXCompletionContext_UnionTag: c_uint = 512;
pub static CXCompletionContext_StructTag: c_uint = 1024;
pub static CXCompletionContext_ClassTag: c_uint = 2048;
pub static CXCompletionContext_Namespace: c_uint = 4096;
pub static CXCompletionContext_NestedNameSpecifier: c_uint = 8192;
pub static CXCompletionContext_ObjCInterface: c_uint = 16384;
pub static CXCompletionContext_ObjCProtocol: c_uint = 32768;
pub static CXCompletionContext_ObjCCategory: c_uint = 65536;
pub static CXCompletionContext_ObjCInstanceMessage: c_uint = 131072;
pub static CXCompletionContext_ObjCClassMessage: c_uint = 262144;
pub static CXCompletionContext_ObjCSelectorName: c_uint = 524288;
pub static CXCompletionContext_MacroName: c_uint = 1048576;
pub static CXCompletionContext_NaturalLanguage: c_uint = 2097152;
pub static CXCompletionContext_Unknown: c_uint = 4194303;
pub type CXInclusionVisitor = *u8;
pub type CXRemapping = *c_void;
pub type Enum_CXVisitorResult = c_uint;
pub static CXVisit_Break: c_uint = 0;
pub static CXVisit_Continue: c_uint = 1;
pub struct CXCursorAndRangeVisitor {
pub context: *c_void,
pub visit: *u8,
}
pub type CXIdxClientFile = *c_void;
pub type CXIdxClientEntity = *c_void;
pub type CXIdxClientContainer = *c_void;
pub type CXIdxClientASTFile = *c_void;
pub struct CXIdxLoc {
pub ptr_data: [*c_void, ..2u],
pub int_data: c_uint,
}
pub struct CXIdxIncludedFileInfo {
pub hashLoc: CXIdxLoc,
pub filename: *c_schar,
pub file: CXFile,
pub isImport: c_int,
pub isAngled: c_int,
}
pub struct CXIdxImportedASTFileInfo {
pub file: CXFile,
pub loc: CXIdxLoc,
pub isModule: c_int,
}
pub type CXIdxEntityKind = c_uint;
pub static CXIdxEntity_Unexposed: c_uint = 0;
pub static CXIdxEntity_Typedef: c_uint = 1;
pub static CXIdxEntity_Function: c_uint = 2;
pub static CXIdxEntity_Variable: c_uint = 3;
pub static CXIdxEntity_Field: c_uint = 4;
pub static CXIdxEntity_EnumConstant: c_uint = 5;
pub static CXIdxEntity_ObjCClass: c_uint = 6;
pub static CXIdxEntity_ObjCProtocol: c_uint = 7;
pub static CXIdxEntity_ObjCCategory: c_uint = 8;
pub static CXIdxEntity_ObjCInstanceMethod: c_uint = 9;
pub static CXIdxEntity_ObjCClassMethod: c_uint = 10;
pub static CXIdxEntity_ObjCProperty: c_uint = 11;
pub static CXIdxEntity_ObjCIvar: c_uint = 12;
pub static CXIdxEntity_Enum: c_uint = 13;
pub static CXIdxEntity_Struct: c_uint = 14;
pub static CXIdxEntity_Union: c_uint = 15;
pub static CXIdxEntity_CXXClass: c_uint = 16;
pub static CXIdxEntity_CXXNamespace: c_uint = 17;
pub static CXIdxEntity_CXXNamespaceAlias: c_uint = 18;
pub static CXIdxEntity_CXXStaticVariable: c_uint = 19;
pub static CXIdxEntity_CXXStaticMethod: c_uint = 20;
pub static CXIdxEntity_CXXInstanceMethod: c_uint = 21;
pub static CXIdxEntity_CXXConstructor: c_uint = 22;
pub static CXIdxEntity_CXXDestructor: c_uint = 23;
pub static CXIdxEntity_CXXConversionFunction: c_uint = 24;
pub static CXIdxEntity_CXXTypeAlias: c_uint = 25;
pub type CXIdxEntityLanguage = c_uint;
pub static CXIdxEntityLang_None: c_uint = 0;
pub static CXIdxEntityLang_C: c_uint = 1;
pub static CXIdxEntityLang_ObjC: c_uint = 2;
pub static CXIdxEntityLang_CXX: c_uint = 3;
pub type CXIdxEntityCXXTemplateKind = c_uint;
pub static CXIdxEntity_NonTemplate: c_uint = 0;
pub static CXIdxEntity_Template: c_uint = 1;
pub static CXIdxEntity_TemplatePartialSpecialization: c_uint = 2;
pub static CXIdxEntity_TemplateSpecialization: c_uint = 3;
pub type CXIdxAttrKind = c_uint;
pub static CXIdxAttr_Unexposed: c_uint = 0;
pub static CXIdxAttr_IBAction: c_uint = 1;
pub static CXIdxAttr_IBOutlet: c_uint = 2;
pub static CXIdxAttr_IBOutletCollection: c_uint = 3;
pub struct CXIdxAttrInfo {
pub kind: CXIdxAttrKind,
pub cursor: CXCursor,
pub loc: CXIdxLoc,
}
pub struct CXIdxEntityInfo {
pub kind: CXIdxEntityKind,
pub templateKind: CXIdxEntityCXXTemplateKind,
pub lang: CXIdxEntityLanguage,
pub name: *c_schar,
pub USR: *c_schar,
pub cursor: CXCursor,
pub attributes: **CXIdxAttrInfo,
pub numAttributes: c_uint,
}
pub struct CXIdxContainerInfo {
pub cursor: CXCursor,
}
pub struct CXIdxIBOutletCollectionAttrInfo {
pub attrInfo: *CXIdxAttrInfo,
pub objcClass: *CXIdxEntityInfo,
pub classCursor: CXCursor,
pub classLoc: CXIdxLoc,
}
pub struct CXIdxDeclInfo {
pub entityInfo: *CXIdxEntityInfo,
pub cursor: CXCursor,
pub loc: CXIdxLoc,
pub semanticContainer: *CXIdxContainerInfo,
pub lexicalContainer: *CXIdxContainerInfo,
pub isRedeclaration: c_int,
pub isDefinition: c_int,
pub isContainer: c_int,
pub declAsContainer: *CXIdxContainerInfo,
pub isImplicit: c_int,
pub attributes: **CXIdxAttrInfo,
pub numAttributes: c_uint,
}
pub type CXIdxObjCContainerKind = c_uint;
pub static CXIdxObjCContainer_ForwardRef: c_uint = 0;
pub static CXIdxObjCContainer_Interface: c_uint = 1;
pub static CXIdxObjCContainer_Implementation: c_uint = 2;
pub struct CXIdxObjCContainerDeclInfo {
pub declInfo: *CXIdxDeclInfo,
pub kind: CXIdxObjCContainerKind,
}
pub struct CXIdxBaseClassInfo {
pub base: *CXIdxEntityInfo,
pub cursor: CXCursor,
pub loc: CXIdxLoc,
}
pub struct CXIdxObjCProtocolRefInfo {
pub protocol: *CXIdxEntityInfo,
pub cursor: CXCursor,
pub loc: CXIdxLoc,
}
pub struct CXIdxObjCProtocolRefListInfo {
pub protocols: **CXIdxObjCProtocolRefInfo,
pub numProtocols: c_uint,
}
pub struct CXIdxObjCInterfaceDeclInfo {
pub containerInfo: *CXIdxObjCContainerDeclInfo,
pub superInfo: *CXIdxBaseClassInfo,
pub protocols: *CXIdxObjCProtocolRefListInfo,
}
pub struct CXIdxObjCCategoryDeclInfo {
pub containerInfo: *CXIdxObjCContainerDeclInfo,
pub objcClass: *CXIdxEntityInfo,
pub classCursor: CXCursor,
pub classLoc: CXIdxLoc,
pub protocols: *CXIdxObjCProtocolRefListInfo,
}
pub struct CXIdxObjCPropertyDeclInfo {
pub declInfo: *CXIdxDeclInfo,
pub getter: *CXIdxEntityInfo,
pub setter: *CXIdxEntityInfo,
}
pub struct CXIdxCXXClassDeclInfo {
pub declInfo: *CXIdxDeclInfo,
pub bases: **CXIdxBaseClassInfo,
pub numBases: c_uint,
}
pub type CXIdxEntityRefKind = c_uint;
pub static CXIdxEntityRef_Direct: c_uint = 1;
pub static CXIdxEntityRef_Implicit: c_uint = 2;
pub struct CXIdxEntityRefInfo {
pub kind: CXIdxEntityRefKind,
pub cursor: CXCursor,
pub loc: CXIdxLoc,
pub referencedEntity: *CXIdxEntityInfo,
pub parentEntity: *CXIdxEntityInfo,
pub container: *CXIdxContainerInfo,
}
pub struct IndexerCallbacks {
pub abortQuery: *u8,
pub diagnostic: *u8,
pub enteredMainFile: *u8,
pub ppIncludedFile: *u8,
pub importedASTFile: *u8,
pub startedTranslationUnit: *u8,
pub indexDeclaration: *u8,
pub indexEntityReference: *u8,
}
pub type CXIndexAction = *c_void;
pub type CXIndexOptFlags = c_uint;
pub static CXIndexOpt_None: c_uint = 0;
pub static CXIndexOpt_SuppressRedundantRefs: c_uint = 1;
pub static CXIndexOpt_IndexFunctionLocalSymbols: c_uint = 2;
pub static CXIndexOpt_IndexImplicitTemplateInstantiations: c_uint = 4;
pub static CXIndexOpt_SuppressWarnings: c_uint = 8;
#[link_args = "-lclang"]
pub extern "C" {
fn clang_getCString(+string: CXString) -> *c_schar;
fn clang_disposeString(+string: CXString);
fn clang_createIndex(+excludeDeclarationsFromPCH: c_int,
+displayDiagnostics: c_int) -> CXIndex;
fn clang_disposeIndex(+index: CXIndex);
fn clang_CXIndex_setGlobalOptions(+arg1: CXIndex, +options: c_uint);
fn clang_CXIndex_getGlobalOptions(+arg1: CXIndex) -> c_uint;
fn clang_getFileName(+SFile: CXFile) -> CXString;
fn clang_getFileTime(+SFile: CXFile) -> time_t;
fn clang_isFileMultipleIncludeGuarded(+tu: CXTranslationUnit,
+file: CXFile) -> c_uint;
fn clang_getFile(+tu: CXTranslationUnit, +file_name: *c_schar) -> CXFile;
fn clang_getNullLocation() -> CXSourceLocation;
fn clang_equalLocations(+loc1: CXSourceLocation, +loc2: CXSourceLocation)
-> c_uint;
fn clang_getLocation(+tu: CXTranslationUnit, +file: CXFile, +line: c_uint,
+column: c_uint) -> CXSourceLocation;
fn clang_getLocationForOffset(+tu: CXTranslationUnit, +file: CXFile,
+offset: c_uint) -> CXSourceLocation;
fn clang_getNullRange() -> CXSourceRange;
fn clang_getRange(+begin: CXSourceLocation, +end: CXSourceLocation) ->
CXSourceRange;
fn clang_equalRanges(+range1: CXSourceRange, +range2: CXSourceRange) ->
c_uint;
fn clang_Range_isNull(+range: CXSourceRange) -> c_int;
fn clang_getExpansionLocation(+location: CXSourceLocation, +file: *CXFile,
+line: *c_uint, +column: *c_uint,
+offset: *c_uint);
fn clang_getPresumedLocation(+location: CXSourceLocation,
+filename: *CXString, +line: *c_uint,
+column: *c_uint);
fn clang_getInstantiationLocation(+location: CXSourceLocation,
+file: *CXFile, +line: *c_uint,
+column: *c_uint, +offset: *c_uint);
fn clang_getSpellingLocation(+location: CXSourceLocation, +file: *CXFile,
+line: *c_uint, +column: *c_uint,
+offset: *c_uint);
fn clang_getRangeStart(+range: CXSourceRange) -> CXSourceLocation;
fn clang_getRangeEnd(+range: CXSourceRange) -> CXSourceLocation;
fn clang_getNumDiagnosticsInSet(+Diags: CXDiagnosticSet) -> c_uint;
fn clang_getDiagnosticInSet(+Diags: CXDiagnosticSet, +Index: c_uint) ->
CXDiagnostic;
fn clang_loadDiagnostics(+file: *c_schar, +error: *Enum_CXLoadDiag_Error,
+errorString: *CXString) -> CXDiagnosticSet;
fn clang_disposeDiagnosticSet(+Diags: CXDiagnosticSet);
fn clang_getChildDiagnostics(+D: CXDiagnostic) -> CXDiagnosticSet;
fn clang_getNumDiagnostics(+Unit: CXTranslationUnit) -> c_uint;
fn clang_getDiagnostic(+Unit: CXTranslationUnit, +Index: c_uint) ->
CXDiagnostic;
fn clang_getDiagnosticSetFromTU(+Unit: CXTranslationUnit) ->
CXDiagnosticSet;
fn clang_disposeDiagnostic(+Diagnostic: CXDiagnostic);
fn clang_formatDiagnostic(+Diagnostic: CXDiagnostic, +Options: c_uint) ->
CXString;
fn clang_defaultDiagnosticDisplayOptions() -> c_uint;
fn clang_getDiagnosticSeverity(+arg1: CXDiagnostic) ->
Enum_CXDiagnosticSeverity;
fn clang_getDiagnosticLocation(+arg1: CXDiagnostic) -> CXSourceLocation;
fn clang_getDiagnosticSpelling(+arg1: CXDiagnostic) -> CXString;
fn clang_getDiagnosticOption(+Diag: CXDiagnostic, +Disable: *CXString) ->
CXString;
fn clang_getDiagnosticCategory(+arg1: CXDiagnostic) -> c_uint;
fn clang_getDiagnosticCategoryName(+Category: c_uint) -> CXString;
fn clang_getDiagnosticCategoryText(+arg1: CXDiagnostic) -> CXString;
fn clang_getDiagnosticNumRanges(+arg1: CXDiagnostic) -> c_uint;
fn clang_getDiagnosticRange(+Diagnostic: CXDiagnostic, +Range: c_uint) ->
CXSourceRange;
fn clang_getDiagnosticNumFixIts(+Diagnostic: CXDiagnostic) -> c_uint;
fn clang_getDiagnosticFixIt(+Diagnostic: CXDiagnostic, +FixIt: c_uint,
+ReplacementRange: *CXSourceRange) ->
CXString;
fn clang_getTranslationUnitSpelling(+CTUnit: CXTranslationUnit) ->
CXString;
fn clang_createTranslationUnitFromSourceFile(+CIdx: CXIndex,
+source_filename: *c_schar,
+num_clang_command_line_args:
c_int,
+clang_command_line_args:
**c_schar,
+num_unsaved_files: c_uint,
+unsaved_files:
*Struct_CXUnsavedFile) ->
CXTranslationUnit;
fn clang_createTranslationUnit(+arg1: CXIndex, +ast_filename: *c_schar) ->
CXTranslationUnit;
fn clang_defaultEditingTranslationUnitOptions() -> c_uint;
fn clang_parseTranslationUnit(+CIdx: CXIndex, +source_filename: *c_schar,
+command_line_args: **c_schar,
+num_command_line_args: c_int,
+unsaved_files: *Struct_CXUnsavedFile,
+num_unsaved_files: c_uint,
+options: c_uint) -> CXTranslationUnit;
fn clang_defaultSaveOptions(+TU: CXTranslationUnit) -> c_uint;
fn clang_saveTranslationUnit(+TU: CXTranslationUnit, +FileName: *c_schar,
+options: c_uint) -> c_int;
fn clang_disposeTranslationUnit(+arg1: CXTranslationUnit);
fn clang_defaultReparseOptions(+TU: CXTranslationUnit) -> c_uint;
fn clang_reparseTranslationUnit(+TU: CXTranslationUnit,
+num_unsaved_files: c_uint,
+unsaved_files: *Struct_CXUnsavedFile,
+options: c_uint) -> c_int;
fn clang_getTUResourceUsageName(+kind: Enum_CXTUResourceUsageKind) ->
*c_schar;
fn clang_getCXTUResourceUsage(+TU: CXTranslationUnit) ->
CXTUResourceUsage;
fn clang_disposeCXTUResourceUsage(+usage: CXTUResourceUsage);
fn clang_getNullCursor() -> CXCursor;
fn clang_getTranslationUnitCursor(+arg1: CXTranslationUnit) -> CXCursor;
fn clang_equalCursors(+arg1: CXCursor, +arg2: CXCursor) -> c_uint;
fn clang_Cursor_isNull(+arg1: CXCursor) -> c_int;
fn clang_hashCursor(+arg1: CXCursor) -> c_uint;
fn clang_getCursorKind(+arg1: CXCursor) -> Enum_CXCursorKind;
fn clang_isDeclaration(+arg1: Enum_CXCursorKind) -> c_uint;
fn clang_isReference(+arg1: Enum_CXCursorKind) -> c_uint;
fn clang_isExpression(+arg1: Enum_CXCursorKind) -> c_uint;
fn clang_isStatement(+arg1: Enum_CXCursorKind) -> c_uint;
fn clang_isAttribute(+arg1: Enum_CXCursorKind) -> c_uint;
fn clang_isInvalid(+arg1: Enum_CXCursorKind) -> c_uint;
fn clang_isTranslationUnit(+arg1: Enum_CXCursorKind) -> c_uint;
fn clang_isPreprocessing(+arg1: Enum_CXCursorKind) -> c_uint;
fn clang_isUnexposed(+arg1: Enum_CXCursorKind) -> c_uint;
fn clang_getCursorLinkage(+cursor: CXCursor) -> Enum_CXLinkageKind;
fn clang_getCursorAvailability(+cursor: CXCursor) ->
Enum_CXAvailabilityKind;
fn clang_getCursorLanguage(+cursor: CXCursor) -> Enum_CXLanguageKind;
fn clang_Cursor_getTranslationUnit(+arg1: CXCursor) -> CXTranslationUnit;
fn clang_createCXCursorSet() -> CXCursorSet;
fn clang_disposeCXCursorSet(+cset: CXCursorSet);
fn clang_CXCursorSet_contains(+cset: CXCursorSet, +cursor: CXCursor) ->
c_uint;
fn clang_CXCursorSet_insert(+cset: CXCursorSet, +cursor: CXCursor) ->
c_uint;
fn clang_getCursorSemanticParent(+cursor: CXCursor) -> CXCursor;
fn clang_getCursorLexicalParent(+cursor: CXCursor) -> CXCursor;
fn clang_getOverriddenCursors(+cursor: CXCursor, +overridden: **CXCursor,
+num_overridden: *c_uint);
fn clang_disposeOverriddenCursors(+overridden: *CXCursor);
fn clang_getIncludedFile(+cursor: CXCursor) -> CXFile;
fn clang_getCursor(+arg1: CXTranslationUnit, +arg2: CXSourceLocation) ->
CXCursor;
fn clang_getCursorLocation(+arg1: CXCursor) -> CXSourceLocation;
fn clang_getCursorExtent(+arg1: CXCursor) -> CXSourceRange;
fn clang_getCursorType(+C: CXCursor) -> CXType;
fn clang_getTypedefDeclUnderlyingType(+C: CXCursor) -> CXType;
fn clang_getEnumDeclIntegerType(+C: CXCursor) -> CXType;
fn clang_getEnumConstantDeclValue(+C: CXCursor) -> c_longlong;
fn clang_getEnumConstantDeclUnsignedValue(+C: CXCursor) -> c_ulonglong;
fn clang_Cursor_getNumArguments(+C: CXCursor) -> c_int;
fn clang_Cursor_getArgument(+C: CXCursor, +i: c_uint) -> CXCursor;
fn clang_equalTypes(+A: CXType, +B: CXType) -> c_uint;
fn clang_getCanonicalType(+T: CXType) -> CXType;
fn clang_isConstQualifiedType(+T: CXType) -> c_uint;
fn clang_isVolatileQualifiedType(+T: CXType) -> c_uint;
fn clang_isRestrictQualifiedType(+T: CXType) -> c_uint;
fn clang_getPointeeType(+T: CXType) -> CXType;
fn clang_getTypeDeclaration(+T: CXType) -> CXCursor;
fn clang_getDeclObjCTypeEncoding(+C: CXCursor) -> CXString;
fn clang_getTypeKindSpelling(+K: Enum_CXTypeKind) -> CXString;
fn clang_getFunctionTypeCallingConv(+T: CXType) -> Enum_CXCallingConv;
fn clang_getResultType(+T: CXType) -> CXType;
fn clang_getNumArgTypes(+T: CXType) -> c_int;
fn clang_getArgType(+T: CXType, +i: c_uint) -> CXType;
fn clang_isFunctionTypeVariadic(+T: CXType) -> c_uint;
fn clang_getCursorResultType(+C: CXCursor) -> CXType;
fn clang_isPODType(+T: CXType) -> c_uint;
fn clang_getElementType(+T: CXType) -> CXType;
fn clang_getNumElements(+T: CXType) -> c_longlong;
fn clang_getArrayElementType(+T: CXType) -> CXType;
fn clang_getArraySize(+T: CXType) -> c_longlong;
fn clang_isVirtualBase(+arg1: CXCursor) -> c_uint;
fn clang_getCXXAccessSpecifier(+arg1: CXCursor) ->
Enum_CX_CXXAccessSpecifier;
fn clang_getNumOverloadedDecls(+cursor: CXCursor) -> c_uint;
fn clang_getOverloadedDecl(+cursor: CXCursor, +index: c_uint) -> CXCursor;
fn clang_getIBOutletCollectionType(+arg1: CXCursor) -> CXType;
fn clang_visitChildren(+parent: CXCursor, +visitor: CXCursorVisitor,
+client_data: CXClientData) -> c_uint;
fn clang_getCursorUSR(+arg1: CXCursor) -> CXString;
fn clang_constructUSR_ObjCClass(+class_name: *c_schar) -> CXString;
fn clang_constructUSR_ObjCCategory(+class_name: *c_schar,
+category_name: *c_schar) -> CXString;
fn clang_constructUSR_ObjCProtocol(+protocol_name: *c_schar) -> CXString;
fn clang_constructUSR_ObjCIvar(+name: *c_schar, +classUSR: CXString) ->
CXString;
fn clang_constructUSR_ObjCMethod(+name: *c_schar,
+isInstanceMethod: c_uint,
+classUSR: CXString) -> CXString;
fn clang_constructUSR_ObjCProperty(+property: *c_schar,
+classUSR: CXString) -> CXString;
fn clang_getCursorSpelling(+arg1: CXCursor) -> CXString;
fn clang_Cursor_getSpellingNameRange(+arg1: CXCursor, +pieceIndex: c_uint,
+options: c_uint) -> CXSourceRange;
fn clang_getCursorDisplayName(+arg1: CXCursor) -> CXString;
fn clang_getCursorReferenced(+arg1: CXCursor) -> CXCursor;
fn clang_getCursorDefinition(+arg1: CXCursor) -> CXCursor;
fn clang_isCursorDefinition(+arg1: CXCursor) -> c_uint;
fn clang_getCanonicalCursor(+arg1: CXCursor) -> CXCursor;
fn clang_Cursor_getObjCSelectorIndex(+arg1: CXCursor) -> c_int;
fn clang_CXXMethod_isStatic(+C: CXCursor) -> c_uint;
fn clang_CXXMethod_isVirtual(+C: CXCursor) -> c_uint;
fn clang_getTemplateCursorKind(+C: CXCursor) -> Enum_CXCursorKind;
fn clang_getSpecializedCursorTemplate(+C: CXCursor) -> CXCursor;
fn clang_getCursorReferenceNameRange(+C: CXCursor, +NameFlags: c_uint,
+PieceIndex: c_uint) ->
CXSourceRange;
fn clang_getTokenKind(+arg1: CXToken) -> CXTokenKind;
fn clang_getTokenSpelling(+arg1: CXTranslationUnit, +arg2: CXToken) ->
CXString;
fn clang_getTokenLocation(+arg1: CXTranslationUnit, +arg2: CXToken) ->
CXSourceLocation;
fn clang_getTokenExtent(+arg1: CXTranslationUnit, +arg2: CXToken) ->
CXSourceRange;
fn clang_tokenize(+TU: CXTranslationUnit, +Range: CXSourceRange,
+Tokens: **CXToken, +NumTokens: *c_uint);
fn clang_annotateTokens(+TU: CXTranslationUnit, +Tokens: *CXToken,
+NumTokens: c_uint, +Cursors: *CXCursor);
fn clang_disposeTokens(+TU: CXTranslationUnit, +Tokens: *CXToken,
+NumTokens: c_uint);
fn clang_getCursorKindSpelling(+Kind: Enum_CXCursorKind) -> CXString;
fn clang_getDefinitionSpellingAndExtent(+arg1: CXCursor,
+startBuf: **c_schar,
+endBuf: **c_schar,
+startLine: *c_uint,
+startColumn: *c_uint,
+endLine: *c_uint,
+endColumn: *c_uint);
fn clang_enableStackTraces();
fn clang_executeOnThread(+_fn: *u8, +user_data: *c_void,
+stack_size: c_uint);
fn clang_getCompletionChunkKind(+completion_string: CXCompletionString,
+chunk_number: c_uint) ->
Enum_CXCompletionChunkKind;
fn clang_getCompletionChunkText(+completion_string: CXCompletionString,
+chunk_number: c_uint) -> CXString;
fn clang_getCompletionChunkCompletionString(+completion_string:
CXCompletionString,
+chunk_number: c_uint) ->
CXCompletionString;
fn clang_getNumCompletionChunks(+completion_string: CXCompletionString) ->
c_uint;
fn clang_getCompletionPriority(+completion_string: CXCompletionString) ->
c_uint;
fn clang_getCompletionAvailability(+completion_string: CXCompletionString)
-> Enum_CXAvailabilityKind;
fn clang_getCompletionNumAnnotations(+completion_string:
CXCompletionString) -> c_uint;
fn clang_getCompletionAnnotation(+completion_string: CXCompletionString,
+annotation_number: c_uint) -> CXString;
fn clang_getCompletionParent(+completion_string: CXCompletionString,
+kind: *Enum_CXCursorKind) -> CXString;
fn clang_getCursorCompletionString(+cursor: CXCursor) ->
CXCompletionString;
fn clang_defaultCodeCompleteOptions() -> c_uint;
fn clang_codeCompleteAt(+TU: CXTranslationUnit,
+complete_filename: *c_schar,
+complete_line: c_uint, +complete_column: c_uint,
+unsaved_files: *Struct_CXUnsavedFile,
+num_unsaved_files: c_uint, +options: c_uint) ->
*CXCodeCompleteResults;
fn clang_sortCodeCompletionResults(+Results: *CXCompletionResult,
+NumResults: c_uint);
fn clang_disposeCodeCompleteResults(+Results: *CXCodeCompleteResults);
fn clang_codeCompleteGetNumDiagnostics(+Results: *CXCodeCompleteResults)
-> c_uint;
fn clang_codeCompleteGetDiagnostic(+Results: *CXCodeCompleteResults,
+Index: c_uint) -> CXDiagnostic;
fn clang_codeCompleteGetContexts(+Results: *CXCodeCompleteResults) ->
c_ulonglong;
fn clang_codeCompleteGetContainerKind(+Results: *CXCodeCompleteResults,
+IsIncomplete: *c_uint) ->
Enum_CXCursorKind;
fn clang_codeCompleteGetContainerUSR(+Results: *CXCodeCompleteResults) ->
CXString;
fn clang_codeCompleteGetObjCSelector(+Results: *CXCodeCompleteResults) ->
CXString;
fn clang_getClangVersion() -> CXString;
fn clang_toggleCrashRecovery(+isEnabled: c_uint);
fn clang_getInclusions(+tu: CXTranslationUnit,
+visitor: CXInclusionVisitor,
+client_data: CXClientData);
fn clang_getRemappings(+path: *c_schar) -> CXRemapping;
fn clang_getRemappingsFromFileList(+filePaths: **c_schar,
+numFiles: c_uint) -> CXRemapping;
fn clang_remap_getNumFiles(+arg1: CXRemapping) -> c_uint;
fn clang_remap_getFilenames(+arg1: CXRemapping, +index: c_uint,
+original: *CXString,
+transformed: *CXString);
fn clang_remap_dispose(+arg1: CXRemapping);
fn clang_findReferencesInFile(+cursor: CXCursor, +file: CXFile,
+visitor: CXCursorAndRangeVisitor);
fn clang_index_isEntityObjCContainerKind(+arg1: CXIdxEntityKind) -> c_int;
fn clang_index_getObjCContainerDeclInfo(+arg1: *CXIdxDeclInfo) ->
*CXIdxObjCContainerDeclInfo;
fn clang_index_getObjCInterfaceDeclInfo(+arg1: *CXIdxDeclInfo) ->
*CXIdxObjCInterfaceDeclInfo;
fn clang_index_getObjCCategoryDeclInfo(+arg1: *CXIdxDeclInfo) ->
*CXIdxObjCCategoryDeclInfo;
fn clang_index_getObjCProtocolRefListInfo(+arg1: *CXIdxDeclInfo) ->
*CXIdxObjCProtocolRefListInfo;
fn clang_index_getObjCPropertyDeclInfo(+arg1: *CXIdxDeclInfo) ->
*CXIdxObjCPropertyDeclInfo;
fn clang_index_getIBOutletCollectionAttrInfo(+arg1: *CXIdxAttrInfo) ->
*CXIdxIBOutletCollectionAttrInfo;
fn clang_index_getCXXClassDeclInfo(+arg1: *CXIdxDeclInfo) ->
*CXIdxCXXClassDeclInfo;
fn clang_index_getClientContainer(+arg1: *CXIdxContainerInfo) ->
CXIdxClientContainer;
fn clang_index_setClientContainer(+arg1: *CXIdxContainerInfo,
+arg2: CXIdxClientContainer);
fn clang_index_getClientEntity(+arg1: *CXIdxEntityInfo) ->
CXIdxClientEntity;
fn clang_index_setClientEntity(+arg1: *CXIdxEntityInfo,
+arg2: CXIdxClientEntity);
fn clang_IndexAction_create(+CIdx: CXIndex) -> CXIndexAction;
fn clang_IndexAction_dispose(+arg1: CXIndexAction);
fn clang_indexSourceFile(+arg1: CXIndexAction, +client_data: CXClientData,
+index_callbacks: *IndexerCallbacks,
+index_callbacks_size: c_uint,
+index_options: c_uint,
+source_filename: *c_schar,
+command_line_args: **c_schar,
+num_command_line_args: c_int,
+unsaved_files: *Struct_CXUnsavedFile,
+num_unsaved_files: c_uint,
+out_TU: *CXTranslationUnit, +TU_options: c_uint)
-> c_int;
fn clang_indexTranslationUnit(+arg1: CXIndexAction,
+client_data: CXClientData,
+index_callbacks: *IndexerCallbacks,
+index_callbacks_size: c_uint,
+index_options: c_uint,
+arg2: CXTranslationUnit) -> c_int;
fn clang_indexLoc_getFileLocation(+loc: CXIdxLoc,
+indexFile: *CXIdxClientFile,
+file: *CXFile, +line: *c_uint,
+column: *c_uint, +offset: *c_uint);
fn clang_indexLoc_getCXSourceLocation(+loc: CXIdxLoc) -> CXSourceLocation;
}