diff --git a/lib/cursor.js b/lib/cursor.js index dfca6b3..fe90e7e 100644 --- a/lib/cursor.js +++ b/lib/cursor.js @@ -18,14 +18,15 @@ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE -var ffi = require('ffi'); -var ref = require('ref'); +var ffi = require('ffi-napi'); +var ref = require('ref-napi'); var d = require('./dynamic_clang'); var lib = d.libclang; var consts = d.CONSTANTS; var CXCursor = d.CXCursor; var CXCursorVisitor = d.CXCursorVisitor; +var CXClientData = d.CXClientData; var Location = require('./location'); @@ -127,7 +128,8 @@ Object.keys(consts.CXCursorKind).forEach(function (key) { } }); -function visitor (c, p, data) { +function visitor (c, p, dataPtr) { + var data = ref.readObject(dataPtr); var cb = data.cb; var s = new Cursor(c); var parent = new Cursor(p); @@ -145,12 +147,23 @@ function visitor (c, p, data) { } }; +const visitorCallback = ffi.Callback( + ref.types.uint32, + [ + CXCursor, + CXCursor, + CXClientData, + ], + visitor +); + Cursor.prototype.visitChildren = function (cb) { var data = { cb: cb, error: undefined, } - lib.clang_visitChildren(this._instance, visitor, data); + var dataPtr = ref.alloc("Object", data); + lib.clang_visitChildren(this._instance, visitorCallback, dataPtr); if (data.error) throw data.error; }; diff --git a/lib/dynamic_clang.js b/lib/dynamic_clang.js index ae2bb23..9646f0e 100644 --- a/lib/dynamic_clang.js +++ b/lib/dynamic_clang.js @@ -18,39 +18,40 @@ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE -var FFI = require('ffi'), - ArrayType = require('ref-array'), - Struct = require('ref-struct'), - ref = require('ref'); +var FFI = require('ffi-napi'), + ref = require('ref-napi'), + ArrayType = require('ref-array-di')(ref), + Struct = require('ref-struct-di')(ref), + Union = require('ref-union-di')(ref); + var voidPtr = ref.refType(ref.types.void); + exports.CONSTANTS = { - CXDiagnosticSeverity: { + 'CXErrorCode': { + CXError_Success: 0, + CXError_Failure: 1, + CXError_Crashed: 2, + CXError_InvalidArguments: 3, + CXError_ASTReadError: 4, + '0': 'CXError_Success', + '1': 'CXError_Failure', + '2': 'CXError_Crashed', + '3': 'CXError_InvalidArguments', + '4': 'CXError_ASTReadError', + }, + 'CXDiagnosticSeverity': { + CXDiagnostic_Ignored: 0, + CXDiagnostic_Note: 1, + CXDiagnostic_Warning: 2, + CXDiagnostic_Error: 3, + CXDiagnostic_Fatal: 4, '0': 'CXDiagnostic_Ignored', '1': 'CXDiagnostic_Note', '2': 'CXDiagnostic_Warning', '3': 'CXDiagnostic_Error', '4': 'CXDiagnostic_Fatal', - CXDiagnostic_Ignored: 0, - CXDiagnostic_Note: 1, - CXDiagnostic_Warning: 2, - CXDiagnostic_Error: 3, - CXDiagnostic_Fatal: 4 }, - CXTUResourceUsageKind: { - '1': 'CXTUResourceUsage_First', - '2': 'CXTUResourceUsage_Identifiers', - '3': 'CXTUResourceUsage_Selectors', - '4': 'CXTUResourceUsage_GlobalCompletionResults', - '5': 'CXTUResourceUsage_SourceManagerContentCache', - '6': 'CXTUResourceUsage_AST_SideTables', - '7': 'CXTUResourceUsage_SourceManager_Membuffer_Malloc', - '8': 'CXTUResourceUsage_SourceManager_Membuffer_MMap', - '9': 'CXTUResourceUsage_ExternalASTSource_Membuffer_Malloc', - '10': 'CXTUResourceUsage_ExternalASTSource_Membuffer_MMap', - '11': 'CXTUResourceUsage_Preprocessor', - '12': 'CXTUResourceUsage_PreprocessingRecord', - '13': 'CXTUResourceUsage_SourceManager_DataStructures', - '14': 'CXTUResourceUsage_Last', + 'CXTUResourceUsageKind': { CXTUResourceUsage_AST: 1, CXTUResourceUsage_Identifiers: 2, CXTUResourceUsage_Selectors: 3, @@ -68,155 +69,27 @@ exports.CONSTANTS = { CXTUResourceUsage_MEMORY_IN_BYTES_BEGIN: 1, CXTUResourceUsage_MEMORY_IN_BYTES_END: 14, CXTUResourceUsage_First: 1, - CXTUResourceUsage_Last: 14 + CXTUResourceUsage_Last: 14, + '1': 'CXTUResourceUsage_AST', + '2': 'CXTUResourceUsage_Identifiers', + '3': 'CXTUResourceUsage_Selectors', + '4': 'CXTUResourceUsage_GlobalCompletionResults', + '5': 'CXTUResourceUsage_SourceManagerContentCache', + '6': 'CXTUResourceUsage_AST_SideTables', + '7': 'CXTUResourceUsage_SourceManager_Membuffer_Malloc', + '8': 'CXTUResourceUsage_SourceManager_Membuffer_MMap', + '9': 'CXTUResourceUsage_ExternalASTSource_Membuffer_Malloc', + '10': 'CXTUResourceUsage_ExternalASTSource_Membuffer_MMap', + '11': 'CXTUResourceUsage_Preprocessor', + '12': 'CXTUResourceUsage_PreprocessingRecord', + '13': 'CXTUResourceUsage_SourceManager_DataStructures', + '14': 'CXTUResourceUsage_Preprocessor_HeaderSearch', + '1': 'CXTUResourceUsage_MEMORY_IN_BYTES_BEGIN', + '14': 'CXTUResourceUsage_MEMORY_IN_BYTES_END', + '1': 'CXTUResourceUsage_First', + '14': 'CXTUResourceUsage_Last', }, - CXCursorKind: { - '1': 'CXCursor_FirstDecl', - '2': 'CXCursor_StructDecl', - '3': 'CXCursor_UnionDecl', - '4': 'CXCursor_ClassDecl', - '5': 'CXCursor_EnumDecl', - '6': 'CXCursor_FieldDecl', - '7': 'CXCursor_EnumConstantDecl', - '8': 'CXCursor_FunctionDecl', - '9': 'CXCursor_VarDecl', - '10': 'CXCursor_ParmDecl', - '11': 'CXCursor_ObjCInterfaceDecl', - '12': 'CXCursor_ObjCCategoryDecl', - '13': 'CXCursor_ObjCProtocolDecl', - '14': 'CXCursor_ObjCPropertyDecl', - '15': 'CXCursor_ObjCIvarDecl', - '16': 'CXCursor_ObjCInstanceMethodDecl', - '17': 'CXCursor_ObjCClassMethodDecl', - '18': 'CXCursor_ObjCImplementationDecl', - '19': 'CXCursor_ObjCCategoryImplDecl', - '20': 'CXCursor_TypedefDecl', - '21': 'CXCursor_CXXMethod', - '22': 'CXCursor_Namespace', - '23': 'CXCursor_LinkageSpec', - '24': 'CXCursor_Constructor', - '25': 'CXCursor_Destructor', - '26': 'CXCursor_ConversionFunction', - '27': 'CXCursor_TemplateTypeParameter', - '28': 'CXCursor_NonTypeTemplateParameter', - '29': 'CXCursor_TemplateTemplateParameter', - '30': 'CXCursor_FunctionTemplate', - '31': 'CXCursor_ClassTemplate', - '32': 'CXCursor_ClassTemplatePartialSpecialization', - '33': 'CXCursor_NamespaceAlias', - '34': 'CXCursor_UsingDirective', - '35': 'CXCursor_UsingDeclaration', - '36': 'CXCursor_TypeAliasDecl', - '37': 'CXCursor_ObjCSynthesizeDecl', - '38': 'CXCursor_ObjCDynamicDecl', - '39': 'CXCursor_LastDecl', - '40': 'CXCursor_ObjCSuperClassRef', - '41': 'CXCursor_ObjCProtocolRef', - '42': 'CXCursor_ObjCClassRef', - '43': 'CXCursor_TypeRef', - '44': 'CXCursor_CXXBaseSpecifier', - '45': 'CXCursor_TemplateRef', - '46': 'CXCursor_NamespaceRef', - '47': 'CXCursor_MemberRef', - '48': 'CXCursor_LabelRef', - '49': 'CXCursor_OverloadedDeclRef', - '50': 'CXCursor_LastRef', - '70': 'CXCursor_InvalidFile', - '71': 'CXCursor_NoDeclFound', - '72': 'CXCursor_NotImplemented', - '73': 'CXCursor_LastInvalid', - '100': 'CXCursor_UnexposedExpr', - '101': 'CXCursor_DeclRefExpr', - '102': 'CXCursor_MemberRefExpr', - '103': 'CXCursor_CallExpr', - '104': 'CXCursor_ObjCMessageExpr', - '105': 'CXCursor_BlockExpr', - '106': 'CXCursor_IntegerLiteral', - '107': 'CXCursor_FloatingLiteral', - '108': 'CXCursor_ImaginaryLiteral', - '109': 'CXCursor_StringLiteral', - '110': 'CXCursor_CharacterLiteral', - '111': 'CXCursor_ParenExpr', - '112': 'CXCursor_UnaryOperator', - '113': 'CXCursor_ArraySubscriptExpr', - '114': 'CXCursor_BinaryOperator', - '115': 'CXCursor_CompoundAssignOperator', - '116': 'CXCursor_ConditionalOperator', - '117': 'CXCursor_CStyleCastExpr', - '118': 'CXCursor_CompoundLiteralExpr', - '119': 'CXCursor_InitListExpr', - '120': 'CXCursor_AddrLabelExpr', - '121': 'CXCursor_StmtExpr', - '122': 'CXCursor_GenericSelectionExpr', - '123': 'CXCursor_GNUNullExpr', - '124': 'CXCursor_CXXStaticCastExpr', - '125': 'CXCursor_CXXDynamicCastExpr', - '126': 'CXCursor_CXXReinterpretCastExpr', - '127': 'CXCursor_CXXConstCastExpr', - '128': 'CXCursor_CXXFunctionalCastExpr', - '129': 'CXCursor_CXXTypeidExpr', - '130': 'CXCursor_CXXBoolLiteralExpr', - '131': 'CXCursor_CXXNullPtrLiteralExpr', - '132': 'CXCursor_CXXThisExpr', - '133': 'CXCursor_CXXThrowExpr', - '134': 'CXCursor_CXXNewExpr', - '135': 'CXCursor_CXXDeleteExpr', - '136': 'CXCursor_UnaryExpr', - '137': 'CXCursor_ObjCStringLiteral', - '138': 'CXCursor_ObjCEncodeExpr', - '139': 'CXCursor_ObjCSelectorExpr', - '140': 'CXCursor_ObjCProtocolExpr', - '141': 'CXCursor_ObjCBridgedCastExpr', - '142': 'CXCursor_PackExpansionExpr', - '143': 'CXCursor_SizeOfPackExpr', - '144': 'CXCursor_LambdaExpr', - '145': 'CXCursor_LastExpr', - '200': 'CXCursor_UnexposedStmt', - '201': 'CXCursor_LabelStmt', - '202': 'CXCursor_CompoundStmt', - '203': 'CXCursor_CaseStmt', - '204': 'CXCursor_DefaultStmt', - '205': 'CXCursor_IfStmt', - '206': 'CXCursor_SwitchStmt', - '207': 'CXCursor_WhileStmt', - '208': 'CXCursor_DoStmt', - '209': 'CXCursor_ForStmt', - '210': 'CXCursor_GotoStmt', - '211': 'CXCursor_IndirectGotoStmt', - '212': 'CXCursor_ContinueStmt', - '213': 'CXCursor_BreakStmt', - '214': 'CXCursor_ReturnStmt', - '215': 'CXCursor_AsmStmt', - '216': 'CXCursor_ObjCAtTryStmt', - '217': 'CXCursor_ObjCAtCatchStmt', - '218': 'CXCursor_ObjCAtFinallyStmt', - '219': 'CXCursor_ObjCAtThrowStmt', - '220': 'CXCursor_ObjCAtSynchronizedStmt', - '221': 'CXCursor_ObjCAutoreleasePoolStmt', - '222': 'CXCursor_ObjCForCollectionStmt', - '223': 'CXCursor_CXXCatchStmt', - '224': 'CXCursor_CXXTryStmt', - '225': 'CXCursor_CXXForRangeStmt', - '226': 'CXCursor_SEHTryStmt', - '227': 'CXCursor_SEHExceptStmt', - '228': 'CXCursor_SEHFinallyStmt', - '229': 'CXCursor_MSAsmStmt', - '230': 'CXCursor_NullStmt', - '231': 'CXCursor_LastStmt', - '300': 'CXCursor_TranslationUnit', - '400': 'CXCursor_UnexposedAttr', - '401': 'CXCursor_IBActionAttr', - '402': 'CXCursor_IBOutletAttr', - '403': 'CXCursor_IBOutletCollectionAttr', - '404': 'CXCursor_CXXFinalAttr', - '405': 'CXCursor_CXXOverrideAttr', - '406': 'CXCursor_AnnotateAttr', - '407': 'CXCursor_LastAttr', - '500': 'CXCursor_FirstPreprocessing', - '501': 'CXCursor_MacroDefinition', - '502': 'CXCursor_MacroInstantiation', - '503': 'CXCursor_LastPreprocessing', - '600': 'CXCursor_LastExtraDecl', + 'CXCursorKind': { CXCursor_UnexposedDecl: 1, CXCursor_StructDecl: 2, CXCursor_UnionDecl: 3, @@ -324,7 +197,11 @@ exports.CONSTANTS = { CXCursor_SizeOfPackExpr: 143, CXCursor_LambdaExpr: 144, CXCursor_ObjCBoolLiteralExpr: 145, - CXCursor_LastExpr: 145, + CXCursor_ObjCSelfExpr: 146, + CXCursor_OMPArraySectionExpr: 147, + CXCursor_ObjCAvailabilityCheckExpr: 148, + CXCursor_FixedPointLiteral: 149, + CXCursor_LastExpr: 149, CXCursor_FirstStmt: 200, CXCursor_UnexposedStmt: 200, CXCursor_LabelStmt: 201, @@ -359,7 +236,56 @@ exports.CONSTANTS = { CXCursor_MSAsmStmt: 229, CXCursor_NullStmt: 230, CXCursor_DeclStmt: 231, - CXCursor_LastStmt: 231, + CXCursor_OMPParallelDirective: 232, + CXCursor_OMPSimdDirective: 233, + CXCursor_OMPForDirective: 234, + CXCursor_OMPSectionsDirective: 235, + CXCursor_OMPSectionDirective: 236, + CXCursor_OMPSingleDirective: 237, + CXCursor_OMPParallelForDirective: 238, + CXCursor_OMPParallelSectionsDirective: 239, + CXCursor_OMPTaskDirective: 240, + CXCursor_OMPMasterDirective: 241, + CXCursor_OMPCriticalDirective: 242, + CXCursor_OMPTaskyieldDirective: 243, + CXCursor_OMPBarrierDirective: 244, + CXCursor_OMPTaskwaitDirective: 245, + CXCursor_OMPFlushDirective: 246, + CXCursor_SEHLeaveStmt: 247, + CXCursor_OMPOrderedDirective: 248, + CXCursor_OMPAtomicDirective: 249, + CXCursor_OMPForSimdDirective: 250, + CXCursor_OMPParallelForSimdDirective: 251, + CXCursor_OMPTargetDirective: 252, + CXCursor_OMPTeamsDirective: 253, + CXCursor_OMPTaskgroupDirective: 254, + CXCursor_OMPCancellationPointDirective: 255, + CXCursor_OMPCancelDirective: 256, + CXCursor_OMPTargetDataDirective: 257, + CXCursor_OMPTaskLoopDirective: 258, + CXCursor_OMPTaskLoopSimdDirective: 259, + CXCursor_OMPDistributeDirective: 260, + CXCursor_OMPTargetEnterDataDirective: 261, + CXCursor_OMPTargetExitDataDirective: 262, + CXCursor_OMPTargetParallelDirective: 263, + CXCursor_OMPTargetParallelForDirective: 264, + CXCursor_OMPTargetUpdateDirective: 265, + CXCursor_OMPDistributeParallelForDirective: 266, + CXCursor_OMPDistributeParallelForSimdDirective: 267, + CXCursor_OMPDistributeSimdDirective: 268, + CXCursor_OMPTargetParallelForSimdDirective: 269, + CXCursor_OMPTargetSimdDirective: 270, + CXCursor_OMPTeamsDistributeDirective: 271, + CXCursor_OMPTeamsDistributeSimdDirective: 272, + CXCursor_OMPTeamsDistributeParallelForSimdDirective: 273, + CXCursor_OMPTeamsDistributeParallelForDirective: 274, + CXCursor_OMPTargetTeamsDirective: 275, + CXCursor_OMPTargetTeamsDistributeDirective: 276, + CXCursor_OMPTargetTeamsDistributeParallelForDirective: 277, + CXCursor_OMPTargetTeamsDistributeParallelForSimdDirective: 278, + CXCursor_OMPTargetTeamsDistributeSimdDirective: 279, + CXCursor_BuiltinBitCastExpr: 280, + CXCursor_LastStmt: 280, CXCursor_TranslationUnit: 300, CXCursor_FirstAttr: 400, CXCursor_UnexposedAttr: 400, @@ -370,7 +296,41 @@ exports.CONSTANTS = { CXCursor_CXXOverrideAttr: 405, CXCursor_AnnotateAttr: 406, CXCursor_AsmLabelAttr: 407, - CXCursor_LastAttr: 407, + CXCursor_PackedAttr: 408, + CXCursor_PureAttr: 409, + CXCursor_ConstAttr: 410, + CXCursor_NoDuplicateAttr: 411, + CXCursor_CUDAConstantAttr: 412, + CXCursor_CUDADeviceAttr: 413, + CXCursor_CUDAGlobalAttr: 414, + CXCursor_CUDAHostAttr: 415, + CXCursor_CUDASharedAttr: 416, + CXCursor_VisibilityAttr: 417, + CXCursor_DLLExport: 418, + CXCursor_DLLImport: 419, + CXCursor_NSReturnsRetained: 420, + CXCursor_NSReturnsNotRetained: 421, + CXCursor_NSReturnsAutoreleased: 422, + CXCursor_NSConsumesSelf: 423, + CXCursor_NSConsumed: 424, + CXCursor_ObjCException: 425, + CXCursor_ObjCNSObject: 426, + CXCursor_ObjCIndependentClass: 427, + CXCursor_ObjCPreciseLifetime: 428, + CXCursor_ObjCReturnsInnerPointer: 429, + CXCursor_ObjCRequiresSuper: 430, + CXCursor_ObjCRootClass: 431, + CXCursor_ObjCSubclassingRestricted: 432, + CXCursor_ObjCExplicitProtocolImpl: 433, + CXCursor_ObjCDesignatedInitializer: 434, + CXCursor_ObjCRuntimeVisible: 435, + CXCursor_ObjCBoxable: 436, + CXCursor_FlagEnum: 437, + CXCursor_ConvergentAttr: 438, + CXCursor_WarnUnusedAttr: 439, + CXCursor_WarnUnusedResultAttr: 440, + CXCursor_AlignedAttr: 441, + CXCursor_LastAttr: 441, CXCursor_PreprocessingDirective: 500, CXCursor_MacroDefinition: 501, CXCursor_MacroExpansion: 502, @@ -379,86 +339,319 @@ exports.CONSTANTS = { CXCursor_FirstPreprocessing: 500, CXCursor_LastPreprocessing: 503, CXCursor_ModuleImportDecl: 600, + CXCursor_TypeAliasTemplateDecl: 601, + CXCursor_StaticAssert: 602, + CXCursor_FriendDecl: 603, CXCursor_FirstExtraDecl: 600, - CXCursor_LastExtraDecl: 600 + CXCursor_LastExtraDecl: 603, + CXCursor_OverloadCandidate: 700, + '1': 'CXCursor_UnexposedDecl', + '2': 'CXCursor_StructDecl', + '3': 'CXCursor_UnionDecl', + '4': 'CXCursor_ClassDecl', + '5': 'CXCursor_EnumDecl', + '6': 'CXCursor_FieldDecl', + '7': 'CXCursor_EnumConstantDecl', + '8': 'CXCursor_FunctionDecl', + '9': 'CXCursor_VarDecl', + '10': 'CXCursor_ParmDecl', + '11': 'CXCursor_ObjCInterfaceDecl', + '12': 'CXCursor_ObjCCategoryDecl', + '13': 'CXCursor_ObjCProtocolDecl', + '14': 'CXCursor_ObjCPropertyDecl', + '15': 'CXCursor_ObjCIvarDecl', + '16': 'CXCursor_ObjCInstanceMethodDecl', + '17': 'CXCursor_ObjCClassMethodDecl', + '18': 'CXCursor_ObjCImplementationDecl', + '19': 'CXCursor_ObjCCategoryImplDecl', + '20': 'CXCursor_TypedefDecl', + '21': 'CXCursor_CXXMethod', + '22': 'CXCursor_Namespace', + '23': 'CXCursor_LinkageSpec', + '24': 'CXCursor_Constructor', + '25': 'CXCursor_Destructor', + '26': 'CXCursor_ConversionFunction', + '27': 'CXCursor_TemplateTypeParameter', + '28': 'CXCursor_NonTypeTemplateParameter', + '29': 'CXCursor_TemplateTemplateParameter', + '30': 'CXCursor_FunctionTemplate', + '31': 'CXCursor_ClassTemplate', + '32': 'CXCursor_ClassTemplatePartialSpecialization', + '33': 'CXCursor_NamespaceAlias', + '34': 'CXCursor_UsingDirective', + '35': 'CXCursor_UsingDeclaration', + '36': 'CXCursor_TypeAliasDecl', + '37': 'CXCursor_ObjCSynthesizeDecl', + '38': 'CXCursor_ObjCDynamicDecl', + '39': 'CXCursor_CXXAccessSpecifier', + '1': 'CXCursor_FirstDecl', + '39': 'CXCursor_LastDecl', + '40': 'CXCursor_FirstRef', + '40': 'CXCursor_ObjCSuperClassRef', + '41': 'CXCursor_ObjCProtocolRef', + '42': 'CXCursor_ObjCClassRef', + '43': 'CXCursor_TypeRef', + '44': 'CXCursor_CXXBaseSpecifier', + '45': 'CXCursor_TemplateRef', + '46': 'CXCursor_NamespaceRef', + '47': 'CXCursor_MemberRef', + '48': 'CXCursor_LabelRef', + '49': 'CXCursor_OverloadedDeclRef', + '50': 'CXCursor_VariableRef', + '50': 'CXCursor_LastRef', + '70': 'CXCursor_FirstInvalid', + '70': 'CXCursor_InvalidFile', + '71': 'CXCursor_NoDeclFound', + '72': 'CXCursor_NotImplemented', + '73': 'CXCursor_InvalidCode', + '73': 'CXCursor_LastInvalid', + '100': 'CXCursor_FirstExpr', + '100': 'CXCursor_UnexposedExpr', + '101': 'CXCursor_DeclRefExpr', + '102': 'CXCursor_MemberRefExpr', + '103': 'CXCursor_CallExpr', + '104': 'CXCursor_ObjCMessageExpr', + '105': 'CXCursor_BlockExpr', + '106': 'CXCursor_IntegerLiteral', + '107': 'CXCursor_FloatingLiteral', + '108': 'CXCursor_ImaginaryLiteral', + '109': 'CXCursor_StringLiteral', + '110': 'CXCursor_CharacterLiteral', + '111': 'CXCursor_ParenExpr', + '112': 'CXCursor_UnaryOperator', + '113': 'CXCursor_ArraySubscriptExpr', + '114': 'CXCursor_BinaryOperator', + '115': 'CXCursor_CompoundAssignOperator', + '116': 'CXCursor_ConditionalOperator', + '117': 'CXCursor_CStyleCastExpr', + '118': 'CXCursor_CompoundLiteralExpr', + '119': 'CXCursor_InitListExpr', + '120': 'CXCursor_AddrLabelExpr', + '121': 'CXCursor_StmtExpr', + '122': 'CXCursor_GenericSelectionExpr', + '123': 'CXCursor_GNUNullExpr', + '124': 'CXCursor_CXXStaticCastExpr', + '125': 'CXCursor_CXXDynamicCastExpr', + '126': 'CXCursor_CXXReinterpretCastExpr', + '127': 'CXCursor_CXXConstCastExpr', + '128': 'CXCursor_CXXFunctionalCastExpr', + '129': 'CXCursor_CXXTypeidExpr', + '130': 'CXCursor_CXXBoolLiteralExpr', + '131': 'CXCursor_CXXNullPtrLiteralExpr', + '132': 'CXCursor_CXXThisExpr', + '133': 'CXCursor_CXXThrowExpr', + '134': 'CXCursor_CXXNewExpr', + '135': 'CXCursor_CXXDeleteExpr', + '136': 'CXCursor_UnaryExpr', + '137': 'CXCursor_ObjCStringLiteral', + '138': 'CXCursor_ObjCEncodeExpr', + '139': 'CXCursor_ObjCSelectorExpr', + '140': 'CXCursor_ObjCProtocolExpr', + '141': 'CXCursor_ObjCBridgedCastExpr', + '142': 'CXCursor_PackExpansionExpr', + '143': 'CXCursor_SizeOfPackExpr', + '144': 'CXCursor_LambdaExpr', + '145': 'CXCursor_ObjCBoolLiteralExpr', + '146': 'CXCursor_ObjCSelfExpr', + '147': 'CXCursor_OMPArraySectionExpr', + '148': 'CXCursor_ObjCAvailabilityCheckExpr', + '149': 'CXCursor_FixedPointLiteral', + '149': 'CXCursor_LastExpr', + '200': 'CXCursor_FirstStmt', + '200': 'CXCursor_UnexposedStmt', + '201': 'CXCursor_LabelStmt', + '202': 'CXCursor_CompoundStmt', + '203': 'CXCursor_CaseStmt', + '204': 'CXCursor_DefaultStmt', + '205': 'CXCursor_IfStmt', + '206': 'CXCursor_SwitchStmt', + '207': 'CXCursor_WhileStmt', + '208': 'CXCursor_DoStmt', + '209': 'CXCursor_ForStmt', + '210': 'CXCursor_GotoStmt', + '211': 'CXCursor_IndirectGotoStmt', + '212': 'CXCursor_ContinueStmt', + '213': 'CXCursor_BreakStmt', + '214': 'CXCursor_ReturnStmt', + '215': 'CXCursor_GCCAsmStmt', + '215': 'CXCursor_AsmStmt', + '216': 'CXCursor_ObjCAtTryStmt', + '217': 'CXCursor_ObjCAtCatchStmt', + '218': 'CXCursor_ObjCAtFinallyStmt', + '219': 'CXCursor_ObjCAtThrowStmt', + '220': 'CXCursor_ObjCAtSynchronizedStmt', + '221': 'CXCursor_ObjCAutoreleasePoolStmt', + '222': 'CXCursor_ObjCForCollectionStmt', + '223': 'CXCursor_CXXCatchStmt', + '224': 'CXCursor_CXXTryStmt', + '225': 'CXCursor_CXXForRangeStmt', + '226': 'CXCursor_SEHTryStmt', + '227': 'CXCursor_SEHExceptStmt', + '228': 'CXCursor_SEHFinallyStmt', + '229': 'CXCursor_MSAsmStmt', + '230': 'CXCursor_NullStmt', + '231': 'CXCursor_DeclStmt', + '232': 'CXCursor_OMPParallelDirective', + '233': 'CXCursor_OMPSimdDirective', + '234': 'CXCursor_OMPForDirective', + '235': 'CXCursor_OMPSectionsDirective', + '236': 'CXCursor_OMPSectionDirective', + '237': 'CXCursor_OMPSingleDirective', + '238': 'CXCursor_OMPParallelForDirective', + '239': 'CXCursor_OMPParallelSectionsDirective', + '240': 'CXCursor_OMPTaskDirective', + '241': 'CXCursor_OMPMasterDirective', + '242': 'CXCursor_OMPCriticalDirective', + '243': 'CXCursor_OMPTaskyieldDirective', + '244': 'CXCursor_OMPBarrierDirective', + '245': 'CXCursor_OMPTaskwaitDirective', + '246': 'CXCursor_OMPFlushDirective', + '247': 'CXCursor_SEHLeaveStmt', + '248': 'CXCursor_OMPOrderedDirective', + '249': 'CXCursor_OMPAtomicDirective', + '250': 'CXCursor_OMPForSimdDirective', + '251': 'CXCursor_OMPParallelForSimdDirective', + '252': 'CXCursor_OMPTargetDirective', + '253': 'CXCursor_OMPTeamsDirective', + '254': 'CXCursor_OMPTaskgroupDirective', + '255': 'CXCursor_OMPCancellationPointDirective', + '256': 'CXCursor_OMPCancelDirective', + '257': 'CXCursor_OMPTargetDataDirective', + '258': 'CXCursor_OMPTaskLoopDirective', + '259': 'CXCursor_OMPTaskLoopSimdDirective', + '260': 'CXCursor_OMPDistributeDirective', + '261': 'CXCursor_OMPTargetEnterDataDirective', + '262': 'CXCursor_OMPTargetExitDataDirective', + '263': 'CXCursor_OMPTargetParallelDirective', + '264': 'CXCursor_OMPTargetParallelForDirective', + '265': 'CXCursor_OMPTargetUpdateDirective', + '266': 'CXCursor_OMPDistributeParallelForDirective', + '267': 'CXCursor_OMPDistributeParallelForSimdDirective', + '268': 'CXCursor_OMPDistributeSimdDirective', + '269': 'CXCursor_OMPTargetParallelForSimdDirective', + '270': 'CXCursor_OMPTargetSimdDirective', + '271': 'CXCursor_OMPTeamsDistributeDirective', + '272': 'CXCursor_OMPTeamsDistributeSimdDirective', + '273': 'CXCursor_OMPTeamsDistributeParallelForSimdDirective', + '274': 'CXCursor_OMPTeamsDistributeParallelForDirective', + '275': 'CXCursor_OMPTargetTeamsDirective', + '276': 'CXCursor_OMPTargetTeamsDistributeDirective', + '277': 'CXCursor_OMPTargetTeamsDistributeParallelForDirective', + '278': 'CXCursor_OMPTargetTeamsDistributeParallelForSimdDirective', + '279': 'CXCursor_OMPTargetTeamsDistributeSimdDirective', + '280': 'CXCursor_BuiltinBitCastExpr', + '280': 'CXCursor_LastStmt', + '300': 'CXCursor_TranslationUnit', + '400': 'CXCursor_FirstAttr', + '400': 'CXCursor_UnexposedAttr', + '401': 'CXCursor_IBActionAttr', + '402': 'CXCursor_IBOutletAttr', + '403': 'CXCursor_IBOutletCollectionAttr', + '404': 'CXCursor_CXXFinalAttr', + '405': 'CXCursor_CXXOverrideAttr', + '406': 'CXCursor_AnnotateAttr', + '407': 'CXCursor_AsmLabelAttr', + '408': 'CXCursor_PackedAttr', + '409': 'CXCursor_PureAttr', + '410': 'CXCursor_ConstAttr', + '411': 'CXCursor_NoDuplicateAttr', + '412': 'CXCursor_CUDAConstantAttr', + '413': 'CXCursor_CUDADeviceAttr', + '414': 'CXCursor_CUDAGlobalAttr', + '415': 'CXCursor_CUDAHostAttr', + '416': 'CXCursor_CUDASharedAttr', + '417': 'CXCursor_VisibilityAttr', + '418': 'CXCursor_DLLExport', + '419': 'CXCursor_DLLImport', + '420': 'CXCursor_NSReturnsRetained', + '421': 'CXCursor_NSReturnsNotRetained', + '422': 'CXCursor_NSReturnsAutoreleased', + '423': 'CXCursor_NSConsumesSelf', + '424': 'CXCursor_NSConsumed', + '425': 'CXCursor_ObjCException', + '426': 'CXCursor_ObjCNSObject', + '427': 'CXCursor_ObjCIndependentClass', + '428': 'CXCursor_ObjCPreciseLifetime', + '429': 'CXCursor_ObjCReturnsInnerPointer', + '430': 'CXCursor_ObjCRequiresSuper', + '431': 'CXCursor_ObjCRootClass', + '432': 'CXCursor_ObjCSubclassingRestricted', + '433': 'CXCursor_ObjCExplicitProtocolImpl', + '434': 'CXCursor_ObjCDesignatedInitializer', + '435': 'CXCursor_ObjCRuntimeVisible', + '436': 'CXCursor_ObjCBoxable', + '437': 'CXCursor_FlagEnum', + '438': 'CXCursor_ConvergentAttr', + '439': 'CXCursor_WarnUnusedAttr', + '440': 'CXCursor_WarnUnusedResultAttr', + '441': 'CXCursor_AlignedAttr', + '441': 'CXCursor_LastAttr', + '500': 'CXCursor_PreprocessingDirective', + '501': 'CXCursor_MacroDefinition', + '502': 'CXCursor_MacroExpansion', + '502': 'CXCursor_MacroInstantiation', + '503': 'CXCursor_InclusionDirective', + '500': 'CXCursor_FirstPreprocessing', + '503': 'CXCursor_LastPreprocessing', + '600': 'CXCursor_ModuleImportDecl', + '601': 'CXCursor_TypeAliasTemplateDecl', + '602': 'CXCursor_StaticAssert', + '603': 'CXCursor_FriendDecl', + '600': 'CXCursor_FirstExtraDecl', + '603': 'CXCursor_LastExtraDecl', + '700': 'CXCursor_OverloadCandidate', }, - CXLinkageKind: { - '0': 'CXLinkage_Invalid', - '1': 'CXLinkage_NoLinkage', - '2': 'CXLinkage_Internal', - '3': 'CXLinkage_UniqueExternal', - '4': 'CXLinkage_External', + 'CXLinkageKind': { CXLinkage_Invalid: 0, CXLinkage_NoLinkage: 1, CXLinkage_Internal: 2, CXLinkage_UniqueExternal: 3, - CXLinkage_External: 4 + CXLinkage_External: 4, + '0': 'CXLinkage_Invalid', + '1': 'CXLinkage_NoLinkage', + '2': 'CXLinkage_Internal', + '3': 'CXLinkage_UniqueExternal', + '4': 'CXLinkage_External', }, - CXAvailabilityKind: { + 'CXVisibilityKind': { + CXVisibility_Invalid: 0, + CXVisibility_Hidden: 1, + CXVisibility_Protected: 2, + CXVisibility_Default: 3, + '0': 'CXVisibility_Invalid', + '1': 'CXVisibility_Hidden', + '2': 'CXVisibility_Protected', + '3': 'CXVisibility_Default', + }, + 'CXAvailabilityKind': { + CXAvailability_Available: 0, + CXAvailability_Deprecated: 1, + CXAvailability_NotAvailable: 2, + CXAvailability_NotAccessible: 3, '0': 'CXAvailability_Available', '1': 'CXAvailability_Deprecated', '2': 'CXAvailability_NotAvailable', '3': 'CXAvailability_NotAccessible', - CXAvailability_Available: 0, - CXAvailability_Deprecated: 1, - CXAvailability_NotAvailable: 2, - CXAvailability_NotAccessible: 3 }, - CXLanguageKind: { + 'CXLanguageKind': { + CXLanguage_Invalid: 0, + CXLanguage_C: 1, + CXLanguage_ObjC: 2, + CXLanguage_CPlusPlus: 3, '0': 'CXLanguage_Invalid', '1': 'CXLanguage_C', '2': 'CXLanguage_ObjC', '3': 'CXLanguage_CPlusPlus', - CXLanguage_Invalid: 0, - CXLanguage_C: 1, - CXLanguage_ObjC: 2, - CXLanguage_CPlusPlus: 3 }, - CXTypeKind: { - '0': 'CXType_Invalid', - '1': 'CXType_Unexposed', - '2': 'CXType_FirstBuiltin', - '3': 'CXType_Bool', - '4': 'CXType_Char_U', - '5': 'CXType_UChar', - '6': 'CXType_Char16', - '7': 'CXType_Char32', - '8': 'CXType_UShort', - '9': 'CXType_UInt', - '10': 'CXType_ULong', - '11': 'CXType_ULongLong', - '12': 'CXType_UInt128', - '13': 'CXType_Char_S', - '14': 'CXType_SChar', - '15': 'CXType_WChar', - '16': 'CXType_Short', - '17': 'CXType_Int', - '18': 'CXType_Long', - '19': 'CXType_LongLong', - '20': 'CXType_Int128', - '21': 'CXType_Float', - '22': 'CXType_Double', - '23': 'CXType_LongDouble', - '24': 'CXType_NullPtr', - '25': 'CXType_Overload', - '26': 'CXType_Dependent', - '27': 'CXType_ObjCId', - '28': 'CXType_ObjCClass', - '29': 'CXType_LastBuiltin', - '100': 'CXType_Complex', - '101': 'CXType_Pointer', - '102': 'CXType_BlockPointer', - '103': 'CXType_LValueReference', - '104': 'CXType_RValueReference', - '105': 'CXType_Record', - '106': 'CXType_Enum', - '107': 'CXType_Typedef', - '108': 'CXType_ObjCInterface', - '109': 'CXType_ObjCObjectPointer', - '110': 'CXType_FunctionNoProto', - '111': 'CXType_FunctionProto', - '112': 'CXType_ConstantArray', - '113': 'CXType_Vector', + 'CXTLSKind': { + CXTLS_None: 0, + CXTLS_Dynamic: 1, + CXTLS_Static: 2, + '0': 'CXTLS_None', + '1': 'CXTLS_Dynamic', + '2': 'CXTLS_Static', + }, + 'CXTypeKind': { CXType_Invalid: 0, CXType_Unexposed: 1, CXType_Void: 2, @@ -489,8 +682,17 @@ exports.CONSTANTS = { CXType_ObjCId: 27, CXType_ObjCClass: 28, CXType_ObjCSel: 29, + CXType_Float128: 30, + CXType_Half: 31, + CXType_Float16: 32, + CXType_ShortAccum: 33, + CXType_Accum: 34, + CXType_LongAccum: 35, + CXType_UShortAccum: 36, + CXType_UAccum: 37, + CXType_ULongAccum: 38, CXType_FirstBuiltin: 2, - CXType_LastBuiltin: 29, + CXType_LastBuiltin: 38, CXType_Complex: 100, CXType_Pointer: 101, CXType_BlockPointer: 102, @@ -504,9 +706,232 @@ exports.CONSTANTS = { CXType_FunctionNoProto: 110, CXType_FunctionProto: 111, CXType_ConstantArray: 112, - CXType_Vector: 113 + CXType_Vector: 113, + CXType_IncompleteArray: 114, + CXType_VariableArray: 115, + CXType_DependentSizedArray: 116, + CXType_MemberPointer: 117, + CXType_Auto: 118, + CXType_Elaborated: 119, + CXType_Pipe: 120, + CXType_OCLImage1dRO: 121, + CXType_OCLImage1dArrayRO: 122, + CXType_OCLImage1dBufferRO: 123, + CXType_OCLImage2dRO: 124, + CXType_OCLImage2dArrayRO: 125, + CXType_OCLImage2dDepthRO: 126, + CXType_OCLImage2dArrayDepthRO: 127, + CXType_OCLImage2dMSAARO: 128, + CXType_OCLImage2dArrayMSAARO: 129, + CXType_OCLImage2dMSAADepthRO: 130, + CXType_OCLImage2dArrayMSAADepthRO: 131, + CXType_OCLImage3dRO: 132, + CXType_OCLImage1dWO: 133, + CXType_OCLImage1dArrayWO: 134, + CXType_OCLImage1dBufferWO: 135, + CXType_OCLImage2dWO: 136, + CXType_OCLImage2dArrayWO: 137, + CXType_OCLImage2dDepthWO: 138, + CXType_OCLImage2dArrayDepthWO: 139, + CXType_OCLImage2dMSAAWO: 140, + CXType_OCLImage2dArrayMSAAWO: 141, + CXType_OCLImage2dMSAADepthWO: 142, + CXType_OCLImage2dArrayMSAADepthWO: 143, + CXType_OCLImage3dWO: 144, + CXType_OCLImage1dRW: 145, + CXType_OCLImage1dArrayRW: 146, + CXType_OCLImage1dBufferRW: 147, + CXType_OCLImage2dRW: 148, + CXType_OCLImage2dArrayRW: 149, + CXType_OCLImage2dDepthRW: 150, + CXType_OCLImage2dArrayDepthRW: 151, + CXType_OCLImage2dMSAARW: 152, + CXType_OCLImage2dArrayMSAARW: 153, + CXType_OCLImage2dMSAADepthRW: 154, + CXType_OCLImage2dArrayMSAADepthRW: 155, + CXType_OCLImage3dRW: 156, + CXType_OCLSampler: 157, + CXType_OCLEvent: 158, + CXType_OCLQueue: 159, + CXType_OCLReserveID: 160, + CXType_ObjCObject: 161, + CXType_ObjCTypeParam: 162, + CXType_Attributed: 163, + CXType_OCLIntelSubgroupAVCMcePayload: 164, + CXType_OCLIntelSubgroupAVCImePayload: 165, + CXType_OCLIntelSubgroupAVCRefPayload: 166, + CXType_OCLIntelSubgroupAVCSicPayload: 167, + CXType_OCLIntelSubgroupAVCMceResult: 168, + CXType_OCLIntelSubgroupAVCImeResult: 169, + CXType_OCLIntelSubgroupAVCRefResult: 170, + CXType_OCLIntelSubgroupAVCSicResult: 171, + CXType_OCLIntelSubgroupAVCImeResultSingleRefStreamout: 172, + CXType_OCLIntelSubgroupAVCImeResultDualRefStreamout: 173, + CXType_OCLIntelSubgroupAVCImeSingleRefStreamin: 174, + CXType_OCLIntelSubgroupAVCImeDualRefStreamin: 175, + CXType_ExtVector: 176, + '0': 'CXType_Invalid', + '1': 'CXType_Unexposed', + '2': 'CXType_Void', + '3': 'CXType_Bool', + '4': 'CXType_Char_U', + '5': 'CXType_UChar', + '6': 'CXType_Char16', + '7': 'CXType_Char32', + '8': 'CXType_UShort', + '9': 'CXType_UInt', + '10': 'CXType_ULong', + '11': 'CXType_ULongLong', + '12': 'CXType_UInt128', + '13': 'CXType_Char_S', + '14': 'CXType_SChar', + '15': 'CXType_WChar', + '16': 'CXType_Short', + '17': 'CXType_Int', + '18': 'CXType_Long', + '19': 'CXType_LongLong', + '20': 'CXType_Int128', + '21': 'CXType_Float', + '22': 'CXType_Double', + '23': 'CXType_LongDouble', + '24': 'CXType_NullPtr', + '25': 'CXType_Overload', + '26': 'CXType_Dependent', + '27': 'CXType_ObjCId', + '28': 'CXType_ObjCClass', + '29': 'CXType_ObjCSel', + '30': 'CXType_Float128', + '31': 'CXType_Half', + '32': 'CXType_Float16', + '33': 'CXType_ShortAccum', + '34': 'CXType_Accum', + '35': 'CXType_LongAccum', + '36': 'CXType_UShortAccum', + '37': 'CXType_UAccum', + '38': 'CXType_ULongAccum', + '2': 'CXType_FirstBuiltin', + '38': 'CXType_LastBuiltin', + '100': 'CXType_Complex', + '101': 'CXType_Pointer', + '102': 'CXType_BlockPointer', + '103': 'CXType_LValueReference', + '104': 'CXType_RValueReference', + '105': 'CXType_Record', + '106': 'CXType_Enum', + '107': 'CXType_Typedef', + '108': 'CXType_ObjCInterface', + '109': 'CXType_ObjCObjectPointer', + '110': 'CXType_FunctionNoProto', + '111': 'CXType_FunctionProto', + '112': 'CXType_ConstantArray', + '113': 'CXType_Vector', + '114': 'CXType_IncompleteArray', + '115': 'CXType_VariableArray', + '116': 'CXType_DependentSizedArray', + '117': 'CXType_MemberPointer', + '118': 'CXType_Auto', + '119': 'CXType_Elaborated', + '120': 'CXType_Pipe', + '121': 'CXType_OCLImage1dRO', + '122': 'CXType_OCLImage1dArrayRO', + '123': 'CXType_OCLImage1dBufferRO', + '124': 'CXType_OCLImage2dRO', + '125': 'CXType_OCLImage2dArrayRO', + '126': 'CXType_OCLImage2dDepthRO', + '127': 'CXType_OCLImage2dArrayDepthRO', + '128': 'CXType_OCLImage2dMSAARO', + '129': 'CXType_OCLImage2dArrayMSAARO', + '130': 'CXType_OCLImage2dMSAADepthRO', + '131': 'CXType_OCLImage2dArrayMSAADepthRO', + '132': 'CXType_OCLImage3dRO', + '133': 'CXType_OCLImage1dWO', + '134': 'CXType_OCLImage1dArrayWO', + '135': 'CXType_OCLImage1dBufferWO', + '136': 'CXType_OCLImage2dWO', + '137': 'CXType_OCLImage2dArrayWO', + '138': 'CXType_OCLImage2dDepthWO', + '139': 'CXType_OCLImage2dArrayDepthWO', + '140': 'CXType_OCLImage2dMSAAWO', + '141': 'CXType_OCLImage2dArrayMSAAWO', + '142': 'CXType_OCLImage2dMSAADepthWO', + '143': 'CXType_OCLImage2dArrayMSAADepthWO', + '144': 'CXType_OCLImage3dWO', + '145': 'CXType_OCLImage1dRW', + '146': 'CXType_OCLImage1dArrayRW', + '147': 'CXType_OCLImage1dBufferRW', + '148': 'CXType_OCLImage2dRW', + '149': 'CXType_OCLImage2dArrayRW', + '150': 'CXType_OCLImage2dDepthRW', + '151': 'CXType_OCLImage2dArrayDepthRW', + '152': 'CXType_OCLImage2dMSAARW', + '153': 'CXType_OCLImage2dArrayMSAARW', + '154': 'CXType_OCLImage2dMSAADepthRW', + '155': 'CXType_OCLImage2dArrayMSAADepthRW', + '156': 'CXType_OCLImage3dRW', + '157': 'CXType_OCLSampler', + '158': 'CXType_OCLEvent', + '159': 'CXType_OCLQueue', + '160': 'CXType_OCLReserveID', + '161': 'CXType_ObjCObject', + '162': 'CXType_ObjCTypeParam', + '163': 'CXType_Attributed', + '164': 'CXType_OCLIntelSubgroupAVCMcePayload', + '165': 'CXType_OCLIntelSubgroupAVCImePayload', + '166': 'CXType_OCLIntelSubgroupAVCRefPayload', + '167': 'CXType_OCLIntelSubgroupAVCSicPayload', + '168': 'CXType_OCLIntelSubgroupAVCMceResult', + '169': 'CXType_OCLIntelSubgroupAVCImeResult', + '170': 'CXType_OCLIntelSubgroupAVCRefResult', + '171': 'CXType_OCLIntelSubgroupAVCSicResult', + '172': 'CXType_OCLIntelSubgroupAVCImeResultSingleRefStreamout', + '173': 'CXType_OCLIntelSubgroupAVCImeResultDualRefStreamout', + '174': 'CXType_OCLIntelSubgroupAVCImeSingleRefStreamin', + '175': 'CXType_OCLIntelSubgroupAVCImeDualRefStreamin', + '176': 'CXType_ExtVector', }, - CXCallingConv: { + 'CXTemplateArgumentKind': { + CXTemplateArgumentKind_Null: 0, + CXTemplateArgumentKind_Type: 1, + CXTemplateArgumentKind_Declaration: 2, + CXTemplateArgumentKind_NullPtr: 3, + CXTemplateArgumentKind_Integral: 4, + CXTemplateArgumentKind_Template: 5, + CXTemplateArgumentKind_TemplateExpansion: 6, + CXTemplateArgumentKind_Expression: 7, + CXTemplateArgumentKind_Pack: 8, + CXTemplateArgumentKind_Invalid: 9, + '0': 'CXTemplateArgumentKind_Null', + '1': 'CXTemplateArgumentKind_Type', + '2': 'CXTemplateArgumentKind_Declaration', + '3': 'CXTemplateArgumentKind_NullPtr', + '4': 'CXTemplateArgumentKind_Integral', + '5': 'CXTemplateArgumentKind_Template', + '6': 'CXTemplateArgumentKind_TemplateExpansion', + '7': 'CXTemplateArgumentKind_Expression', + '8': 'CXTemplateArgumentKind_Pack', + '9': 'CXTemplateArgumentKind_Invalid', + }, + '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_X86RegCall: 8, + CXCallingConv_IntelOclBicc: 9, + CXCallingConv_Win64: 10, + CXCallingConv_X86_64Win64: 10, + CXCallingConv_X86_64SysV: 11, + CXCallingConv_X86VectorCall: 12, + CXCallingConv_Swift: 13, + CXCallingConv_PreserveMost: 14, + CXCallingConv_PreserveAll: 15, + CXCallingConv_AArch64VectorCall: 16, + CXCallingConv_Invalid: 100, + CXCallingConv_Unexposed: 200, '0': 'CXCallingConv_Default', '1': 'CXCallingConv_C', '2': 'CXCallingConv_X86StdCall', @@ -515,98 +940,163 @@ exports.CONSTANTS = { '5': 'CXCallingConv_X86Pascal', '6': 'CXCallingConv_AAPCS', '7': 'CXCallingConv_AAPCS_VFP', - '8': 'CXCallingConv_PnaclCall', + '8': 'CXCallingConv_X86RegCall', + '9': 'CXCallingConv_IntelOclBicc', + '10': 'CXCallingConv_Win64', + '10': 'CXCallingConv_X86_64Win64', + '11': 'CXCallingConv_X86_64SysV', + '12': 'CXCallingConv_X86VectorCall', + '13': 'CXCallingConv_Swift', + '14': 'CXCallingConv_PreserveMost', + '15': 'CXCallingConv_PreserveAll', + '16': 'CXCallingConv_AArch64VectorCall', '100': 'CXCallingConv_Invalid', '200': 'CXCallingConv_Unexposed', - 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_PnaclCall: 8, - CXCallingConv_Invalid: 100, - CXCallingConv_Unexposed: 200 }, - CX_CXXAccessSpecifier: { + 'CXTypeNullabilityKind': { + CXTypeNullability_NonNull: 0, + CXTypeNullability_Nullable: 1, + CXTypeNullability_Unspecified: 2, + CXTypeNullability_Invalid: 3, + '0': 'CXTypeNullability_NonNull', + '1': 'CXTypeNullability_Nullable', + '2': 'CXTypeNullability_Unspecified', + '3': 'CXTypeNullability_Invalid', + }, + 'CXRefQualifierKind': { + CXRefQualifier_None: 0, + CXRefQualifier_LValue: 1, + CXRefQualifier_RValue: 2, + '0': 'CXRefQualifier_None', + '1': 'CXRefQualifier_LValue', + '2': 'CXRefQualifier_RValue', + }, + 'CX_CXXAccessSpecifier': { + CX_CXXInvalidAccessSpecifier: 0, + CX_CXXPublic: 1, + CX_CXXProtected: 2, + CX_CXXPrivate: 3, '0': 'CX_CXXInvalidAccessSpecifier', '1': 'CX_CXXPublic', '2': 'CX_CXXProtected', '3': 'CX_CXXPrivate', - CX_CXXInvalidAccessSpecifier: 0, - CX_CXXPublic: 1, - CX_CXXProtected: 2, - CX_CXXPrivate: 3 }, - CXChildVisitResult: { + 'CX_StorageClass': { + CX_SC_Invalid: 0, + CX_SC_None: 1, + CX_SC_Extern: 2, + CX_SC_Static: 3, + CX_SC_PrivateExtern: 4, + CX_SC_OpenCLWorkGroupLocal: 5, + CX_SC_Auto: 6, + CX_SC_Register: 7, + '0': 'CX_SC_Invalid', + '1': 'CX_SC_None', + '2': 'CX_SC_Extern', + '3': 'CX_SC_Static', + '4': 'CX_SC_PrivateExtern', + '5': 'CX_SC_OpenCLWorkGroupLocal', + '6': 'CX_SC_Auto', + '7': 'CX_SC_Register', + }, + 'CXChildVisitResult': { + CXChildVisit_Break: 0, + CXChildVisit_Continue: 1, + CXChildVisit_Recurse: 2, '0': 'CXChildVisit_Break', '1': 'CXChildVisit_Continue', '2': 'CXChildVisit_Recurse', - CXChildVisit_Break: 0, - CXChildVisit_Continue: 1, - CXChildVisit_Recurse: 2 - }, - CXCommentKind: { - '0': 'CXComment_Null', - '1': 'CXComment_Text', - '2': 'CXComment_InlineCommand', - '3': 'CXComment_HTMLStartTag', - '4': 'CXComment_HTMLEndTag', - '5': 'CXComment_Paragraph', - '6': 'CXComment_BlockCommand', - '7': 'CXComment_ParamCommand', - '8': 'CXComment_TParamCommand', - '9': 'CXComment_VerbatimBlockCommand', - '10': 'CXComment_VerbatimBlockLine', - '11': 'CXComment_VerbatimLine', - '12': 'CXComment_FullComment', - CXComment_Null: 0, - CXComment_Text: 1, - CXComment_InlineCommand: 2, - CXComment_HTMLStartTag: 3, - CXComment_HTMLEndTag: 4, - CXComment_Paragraph: 5, - CXComment_BlockCommand: 6, - CXComment_ParamCommand: 7, - CXComment_TParamCommand: 8, - CXComment_VerbatimBlockCommand: 9, - CXComment_VerbatimBlockLine: 10, - CXComment_VerbatimLine: 11, - CXComment_FullComment: 12 - }, - CXCommentInlineCommandRenderKind: { - '0': 'CXCommentInlineCommandRenderKind_Normal', - '1': 'CXCommentInlineCommandRenderKind_Bold', - '2': 'CXCommentInlineCommandRenderKind_Monospaced', - '3': 'CXCommentInlineCommandRenderKind_Emphasized', - CXCommentInlineCommandRenderKind_Normal: 0, - CXCommentInlineCommandRenderKind_Bold: 1, - CXCommentInlineCommandRenderKind_Monospaced: 2, - CXCommentInlineCommandRenderKind_Emphasized: 3 }, - CXCommentParamPassDirection: { - '0': 'CXCommentParamPassDirection_In', - '1': 'CXCommentParamPassDirection_Out', - '2': 'CXCommentParamPassDirection_InOut', - CXCommentParamPassDirection_In: 0, - CXCommentParamPassDirection_Out: 1, - CXCommentParamPassDirection_InOut: 2 + 'CXPrintingPolicyProperty': { + CXPrintingPolicy_Indentation: 0, + CXPrintingPolicy_SuppressSpecifiers: 1, + CXPrintingPolicy_SuppressTagKeyword: 2, + CXPrintingPolicy_IncludeTagDefinition: 3, + CXPrintingPolicy_SuppressScope: 4, + CXPrintingPolicy_SuppressUnwrittenScope: 5, + CXPrintingPolicy_SuppressInitializers: 6, + CXPrintingPolicy_ConstantArraySizeAsWritten: 7, + CXPrintingPolicy_AnonymousTagLocations: 8, + CXPrintingPolicy_SuppressStrongLifetime: 9, + CXPrintingPolicy_SuppressLifetimeQualifiers: 10, + CXPrintingPolicy_SuppressTemplateArgsInCXXConstructors: 11, + CXPrintingPolicy_Bool: 12, + CXPrintingPolicy_Restrict: 13, + CXPrintingPolicy_Alignof: 14, + CXPrintingPolicy_UnderscoreAlignof: 15, + CXPrintingPolicy_UseVoidForZeroParams: 16, + CXPrintingPolicy_TerseOutput: 17, + CXPrintingPolicy_PolishForDeclaration: 18, + CXPrintingPolicy_Half: 19, + CXPrintingPolicy_MSWChar: 20, + CXPrintingPolicy_IncludeNewlines: 21, + CXPrintingPolicy_MSVCFormatting: 22, + CXPrintingPolicy_ConstantsAsWritten: 23, + CXPrintingPolicy_SuppressImplicitBase: 24, + CXPrintingPolicy_FullyQualifiedName: 25, + CXPrintingPolicy_LastProperty: 25, + '0': 'CXPrintingPolicy_Indentation', + '1': 'CXPrintingPolicy_SuppressSpecifiers', + '2': 'CXPrintingPolicy_SuppressTagKeyword', + '3': 'CXPrintingPolicy_IncludeTagDefinition', + '4': 'CXPrintingPolicy_SuppressScope', + '5': 'CXPrintingPolicy_SuppressUnwrittenScope', + '6': 'CXPrintingPolicy_SuppressInitializers', + '7': 'CXPrintingPolicy_ConstantArraySizeAsWritten', + '8': 'CXPrintingPolicy_AnonymousTagLocations', + '9': 'CXPrintingPolicy_SuppressStrongLifetime', + '10': 'CXPrintingPolicy_SuppressLifetimeQualifiers', + '11': 'CXPrintingPolicy_SuppressTemplateArgsInCXXConstructors', + '12': 'CXPrintingPolicy_Bool', + '13': 'CXPrintingPolicy_Restrict', + '14': 'CXPrintingPolicy_Alignof', + '15': 'CXPrintingPolicy_UnderscoreAlignof', + '16': 'CXPrintingPolicy_UseVoidForZeroParams', + '17': 'CXPrintingPolicy_TerseOutput', + '18': 'CXPrintingPolicy_PolishForDeclaration', + '19': 'CXPrintingPolicy_Half', + '20': 'CXPrintingPolicy_MSWChar', + '21': 'CXPrintingPolicy_IncludeNewlines', + '22': 'CXPrintingPolicy_MSVCFormatting', + '23': 'CXPrintingPolicy_ConstantsAsWritten', + '24': 'CXPrintingPolicy_SuppressImplicitBase', + '25': 'CXPrintingPolicy_FullyQualifiedName', + '25': 'CXPrintingPolicy_LastProperty', }, - CXTokenKind: { + 'CXTokenKind': { + CXToken_Punctuation: 0, + CXToken_Keyword: 1, + CXToken_Identifier: 2, + CXToken_Literal: 3, + CXToken_Comment: 4, '0': 'CXToken_Punctuation', '1': 'CXToken_Keyword', '2': 'CXToken_Identifier', '3': 'CXToken_Literal', '4': 'CXToken_Comment', - CXToken_Punctuation: 0, - CXToken_Keyword: 1, - CXToken_Identifier: 2, - CXToken_Literal: 3, - CXToken_Comment: 4 }, - CXCompletionChunkKind: { + 'CXCompletionChunkKind': { + CXCompletionChunk_Optional: 0, + CXCompletionChunk_TypedText: 1, + CXCompletionChunk_Text: 2, + CXCompletionChunk_Placeholder: 3, + CXCompletionChunk_Informative: 4, + CXCompletionChunk_CurrentParameter: 5, + CXCompletionChunk_LeftParen: 6, + CXCompletionChunk_RightParen: 7, + CXCompletionChunk_LeftBracket: 8, + CXCompletionChunk_RightBracket: 9, + CXCompletionChunk_LeftBrace: 10, + CXCompletionChunk_RightBrace: 11, + CXCompletionChunk_LeftAngle: 12, + CXCompletionChunk_RightAngle: 13, + CXCompletionChunk_Comma: 14, + CXCompletionChunk_ResultType: 15, + CXCompletionChunk_Colon: 16, + CXCompletionChunk_SemiColon: 17, + CXCompletionChunk_Equal: 18, + CXCompletionChunk_HorizontalSpace: 19, + CXCompletionChunk_VerticalSpace: 20, '0': 'CXCompletionChunk_Optional', '1': 'CXCompletionChunk_TypedText', '2': 'CXCompletionChunk_Text', @@ -628,62 +1118,18 @@ exports.CONSTANTS = { '18': 'CXCompletionChunk_Equal', '19': 'CXCompletionChunk_HorizontalSpace', '20': 'CXCompletionChunk_VerticalSpace', - CXCompletionChunk_Optional: 0, - CXCompletionChunk_TypedText: 1, - CXCompletionChunk_Text: 2, - CXCompletionChunk_Placeholder: 3, - CXCompletionChunk_Informative: 4, - CXCompletionChunk_CurrentParameter: 5, - CXCompletionChunk_LeftParen: 6, - CXCompletionChunk_RightParen: 7, - CXCompletionChunk_LeftBracket: 8, - CXCompletionChunk_RightBracket: 9, - CXCompletionChunk_LeftBrace: 10, - CXCompletionChunk_RightBrace: 11, - CXCompletionChunk_LeftAngle: 12, - CXCompletionChunk_RightAngle: 13, - CXCompletionChunk_Comma: 14, - CXCompletionChunk_ResultType: 15, - CXCompletionChunk_Colon: 16, - CXCompletionChunk_SemiColon: 17, - CXCompletionChunk_Equal: 18, - CXCompletionChunk_HorizontalSpace: 19, - CXCompletionChunk_VerticalSpace: 20 - }, - CXVisitorResult: { - '0': 'CXVisit_Break', - '1': 'CXVisit_Continue', - CXVisit_Break: 0, - CXVisit_Continue: 1 }, '': { - '0': 'CXIdxAttr_Unexposed', - '1': 'CXIdxAttr_IBAction', - '2': 'CXIdxAttr_IBOutlet', - '3': 'CXIdxAttr_IBOutletCollection', - '4': 'CXIdxEntity_Field', - '5': 'CXIdxEntity_EnumConstant', - '6': 'CXIdxEntity_ObjCClass', - '7': 'CXIdxEntity_ObjCProtocol', - '8': 'CXIdxEntity_ObjCCategory', - '9': 'CXIdxEntity_ObjCInstanceMethod', - '10': 'CXIdxEntity_ObjCClassMethod', - '11': 'CXIdxEntity_ObjCProperty', - '12': 'CXIdxEntity_ObjCIvar', - '13': 'CXIdxEntity_Enum', - '14': 'CXIdxEntity_Struct', - '15': 'CXIdxEntity_Union', - '16': 'CXIdxEntity_CXXClass', - '17': 'CXIdxEntity_CXXNamespace', - '18': 'CXIdxEntity_CXXNamespaceAlias', - '19': 'CXIdxEntity_CXXStaticVariable', - '20': 'CXIdxEntity_CXXStaticMethod', - '21': 'CXIdxEntity_CXXInstanceMethod', - '22': 'CXIdxEntity_CXXConstructor', - '23': 'CXIdxEntity_CXXDestructor', - '24': 'CXIdxEntity_CXXConversionFunction', - '25': 'CXIdxEntity_CXXTypeAlias', - '26': 'CXIdxEntity_CXXInterface', + CXEval_Int: 1, + CXEval_Float: 2, + CXEval_ObjCStrLiteral: 3, + CXEval_StrLiteral: 4, + CXEval_CFStr: 5, + CXEval_Other: 6, + CXEval_UnExposed: 0, + CXResult_Success: 0, + CXResult_Invalid: 1, + CXResult_VisitBreak: 2, CXIdxEntity_Unexposed: 0, CXIdxEntity_Typedef: 1, CXIdxEntity_Function: 2, @@ -719,26 +1165,102 @@ exports.CONSTANTS = { CXIdxEntityLang_C: 1, CXIdxEntityLang_ObjC: 2, CXIdxEntityLang_CXX: 3, + CXIdxEntityLang_Swift: 4, CXIdxObjCContainer_ForwardRef: 0, CXIdxObjCContainer_Interface: 1, CXIdxObjCContainer_Implementation: 2, CXIdxAttr_Unexposed: 0, CXIdxAttr_IBAction: 1, CXIdxAttr_IBOutlet: 2, - CXIdxAttr_IBOutletCollection: 3 - } + CXIdxAttr_IBOutletCollection: 3, + '1': 'CXEval_Int', + '2': 'CXEval_Float', + '3': 'CXEval_ObjCStrLiteral', + '4': 'CXEval_StrLiteral', + '5': 'CXEval_CFStr', + '6': 'CXEval_Other', + '0': 'CXEval_UnExposed', + '0': 'CXResult_Success', + '1': 'CXResult_Invalid', + '2': 'CXResult_VisitBreak', + '0': 'CXIdxEntity_Unexposed', + '1': 'CXIdxEntity_Typedef', + '2': 'CXIdxEntity_Function', + '3': 'CXIdxEntity_Variable', + '4': 'CXIdxEntity_Field', + '5': 'CXIdxEntity_EnumConstant', + '6': 'CXIdxEntity_ObjCClass', + '7': 'CXIdxEntity_ObjCProtocol', + '8': 'CXIdxEntity_ObjCCategory', + '9': 'CXIdxEntity_ObjCInstanceMethod', + '10': 'CXIdxEntity_ObjCClassMethod', + '11': 'CXIdxEntity_ObjCProperty', + '12': 'CXIdxEntity_ObjCIvar', + '13': 'CXIdxEntity_Enum', + '14': 'CXIdxEntity_Struct', + '15': 'CXIdxEntity_Union', + '16': 'CXIdxEntity_CXXClass', + '17': 'CXIdxEntity_CXXNamespace', + '18': 'CXIdxEntity_CXXNamespaceAlias', + '19': 'CXIdxEntity_CXXStaticVariable', + '20': 'CXIdxEntity_CXXStaticMethod', + '21': 'CXIdxEntity_CXXInstanceMethod', + '22': 'CXIdxEntity_CXXConstructor', + '23': 'CXIdxEntity_CXXDestructor', + '24': 'CXIdxEntity_CXXConversionFunction', + '25': 'CXIdxEntity_CXXTypeAlias', + '26': 'CXIdxEntity_CXXInterface', + '0': 'CXIdxEntity_NonTemplate', + '1': 'CXIdxEntity_Template', + '2': 'CXIdxEntity_TemplatePartialSpecialization', + '3': 'CXIdxEntity_TemplateSpecialization', + '0': 'CXIdxEntityLang_None', + '1': 'CXIdxEntityLang_C', + '2': 'CXIdxEntityLang_ObjC', + '3': 'CXIdxEntityLang_CXX', + '4': 'CXIdxEntityLang_Swift', + '0': 'CXIdxObjCContainer_ForwardRef', + '1': 'CXIdxObjCContainer_Interface', + '2': 'CXIdxObjCContainer_Implementation', + '0': 'CXIdxAttr_Unexposed', + '1': 'CXIdxAttr_IBAction', + '2': 'CXIdxAttr_IBOutlet', + '3': 'CXIdxAttr_IBOutletCollection', + }, + 'CXVisitorResult': { + CXVisit_Break: 0, + CXVisit_Continue: 1, + '0': 'CXVisit_Break', + '1': 'CXVisit_Continue', + }, }; + var CXString = exports.CXString = Struct({ data: voidPtr, private_flags: ref.types.uint32, }); var CXStringPtr = exports.CXStringPtr = ref.refType(CXString); +var CXStringSet = exports.CXStringSet = Struct({ + Strings: CXStringPtr, + Count: ref.types.uint32, +}); +var CXStringSetPtr = exports.CXStringSetPtr = ref.refType(CXStringSet); +var CXVirtualFileOverlay = exports.CXVirtualFileOverlay = voidPtr; +var CXVirtualFileOverlayPtr = exports.CXVirtualFileOverlayPtr = ref.refType(CXVirtualFileOverlay); +var CXModuleMapDescriptor = exports.CXModuleMapDescriptor = voidPtr; +var CXModuleMapDescriptorPtr = exports.CXModuleMapDescriptorPtr = ref.refType(CXModuleMapDescriptor); var CXIndex = exports.CXIndex = voidPtr; var CXIndexPtr = exports.CXIndexPtr = ref.refType(CXIndex); var CXFile = exports.CXFile = voidPtr; var CXFilePtr = exports.CXFilePtr = ref.refType(CXFile); +var CXFileUniqueID = exports.CXFileUniqueID = Struct({ + data: ArrayType(ref.types.ulonglong, 3), +}); +var CXFileUniqueIDPtr = exports.CXFileUniqueIDPtr = ref.refType(CXFileUniqueID); var CXTranslationUnit = exports.CXTranslationUnit = voidPtr; var CXTranslationUnitPtr = exports.CXTranslationUnitPtr = ref.refType(CXTranslationUnit); +var size_t = exports.size_t = voidPtr; +var size_tPtr = exports.size_tPtr = ref.refType(size_t); var CXSourceLocation = exports.CXSourceLocation = Struct({ ptr_data: ArrayType(voidPtr, 2), int_data: ref.types.uint32, @@ -750,6 +1272,11 @@ var CXSourceRange = exports.CXSourceRange = Struct({ end_int_data: ref.types.uint32, }); var CXSourceRangePtr = exports.CXSourceRangePtr = ref.refType(CXSourceRange); +var CXSourceRangeList = exports.CXSourceRangeList = Struct({ + count: ref.types.uint32, + ranges: CXSourceRangePtr, +}); +var CXSourceRangeListPtr = exports.CXSourceRangeListPtr = ref.refType(CXSourceRangeList); var CXDiagnosticSet = exports.CXDiagnosticSet = voidPtr; var CXDiagnosticSetPtr = exports.CXDiagnosticSetPtr = ref.refType(CXDiagnosticSet); var CXDiagnostic = exports.CXDiagnostic = voidPtr; @@ -765,6 +1292,8 @@ var CXTUResourceUsage = exports.CXTUResourceUsage = Struct({ entries: CXTUResourceUsageEntryPtr, }); var CXTUResourceUsagePtr = exports.CXTUResourceUsagePtr = ref.refType(CXTUResourceUsage); +var CXTargetInfo = exports.CXTargetInfo = voidPtr; +var CXTargetInfoPtr = exports.CXTargetInfoPtr = ref.refType(CXTargetInfo); var CXCursor = exports.CXCursor = Struct({ kind: ref.types.uint32, xdata: ref.types.int32, @@ -793,20 +1322,16 @@ var CXType = exports.CXType = Struct({ data: ArrayType(voidPtr, 2), }); var CXTypePtr = exports.CXTypePtr = ref.refType(CXType); -var CXCursorVisitor = exports.CXCursorVisitor = FFI.Function(ref.types.uint32, [CXCursor, CXCursor, ref.types.Object]); -var CXClientData = exports.CXClientData = ref.types.Object; +var CXCursorVisitor = exports.CXCursorVisitor = FFI.Function(ref.types.uint32, [ + CXCursor, + CXCursor, + voidPtr, +]); +var CXCursorVisitorPtr = exports.CXCursorVisitorPtr = ref.refType(CXCursorVisitor); +var CXClientData = exports.CXClientData = voidPtr; var CXClientDataPtr = exports.CXClientDataPtr = ref.refType(CXClientData); -var CXCursorVisitorBlock = exports.CXCursorVisitorBlock = Struct({ - CXChildVisitResult: ref.types.uint32, - cursor: CXCursor, - parent: CXCursor, -}); -var CXCursorVisitorBlockPtr = exports.CXCursorVisitorBlockPtr = ref.refType(CXCursorVisitorBlock); -var CXComment = exports.CXComment = Struct({ - ASTNode: voidPtr, - TranslationUnit: CXTranslationUnit, -}); -var CXCommentPtr = exports.CXCommentPtr = ref.refType(CXComment); +var CXPrintingPolicy = exports.CXPrintingPolicy = voidPtr; +var CXPrintingPolicyPtr = exports.CXPrintingPolicyPtr = ref.refType(CXPrintingPolicy); var CXModule = exports.CXModule = voidPtr; var CXModulePtr = exports.CXModulePtr = ref.refType(CXModule); var CXToken = exports.CXToken = Struct({ @@ -826,7 +1351,15 @@ var CXCodeCompleteResults = exports.CXCodeCompleteResults = Struct({ NumResults: ref.types.uint32, }); var CXCodeCompleteResultsPtr = exports.CXCodeCompleteResultsPtr = ref.refType(CXCodeCompleteResults); -var CXInclusionVisitor = exports.CXInclusionVisitor = FFI.Function(ref.types.void, [voidPtr, voidPtr, ref.types.uint32, voidPtr]); +var CXInclusionVisitor = exports.CXInclusionVisitor = FFI.Function(ref.types.void, [ + voidPtr, + voidPtr, + ref.types.uint32, + voidPtr, +]); +var CXInclusionVisitorPtr = exports.CXInclusionVisitorPtr = ref.refType(CXInclusionVisitor); +var CXEvalResult = exports.CXEvalResult = voidPtr; +var CXEvalResultPtr = exports.CXEvalResultPtr = ref.refType(CXEvalResult); var CXRemapping = exports.CXRemapping = voidPtr; var CXRemappingPtr = exports.CXRemappingPtr = ref.refType(CXRemapping); var CXCursorAndRangeVisitor = exports.CXCursorAndRangeVisitor = Struct({ @@ -867,6 +1400,7 @@ var CXIdxDeclInfo = exports.CXIdxDeclInfo = Struct({ isImplicit: ref.types.int32, attributes: voidPtr, numAttributes: ref.types.uint32, + flags: ref.types.uint32, }); var CXIdxDeclInfoPtr = exports.CXIdxDeclInfoPtr = ref.refType(CXIdxDeclInfo); var CXIdxObjCContainerDeclInfo = exports.CXIdxObjCContainerDeclInfo = Struct({ @@ -943,255 +1477,1205 @@ var IndexerCallbacks = exports.IndexerCallbacks = Struct({ var IndexerCallbacksPtr = exports.IndexerCallbacksPtr = ref.refType(IndexerCallbacks); var CXIdxClientFile = exports.CXIdxClientFile = voidPtr; var CXIdxClientFilePtr = exports.CXIdxClientFilePtr = ref.refType(CXIdxClientFile); +var CXFieldVisitor = exports.CXFieldVisitor = FFI.Function(ref.types.uint32, [ + CXCursor, + voidPtr, +]); +var CXFieldVisitorPtr = exports.CXFieldVisitorPtr = ref.refType(CXFieldVisitor); + exports.libclang = new FFI.Library('libclang', { - clang_getCString: [ref.types.CString, [CXString]], - clang_disposeString: [ref.types.void, [CXString]], - clang_createIndex: [CXIndex, [ref.types.int32, ref.types.int32]], - clang_disposeIndex: [ref.types.void, [CXIndex]], - clang_CXIndex_setGlobalOptions: [ref.types.void, [CXIndex, ref.types.uint32]], - clang_CXIndex_getGlobalOptions: [ref.types.uint32, [CXIndex]], - clang_getFileName: [CXString, [CXFile]], - clang_getFileTime: [ref.types.long, [CXFile]], - clang_isFileMultipleIncludeGuarded: [ref.types.uint32, [CXTranslationUnit, CXFile]], - clang_getFile: [CXFile, [CXTranslationUnit, ref.types.CString]], + clang_getCString: [ref.types.CString, [ + CXString, + ]], + clang_disposeString: [ref.types.void, [ + CXString, + ]], + clang_disposeStringSet: [ref.types.void, [ + CXStringSetPtr, + ]], + clang_getBuildSessionTimestamp: [ref.types.ulonglong, []], + clang_VirtualFileOverlay_create: [CXVirtualFileOverlay, [ + ref.types.uint32, + ]], + clang_VirtualFileOverlay_addFileMapping: [ref.types.uint32, [ + CXVirtualFileOverlay, + ref.types.CString, + ref.types.CString, + ]], + clang_VirtualFileOverlay_setCaseSensitivity: [ref.types.uint32, [ + CXVirtualFileOverlay, + ref.types.int32, + ]], + clang_VirtualFileOverlay_writeToBuffer: [ref.types.uint32, [ + CXVirtualFileOverlay, + ref.types.uint32, + voidPtr, + ref.refType(ref.types.uint32), + ]], + clang_free: [ref.types.void, [ + voidPtr, + ]], + clang_VirtualFileOverlay_dispose: [ref.types.void, [ + CXVirtualFileOverlay, + ]], + clang_ModuleMapDescriptor_create: [CXModuleMapDescriptor, [ + ref.types.uint32, + ]], + clang_ModuleMapDescriptor_setFrameworkModuleName: [ref.types.uint32, [ + CXModuleMapDescriptor, + ref.types.CString, + ]], + clang_ModuleMapDescriptor_setUmbrellaHeader: [ref.types.uint32, [ + CXModuleMapDescriptor, + ref.types.CString, + ]], + clang_ModuleMapDescriptor_writeToBuffer: [ref.types.uint32, [ + CXModuleMapDescriptor, + ref.types.uint32, + voidPtr, + ref.refType(ref.types.uint32), + ]], + clang_ModuleMapDescriptor_dispose: [ref.types.void, [ + CXModuleMapDescriptor, + ]], + clang_createIndex: [CXIndex, [ + ref.types.int32, + ref.types.int32, + ]], + clang_disposeIndex: [ref.types.void, [ + CXIndex, + ]], + clang_CXIndex_setGlobalOptions: [ref.types.void, [ + CXIndex, + ref.types.uint32, + ]], + clang_CXIndex_getGlobalOptions: [ref.types.uint32, [ + CXIndex, + ]], + clang_CXIndex_setInvocationEmissionPathOption: [ref.types.void, [ + CXIndex, + ref.types.CString, + ]], + clang_getFileName: [CXString, [ + CXFile, + ]], + clang_getFileTime: [ref.types.long, [ + CXFile, + ]], + clang_getFileUniqueID: [ref.types.int32, [ + CXFile, + CXFileUniqueIDPtr, + ]], + clang_isFileMultipleIncludeGuarded: [ref.types.uint32, [ + CXTranslationUnit, + CXFile, + ]], + clang_getFile: [CXFile, [ + CXTranslationUnit, + ref.types.CString, + ]], + clang_getFileContents: [ref.types.CString, [ + CXTranslationUnit, + CXFile, + size_t, + ]], + clang_File_isEqual: [ref.types.int32, [ + CXFile, + CXFile, + ]], + clang_File_tryGetRealPathName: [CXString, [ + CXFile, + ]], clang_getNullLocation: [CXSourceLocation, []], - clang_equalLocations: [ref.types.uint32, [CXSourceLocation, CXSourceLocation]], - clang_getLocation: [CXSourceLocation, [CXTranslationUnit, CXFile, ref.types.uint32, ref.types.uint32]], - clang_getLocationForOffset: [CXSourceLocation, [CXTranslationUnit, CXFile, ref.types.uint32]], + clang_equalLocations: [ref.types.uint32, [ + CXSourceLocation, + CXSourceLocation, + ]], + clang_getLocation: [CXSourceLocation, [ + CXTranslationUnit, + CXFile, + ref.types.uint32, + ref.types.uint32, + ]], + clang_getLocationForOffset: [CXSourceLocation, [ + CXTranslationUnit, + CXFile, + ref.types.uint32, + ]], + clang_Location_isInSystemHeader: [ref.types.int32, [ + CXSourceLocation, + ]], + clang_Location_isFromMainFile: [ref.types.int32, [ + CXSourceLocation, + ]], clang_getNullRange: [CXSourceRange, []], - clang_getRange: [CXSourceRange, [CXSourceLocation, CXSourceLocation]], - clang_equalRanges: [ref.types.uint32, [CXSourceRange, CXSourceRange]], - clang_Range_isNull: [ref.types.int32, [CXSourceRange]], - clang_getExpansionLocation: [ref.types.void, [CXSourceLocation, CXFilePtr, voidPtr, voidPtr, voidPtr]], - clang_getPresumedLocation: [ref.types.void, [CXSourceLocation, CXStringPtr, voidPtr, voidPtr]], - clang_getInstantiationLocation: [ref.types.void, [CXSourceLocation, CXFilePtr, voidPtr, voidPtr, voidPtr]], - clang_getSpellingLocation: [ref.types.void, [CXSourceLocation, CXFilePtr, voidPtr, voidPtr, voidPtr]], - clang_getRangeStart: [CXSourceLocation, [CXSourceRange]], - clang_getRangeEnd: [CXSourceLocation, [CXSourceRange]], - clang_getNumDiagnosticsInSet: [ref.types.uint32, [CXDiagnosticSet]], - clang_getDiagnosticInSet: [CXDiagnostic, [CXDiagnosticSet, ref.types.uint32]], - clang_loadDiagnostics: [CXDiagnosticSet, [ref.types.CString, voidPtr, CXStringPtr]], - clang_disposeDiagnosticSet: [ref.types.void, [CXDiagnosticSet]], - clang_getChildDiagnostics: [CXDiagnosticSet, [CXDiagnostic]], - clang_getNumDiagnostics: [ref.types.uint32, [CXTranslationUnit]], - clang_getDiagnostic: [CXDiagnostic, [CXTranslationUnit, ref.types.uint32]], - clang_getDiagnosticSetFromTU: [CXDiagnosticSet, [CXTranslationUnit]], - clang_disposeDiagnostic: [ref.types.void, [CXDiagnostic]], - clang_formatDiagnostic: [CXString, [CXDiagnostic, ref.types.uint32]], + clang_getRange: [CXSourceRange, [ + CXSourceLocation, + CXSourceLocation, + ]], + clang_equalRanges: [ref.types.uint32, [ + CXSourceRange, + CXSourceRange, + ]], + clang_Range_isNull: [ref.types.int32, [ + CXSourceRange, + ]], + clang_getExpansionLocation: [ref.types.void, [ + CXSourceLocation, + CXFilePtr, + ref.refType(ref.types.uint32), + ref.refType(ref.types.uint32), + ref.refType(ref.types.uint32), + ]], + clang_getPresumedLocation: [ref.types.void, [ + CXSourceLocation, + CXStringPtr, + ref.refType(ref.types.uint32), + ref.refType(ref.types.uint32), + ]], + clang_getInstantiationLocation: [ref.types.void, [ + CXSourceLocation, + CXFilePtr, + ref.refType(ref.types.uint32), + ref.refType(ref.types.uint32), + ref.refType(ref.types.uint32), + ]], + clang_getSpellingLocation: [ref.types.void, [ + CXSourceLocation, + CXFilePtr, + ref.refType(ref.types.uint32), + ref.refType(ref.types.uint32), + ref.refType(ref.types.uint32), + ]], + clang_getFileLocation: [ref.types.void, [ + CXSourceLocation, + CXFilePtr, + ref.refType(ref.types.uint32), + ref.refType(ref.types.uint32), + ref.refType(ref.types.uint32), + ]], + clang_getRangeStart: [CXSourceLocation, [ + CXSourceRange, + ]], + clang_getRangeEnd: [CXSourceLocation, [ + CXSourceRange, + ]], + clang_getSkippedRanges: [CXSourceRangeListPtr, [ + CXTranslationUnit, + CXFile, + ]], + clang_getAllSkippedRanges: [CXSourceRangeListPtr, [ + CXTranslationUnit, + ]], + clang_disposeSourceRangeList: [ref.types.void, [ + CXSourceRangeListPtr, + ]], + clang_getNumDiagnosticsInSet: [ref.types.uint32, [ + CXDiagnosticSet, + ]], + clang_getDiagnosticInSet: [CXDiagnostic, [ + CXDiagnosticSet, + ref.types.uint32, + ]], + clang_loadDiagnostics: [CXDiagnosticSet, [ + ref.types.CString, + voidPtr, + CXStringPtr, + ]], + clang_disposeDiagnosticSet: [ref.types.void, [ + CXDiagnosticSet, + ]], + clang_getChildDiagnostics: [CXDiagnosticSet, [ + CXDiagnostic, + ]], + clang_getNumDiagnostics: [ref.types.uint32, [ + CXTranslationUnit, + ]], + clang_getDiagnostic: [CXDiagnostic, [ + CXTranslationUnit, + ref.types.uint32, + ]], + clang_getDiagnosticSetFromTU: [CXDiagnosticSet, [ + CXTranslationUnit, + ]], + clang_disposeDiagnostic: [ref.types.void, [ + CXDiagnostic, + ]], + clang_formatDiagnostic: [CXString, [ + CXDiagnostic, + ref.types.uint32, + ]], clang_defaultDiagnosticDisplayOptions: [ref.types.uint32, []], - clang_getDiagnosticSeverity: [ref.types.uint32, [CXDiagnostic]], - clang_getDiagnosticLocation: [CXSourceLocation, [CXDiagnostic]], - clang_getDiagnosticSpelling: [CXString, [CXDiagnostic]], - clang_getDiagnosticOption: [CXString, [CXDiagnostic, CXStringPtr]], - clang_getDiagnosticCategory: [ref.types.uint32, [CXDiagnostic]], - clang_getDiagnosticCategoryName: [CXString, [ref.types.uint32]], - clang_getDiagnosticCategoryText: [CXString, [CXDiagnostic]], - clang_getDiagnosticNumRanges: [ref.types.uint32, [CXDiagnostic]], - clang_getDiagnosticRange: [CXSourceRange, [CXDiagnostic, ref.types.uint32]], - clang_getDiagnosticNumFixIts: [ref.types.uint32, [CXDiagnostic]], - clang_getDiagnosticFixIt: [CXString, [CXDiagnostic, ref.types.uint32, CXSourceRangePtr]], - clang_getTranslationUnitSpelling: [CXString, [CXTranslationUnit]], - clang_createTranslationUnitFromSourceFile: [CXTranslationUnit, [CXIndex, ref.types.CString, ref.types.int32, voidPtr, ref.types.uint32, voidPtr]], - clang_createTranslationUnit: [CXTranslationUnit, [CXIndex, ref.types.CString]], + clang_getDiagnosticSeverity: [ref.types.uint32, [ + CXDiagnostic, + ]], + clang_getDiagnosticLocation: [CXSourceLocation, [ + CXDiagnostic, + ]], + clang_getDiagnosticSpelling: [CXString, [ + CXDiagnostic, + ]], + clang_getDiagnosticOption: [CXString, [ + CXDiagnostic, + CXStringPtr, + ]], + clang_getDiagnosticCategory: [ref.types.uint32, [ + CXDiagnostic, + ]], + clang_getDiagnosticCategoryName: [CXString, [ + ref.types.uint32, + ]], + clang_getDiagnosticCategoryText: [CXString, [ + CXDiagnostic, + ]], + clang_getDiagnosticNumRanges: [ref.types.uint32, [ + CXDiagnostic, + ]], + clang_getDiagnosticRange: [CXSourceRange, [ + CXDiagnostic, + ref.types.uint32, + ]], + clang_getDiagnosticNumFixIts: [ref.types.uint32, [ + CXDiagnostic, + ]], + clang_getDiagnosticFixIt: [CXString, [ + CXDiagnostic, + ref.types.uint32, + CXSourceRangePtr, + ]], + clang_getTranslationUnitSpelling: [CXString, [ + CXTranslationUnit, + ]], + clang_createTranslationUnitFromSourceFile: [CXTranslationUnit, [ + CXIndex, + ref.types.CString, + ref.types.int32, + voidPtr, + ref.types.uint32, + voidPtr, + ]], + clang_createTranslationUnit: [CXTranslationUnit, [ + CXIndex, + ref.types.CString, + ]], + clang_createTranslationUnit2: [ref.types.uint32, [ + CXIndex, + ref.types.CString, + CXTranslationUnitPtr, + ]], clang_defaultEditingTranslationUnitOptions: [ref.types.uint32, []], - clang_parseTranslationUnit: [CXTranslationUnit, [CXIndex, ref.types.CString, voidPtr, ref.types.int32, voidPtr, ref.types.uint32, ref.types.uint32]], - clang_defaultSaveOptions: [ref.types.uint32, [CXTranslationUnit]], - clang_saveTranslationUnit: [ref.types.int32, [CXTranslationUnit, ref.types.CString, ref.types.uint32]], - clang_disposeTranslationUnit: [ref.types.void, [CXTranslationUnit]], - clang_defaultReparseOptions: [ref.types.uint32, [CXTranslationUnit]], - clang_reparseTranslationUnit: [ref.types.int32, [CXTranslationUnit, ref.types.uint32, voidPtr, ref.types.uint32]], - clang_getTUResourceUsageName: [ref.types.CString, [ref.types.uint32]], - clang_getCXTUResourceUsage: [CXTUResourceUsage, [CXTranslationUnit]], - clang_disposeCXTUResourceUsage: [ref.types.void, [CXTUResourceUsage]], + clang_parseTranslationUnit: [CXTranslationUnit, [ + CXIndex, + ref.types.CString, + voidPtr, + ref.types.int32, + voidPtr, + ref.types.uint32, + ref.types.uint32, + ]], + clang_parseTranslationUnit2: [ref.types.uint32, [ + CXIndex, + ref.types.CString, + voidPtr, + ref.types.int32, + voidPtr, + ref.types.uint32, + ref.types.uint32, + CXTranslationUnitPtr, + ]], + clang_parseTranslationUnit2FullArgv: [ref.types.uint32, [ + CXIndex, + ref.types.CString, + voidPtr, + ref.types.int32, + voidPtr, + ref.types.uint32, + ref.types.uint32, + CXTranslationUnitPtr, + ]], + clang_defaultSaveOptions: [ref.types.uint32, [ + CXTranslationUnit, + ]], + clang_saveTranslationUnit: [ref.types.int32, [ + CXTranslationUnit, + ref.types.CString, + ref.types.uint32, + ]], + clang_suspendTranslationUnit: [ref.types.uint32, [ + CXTranslationUnit, + ]], + clang_disposeTranslationUnit: [ref.types.void, [ + CXTranslationUnit, + ]], + clang_defaultReparseOptions: [ref.types.uint32, [ + CXTranslationUnit, + ]], + clang_reparseTranslationUnit: [ref.types.int32, [ + CXTranslationUnit, + ref.types.uint32, + voidPtr, + ref.types.uint32, + ]], + clang_getTUResourceUsageName: [ref.types.CString, [ + ref.types.uint32, + ]], + clang_getCXTUResourceUsage: [CXTUResourceUsage, [ + CXTranslationUnit, + ]], + clang_disposeCXTUResourceUsage: [ref.types.void, [ + CXTUResourceUsage, + ]], + clang_getTranslationUnitTargetInfo: [CXTargetInfo, [ + CXTranslationUnit, + ]], + clang_TargetInfo_dispose: [ref.types.void, [ + CXTargetInfo, + ]], + clang_TargetInfo_getTriple: [CXString, [ + CXTargetInfo, + ]], + clang_TargetInfo_getPointerWidth: [ref.types.int32, [ + CXTargetInfo, + ]], clang_getNullCursor: [CXCursor, []], - clang_getTranslationUnitCursor: [CXCursor, [CXTranslationUnit]], - clang_equalCursors: [ref.types.uint32, [CXCursor, CXCursor]], - clang_Cursor_isNull: [ref.types.int32, [CXCursor]], - clang_hashCursor: [ref.types.uint32, [CXCursor]], - clang_getCursorKind: [ref.types.uint32, [CXCursor]], - clang_isDeclaration: [ref.types.uint32, [ref.types.uint32]], - clang_isReference: [ref.types.uint32, [ref.types.uint32]], - clang_isExpression: [ref.types.uint32, [ref.types.uint32]], - clang_isStatement: [ref.types.uint32, [ref.types.uint32]], - clang_isAttribute: [ref.types.uint32, [ref.types.uint32]], - clang_isInvalid: [ref.types.uint32, [ref.types.uint32]], - clang_isTranslationUnit: [ref.types.uint32, [ref.types.uint32]], - clang_isPreprocessing: [ref.types.uint32, [ref.types.uint32]], - clang_isUnexposed: [ref.types.uint32, [ref.types.uint32]], - clang_getCursorLinkage: [ref.types.uint32, [CXCursor]], - clang_getCursorAvailability: [ref.types.uint32, [CXCursor]], - clang_getCursorPlatformAvailability: [ref.types.int32, [CXCursor, voidPtr, CXStringPtr, voidPtr, CXStringPtr, CXPlatformAvailabilityPtr, ref.types.int32]], - clang_disposeCXPlatformAvailability: [ref.types.void, [CXPlatformAvailabilityPtr]], - clang_getCursorLanguage: [ref.types.uint32, [CXCursor]], - clang_Cursor_getTranslationUnit: [CXTranslationUnit, [CXCursor]], + clang_getTranslationUnitCursor: [CXCursor, [ + CXTranslationUnit, + ]], + clang_equalCursors: [ref.types.uint32, [ + CXCursor, + CXCursor, + ]], + clang_Cursor_isNull: [ref.types.int32, [ + CXCursor, + ]], + clang_hashCursor: [ref.types.uint32, [ + CXCursor, + ]], + clang_getCursorKind: [ref.types.uint32, [ + CXCursor, + ]], + clang_isDeclaration: [ref.types.uint32, [ + ref.types.uint32, + ]], + clang_isInvalidDeclaration: [ref.types.uint32, [ + CXCursor, + ]], + clang_isReference: [ref.types.uint32, [ + ref.types.uint32, + ]], + clang_isExpression: [ref.types.uint32, [ + ref.types.uint32, + ]], + clang_isStatement: [ref.types.uint32, [ + ref.types.uint32, + ]], + clang_isAttribute: [ref.types.uint32, [ + ref.types.uint32, + ]], + clang_Cursor_hasAttrs: [ref.types.uint32, [ + CXCursor, + ]], + clang_isInvalid: [ref.types.uint32, [ + ref.types.uint32, + ]], + clang_isTranslationUnit: [ref.types.uint32, [ + ref.types.uint32, + ]], + clang_isPreprocessing: [ref.types.uint32, [ + ref.types.uint32, + ]], + clang_isUnexposed: [ref.types.uint32, [ + ref.types.uint32, + ]], + clang_getCursorLinkage: [ref.types.uint32, [ + CXCursor, + ]], + clang_getCursorVisibility: [ref.types.uint32, [ + CXCursor, + ]], + clang_getCursorAvailability: [ref.types.uint32, [ + CXCursor, + ]], + clang_getCursorPlatformAvailability: [ref.types.int32, [ + CXCursor, + ref.refType(ref.types.int32), + CXStringPtr, + ref.refType(ref.types.int32), + CXStringPtr, + CXPlatformAvailabilityPtr, + ref.types.int32, + ]], + clang_disposeCXPlatformAvailability: [ref.types.void, [ + CXPlatformAvailabilityPtr, + ]], + clang_getCursorLanguage: [ref.types.uint32, [ + CXCursor, + ]], + clang_getCursorTLSKind: [ref.types.uint32, [ + CXCursor, + ]], + clang_Cursor_getTranslationUnit: [CXTranslationUnit, [ + CXCursor, + ]], clang_createCXCursorSet: [CXCursorSet, []], - clang_disposeCXCursorSet: [ref.types.void, [CXCursorSet]], - clang_CXCursorSet_contains: [ref.types.uint32, [CXCursorSet, CXCursor]], - clang_CXCursorSet_insert: [ref.types.uint32, [CXCursorSet, CXCursor]], - clang_getCursorSemanticParent: [CXCursor, [CXCursor]], - clang_getCursorLexicalParent: [CXCursor, [CXCursor]], - clang_getOverriddenCursors: [ref.types.void, [CXCursor, voidPtr, voidPtr]], - clang_disposeOverriddenCursors: [ref.types.void, [CXCursorPtr]], - clang_getIncludedFile: [CXFile, [CXCursor]], - clang_getCursor: [CXCursor, [CXTranslationUnit, CXSourceLocation]], - clang_getCursorLocation: [CXSourceLocation, [CXCursor]], - clang_getCursorExtent: [CXSourceRange, [CXCursor]], - clang_getCursorType: [CXType, [CXCursor]], - clang_getTypedefDeclUnderlyingType: [CXType, [CXCursor]], - clang_getEnumDeclIntegerType: [CXType, [CXCursor]], - clang_getEnumConstantDeclValue: [ref.types.longlong, [CXCursor]], - clang_getEnumConstantDeclUnsignedValue: [ref.types.ulonglong, [CXCursor]], - clang_Cursor_getNumArguments: [ref.types.int32, [CXCursor]], - clang_Cursor_getArgument: [CXCursor, [CXCursor, ref.types.uint32]], - clang_equalTypes: [ref.types.uint32, [CXType, CXType]], - clang_getCanonicalType: [CXType, [CXType]], - clang_isConstQualifiedType: [ref.types.uint32, [CXType]], - clang_isVolatileQualifiedType: [ref.types.uint32, [CXType]], - clang_isRestrictQualifiedType: [ref.types.uint32, [CXType]], - clang_getPointeeType: [CXType, [CXType]], - clang_getTypeDeclaration: [CXCursor, [CXType]], - clang_getDeclObjCTypeEncoding: [CXString, [CXCursor]], - clang_getTypeKindSpelling: [CXString, [ref.types.uint32]], - clang_getFunctionTypeCallingConv: [ref.types.uint32, [CXType]], - clang_getResultType: [CXType, [CXType]], - clang_getNumArgTypes: [ref.types.int32, [CXType]], - clang_getArgType: [CXType, [CXType, ref.types.uint32]], - clang_isFunctionTypeVariadic: [ref.types.uint32, [CXType]], - clang_getCursorResultType: [CXType, [CXCursor]], - clang_isPODType: [ref.types.uint32, [CXType]], - clang_getElementType: [CXType, [CXType]], - clang_getNumElements: [ref.types.longlong, [CXType]], - clang_getArrayElementType: [CXType, [CXType]], - clang_getArraySize: [ref.types.longlong, [CXType]], - clang_isVirtualBase: [ref.types.uint32, [CXCursor]], - clang_getCXXAccessSpecifier: [ref.types.uint32, [CXCursor]], - clang_getNumOverloadedDecls: [ref.types.uint32, [CXCursor]], - clang_getOverloadedDecl: [CXCursor, [CXCursor, ref.types.uint32]], - clang_getIBOutletCollectionType: [CXType, [CXCursor]], - clang_visitChildren: [ref.types.uint32, [CXCursor, CXCursorVisitor, CXClientData]], - clang_visitChildrenWithBlock: [ref.types.uint32, [CXCursor, CXCursorVisitorBlock]], - clang_getCursorUSR: [CXString, [CXCursor]], - clang_constructUSR_ObjCClass: [CXString, [ref.types.CString]], - clang_constructUSR_ObjCCategory: [CXString, [ref.types.CString, ref.types.CString]], - clang_constructUSR_ObjCProtocol: [CXString, [ref.types.CString]], - clang_constructUSR_ObjCIvar: [CXString, [ref.types.CString, CXString]], - clang_constructUSR_ObjCMethod: [CXString, [ref.types.CString, ref.types.uint32, CXString]], - clang_constructUSR_ObjCProperty: [CXString, [ref.types.CString, CXString]], - clang_getCursorSpelling: [CXString, [CXCursor]], - clang_Cursor_getSpellingNameRange: [CXSourceRange, [CXCursor, ref.types.uint32, ref.types.uint32]], - clang_getCursorDisplayName: [CXString, [CXCursor]], - clang_getCursorReferenced: [CXCursor, [CXCursor]], - clang_getCursorDefinition: [CXCursor, [CXCursor]], - clang_isCursorDefinition: [ref.types.uint32, [CXCursor]], - clang_getCanonicalCursor: [CXCursor, [CXCursor]], - clang_Cursor_getObjCSelectorIndex: [ref.types.int32, [CXCursor]], - clang_Cursor_isDynamicCall: [ref.types.int32, [CXCursor]], - //clang_Cursor_getReceiverType: [CXType, [CXCursor]], - clang_Cursor_getCommentRange: [CXSourceRange, [CXCursor]], - clang_Cursor_getRawCommentText: [CXString, [CXCursor]], - clang_Cursor_getBriefCommentText: [CXString, [CXCursor]], - clang_Cursor_getParsedComment: [CXComment, [CXCursor]], - //clang_Cursor_getModule: [CXModule, [CXCursor]], - //clang_Module_getParent: [CXModule, [CXModule]], - //clang_Module_getName: [CXString, [CXModule]], - //clang_Module_getFullName: [CXString, [CXModule]], - //clang_Module_getNumTopLevelHeaders: [ref.types.uint32, [CXModule]], - //clang_Module_getTopLevelHeader: [CXFile, [CXModule, ref.types.uint32]], - clang_Comment_getKind: [ref.types.uint32, [CXComment]], - clang_Comment_getNumChildren: [ref.types.uint32, [CXComment]], - clang_Comment_getChild: [CXComment, [CXComment, ref.types.uint32]], - clang_Comment_isWhitespace: [ref.types.uint32, [CXComment]], - clang_InlineContentComment_hasTrailingNewline: [ref.types.uint32, [CXComment]], - clang_TextComment_getText: [CXString, [CXComment]], - clang_InlineCommandComment_getCommandName: [CXString, [CXComment]], - clang_InlineCommandComment_getRenderKind: [ref.types.uint32, [CXComment]], - clang_InlineCommandComment_getNumArgs: [ref.types.uint32, [CXComment]], - clang_InlineCommandComment_getArgText: [CXString, [CXComment, ref.types.uint32]], - clang_HTMLTagComment_getTagName: [CXString, [CXComment]], - clang_HTMLStartTagComment_isSelfClosing: [ref.types.uint32, [CXComment]], - clang_HTMLStartTag_getNumAttrs: [ref.types.uint32, [CXComment]], - clang_HTMLStartTag_getAttrName: [CXString, [CXComment, ref.types.uint32]], - clang_HTMLStartTag_getAttrValue: [CXString, [CXComment, ref.types.uint32]], - clang_BlockCommandComment_getCommandName: [CXString, [CXComment]], - clang_BlockCommandComment_getNumArgs: [ref.types.uint32, [CXComment]], - clang_BlockCommandComment_getArgText: [CXString, [CXComment, ref.types.uint32]], - clang_BlockCommandComment_getParagraph: [CXComment, [CXComment]], - clang_ParamCommandComment_getParamName: [CXString, [CXComment]], - clang_ParamCommandComment_isParamIndexValid: [ref.types.uint32, [CXComment]], - clang_ParamCommandComment_getParamIndex: [ref.types.uint32, [CXComment]], - clang_ParamCommandComment_isDirectionExplicit: [ref.types.uint32, [CXComment]], - clang_ParamCommandComment_getDirection: [ref.types.uint32, [CXComment]], - clang_TParamCommandComment_getParamName: [CXString, [CXComment]], - clang_TParamCommandComment_isParamPositionValid: [ref.types.uint32, [CXComment]], - clang_TParamCommandComment_getDepth: [ref.types.uint32, [CXComment]], - clang_TParamCommandComment_getIndex: [ref.types.uint32, [CXComment, ref.types.uint32]], - clang_VerbatimBlockLineComment_getText: [CXString, [CXComment]], - clang_VerbatimLineComment_getText: [CXString, [CXComment]], - clang_HTMLTagComment_getAsString: [CXString, [CXComment]], - clang_FullComment_getAsHTML: [CXString, [CXComment]], - clang_FullComment_getAsXML: [CXString, [CXComment]], - clang_CXXMethod_isStatic: [ref.types.uint32, [CXCursor]], - clang_CXXMethod_isVirtual: [ref.types.uint32, [CXCursor]], - clang_getTemplateCursorKind: [ref.types.uint32, [CXCursor]], - clang_getSpecializedCursorTemplate: [CXCursor, [CXCursor]], - clang_getCursorReferenceNameRange: [CXSourceRange, [CXCursor, ref.types.uint32, ref.types.uint32]], - clang_getTokenKind: [ref.types.uint32, [CXToken]], - clang_getTokenSpelling: [CXString, [CXTranslationUnit, CXToken]], - clang_getTokenLocation: [CXSourceLocation, [CXTranslationUnit, CXToken]], - clang_getTokenExtent: [CXSourceRange, [CXTranslationUnit, CXToken]], - clang_tokenize: [ref.types.void, [CXTranslationUnit, CXSourceRange, voidPtr, voidPtr]], - clang_annotateTokens: [ref.types.void, [CXTranslationUnit, CXTokenPtr, ref.types.uint32, CXCursorPtr]], - clang_disposeTokens: [ref.types.void, [CXTranslationUnit, CXTokenPtr, ref.types.uint32]], - clang_getCursorKindSpelling: [CXString, [ref.types.uint32]], - clang_getDefinitionSpellingAndExtent: [ref.types.void, [CXCursor, voidPtr, voidPtr, voidPtr, voidPtr, voidPtr, voidPtr]], + clang_disposeCXCursorSet: [ref.types.void, [ + CXCursorSet, + ]], + clang_CXCursorSet_contains: [ref.types.uint32, [ + CXCursorSet, + CXCursor, + ]], + clang_CXCursorSet_insert: [ref.types.uint32, [ + CXCursorSet, + CXCursor, + ]], + clang_getCursorSemanticParent: [CXCursor, [ + CXCursor, + ]], + clang_getCursorLexicalParent: [CXCursor, [ + CXCursor, + ]], + clang_getOverriddenCursors: [ref.types.void, [ + CXCursor, + voidPtr, + ref.refType(ref.types.uint32), + ]], + clang_disposeOverriddenCursors: [ref.types.void, [ + CXCursorPtr, + ]], + clang_getIncludedFile: [CXFile, [ + CXCursor, + ]], + clang_getCursor: [CXCursor, [ + CXTranslationUnit, + CXSourceLocation, + ]], + clang_getCursorLocation: [CXSourceLocation, [ + CXCursor, + ]], + clang_getCursorExtent: [CXSourceRange, [ + CXCursor, + ]], + clang_getCursorType: [CXType, [ + CXCursor, + ]], + clang_getTypeSpelling: [CXString, [ + CXType, + ]], + clang_getTypedefDeclUnderlyingType: [CXType, [ + CXCursor, + ]], + clang_getEnumDeclIntegerType: [CXType, [ + CXCursor, + ]], + clang_getEnumConstantDeclValue: [ref.types.longlong, [ + CXCursor, + ]], + clang_getEnumConstantDeclUnsignedValue: [ref.types.ulonglong, [ + CXCursor, + ]], + clang_getFieldDeclBitWidth: [ref.types.int32, [ + CXCursor, + ]], + clang_Cursor_getNumArguments: [ref.types.int32, [ + CXCursor, + ]], + clang_Cursor_getArgument: [CXCursor, [ + CXCursor, + ref.types.uint32, + ]], + clang_Cursor_getNumTemplateArguments: [ref.types.int32, [ + CXCursor, + ]], + clang_Cursor_getTemplateArgumentKind: [ref.types.uint32, [ + CXCursor, + ref.types.uint32, + ]], + clang_Cursor_getTemplateArgumentType: [CXType, [ + CXCursor, + ref.types.uint32, + ]], + clang_Cursor_getTemplateArgumentValue: [ref.types.longlong, [ + CXCursor, + ref.types.uint32, + ]], + clang_Cursor_getTemplateArgumentUnsignedValue: [ref.types.ulonglong, [ + CXCursor, + ref.types.uint32, + ]], + clang_equalTypes: [ref.types.uint32, [ + CXType, + CXType, + ]], + clang_getCanonicalType: [CXType, [ + CXType, + ]], + clang_isConstQualifiedType: [ref.types.uint32, [ + CXType, + ]], + clang_Cursor_isMacroFunctionLike: [ref.types.uint32, [ + CXCursor, + ]], + clang_Cursor_isMacroBuiltin: [ref.types.uint32, [ + CXCursor, + ]], + clang_Cursor_isFunctionInlined: [ref.types.uint32, [ + CXCursor, + ]], + clang_isVolatileQualifiedType: [ref.types.uint32, [ + CXType, + ]], + clang_isRestrictQualifiedType: [ref.types.uint32, [ + CXType, + ]], + clang_getAddressSpace: [ref.types.uint32, [ + CXType, + ]], + clang_getTypedefName: [CXString, [ + CXType, + ]], + clang_getPointeeType: [CXType, [ + CXType, + ]], + clang_getTypeDeclaration: [CXCursor, [ + CXType, + ]], + clang_getDeclObjCTypeEncoding: [CXString, [ + CXCursor, + ]], + clang_Type_getObjCEncoding: [CXString, [ + CXType, + ]], + clang_getTypeKindSpelling: [CXString, [ + ref.types.uint32, + ]], + clang_getFunctionTypeCallingConv: [ref.types.uint32, [ + CXType, + ]], + clang_getResultType: [CXType, [ + CXType, + ]], + clang_getExceptionSpecificationType: [ref.types.int32, [ + CXType, + ]], + clang_getNumArgTypes: [ref.types.int32, [ + CXType, + ]], + clang_getArgType: [CXType, [ + CXType, + ref.types.uint32, + ]], + clang_Type_getObjCObjectBaseType: [CXType, [ + CXType, + ]], + clang_Type_getNumObjCProtocolRefs: [ref.types.uint32, [ + CXType, + ]], + clang_Type_getObjCProtocolDecl: [CXCursor, [ + CXType, + ref.types.uint32, + ]], + clang_Type_getNumObjCTypeArgs: [ref.types.uint32, [ + CXType, + ]], + clang_Type_getObjCTypeArg: [CXType, [ + CXType, + ref.types.uint32, + ]], + clang_isFunctionTypeVariadic: [ref.types.uint32, [ + CXType, + ]], + clang_getCursorResultType: [CXType, [ + CXCursor, + ]], + clang_getCursorExceptionSpecificationType: [ref.types.int32, [ + CXCursor, + ]], + clang_isPODType: [ref.types.uint32, [ + CXType, + ]], + clang_getElementType: [CXType, [ + CXType, + ]], + clang_getNumElements: [ref.types.longlong, [ + CXType, + ]], + clang_getArrayElementType: [CXType, [ + CXType, + ]], + clang_getArraySize: [ref.types.longlong, [ + CXType, + ]], + clang_Type_getNamedType: [CXType, [ + CXType, + ]], + clang_Type_isTransparentTagTypedef: [ref.types.uint32, [ + CXType, + ]], + clang_Type_getNullability: [ref.types.uint32, [ + CXType, + ]], + clang_Type_getAlignOf: [ref.types.longlong, [ + CXType, + ]], + clang_Type_getClassType: [CXType, [ + CXType, + ]], + clang_Type_getSizeOf: [ref.types.longlong, [ + CXType, + ]], + clang_Type_getOffsetOf: [ref.types.longlong, [ + CXType, + ref.types.CString, + ]], + clang_Type_getModifiedType: [CXType, [ + CXType, + ]], + clang_Cursor_getOffsetOfField: [ref.types.longlong, [ + CXCursor, + ]], + clang_Cursor_isAnonymous: [ref.types.uint32, [ + CXCursor, + ]], + clang_Cursor_isAnonymousRecordDecl: [ref.types.uint32, [ + CXCursor, + ]], + clang_Cursor_isInlineNamespace: [ref.types.uint32, [ + CXCursor, + ]], + clang_Type_getNumTemplateArguments: [ref.types.int32, [ + CXType, + ]], + clang_Type_getTemplateArgumentAsType: [CXType, [ + CXType, + ref.types.uint32, + ]], + clang_Type_getCXXRefQualifier: [ref.types.uint32, [ + CXType, + ]], + clang_Cursor_isBitField: [ref.types.uint32, [ + CXCursor, + ]], + clang_isVirtualBase: [ref.types.uint32, [ + CXCursor, + ]], + clang_getCXXAccessSpecifier: [ref.types.uint32, [ + CXCursor, + ]], + clang_Cursor_getStorageClass: [ref.types.uint32, [ + CXCursor, + ]], + clang_getNumOverloadedDecls: [ref.types.uint32, [ + CXCursor, + ]], + clang_getOverloadedDecl: [CXCursor, [ + CXCursor, + ref.types.uint32, + ]], + clang_getIBOutletCollectionType: [CXType, [ + CXCursor, + ]], + clang_visitChildren: [ref.types.uint32, [ + CXCursor, + CXCursorVisitor, + CXClientData, + ]], + clang_getCursorUSR: [CXString, [ + CXCursor, + ]], + clang_constructUSR_ObjCClass: [CXString, [ + ref.types.CString, + ]], + clang_constructUSR_ObjCCategory: [CXString, [ + ref.types.CString, + ref.types.CString, + ]], + clang_constructUSR_ObjCProtocol: [CXString, [ + ref.types.CString, + ]], + clang_constructUSR_ObjCIvar: [CXString, [ + ref.types.CString, + CXString, + ]], + clang_constructUSR_ObjCMethod: [CXString, [ + ref.types.CString, + ref.types.uint32, + CXString, + ]], + clang_constructUSR_ObjCProperty: [CXString, [ + ref.types.CString, + CXString, + ]], + clang_getCursorSpelling: [CXString, [ + CXCursor, + ]], + clang_Cursor_getSpellingNameRange: [CXSourceRange, [ + CXCursor, + ref.types.uint32, + ref.types.uint32, + ]], + clang_PrintingPolicy_getProperty: [ref.types.uint32, [ + CXPrintingPolicy, + ref.types.uint32, + ]], + clang_PrintingPolicy_setProperty: [ref.types.void, [ + CXPrintingPolicy, + ref.types.uint32, + ref.types.uint32, + ]], + clang_getCursorPrintingPolicy: [CXPrintingPolicy, [ + CXCursor, + ]], + clang_PrintingPolicy_dispose: [ref.types.void, [ + CXPrintingPolicy, + ]], + clang_getCursorPrettyPrinted: [CXString, [ + CXCursor, + CXPrintingPolicy, + ]], + clang_getCursorDisplayName: [CXString, [ + CXCursor, + ]], + clang_getCursorReferenced: [CXCursor, [ + CXCursor, + ]], + clang_getCursorDefinition: [CXCursor, [ + CXCursor, + ]], + clang_isCursorDefinition: [ref.types.uint32, [ + CXCursor, + ]], + clang_getCanonicalCursor: [CXCursor, [ + CXCursor, + ]], + clang_Cursor_getObjCSelectorIndex: [ref.types.int32, [ + CXCursor, + ]], + clang_Cursor_isDynamicCall: [ref.types.int32, [ + CXCursor, + ]], + clang_Cursor_getReceiverType: [CXType, [ + CXCursor, + ]], + clang_Cursor_getObjCPropertyAttributes: [ref.types.uint32, [ + CXCursor, + ref.types.uint32, + ]], + clang_Cursor_getObjCPropertyGetterName: [CXString, [ + CXCursor, + ]], + clang_Cursor_getObjCPropertySetterName: [CXString, [ + CXCursor, + ]], + clang_Cursor_getObjCDeclQualifiers: [ref.types.uint32, [ + CXCursor, + ]], + clang_Cursor_isObjCOptional: [ref.types.uint32, [ + CXCursor, + ]], + clang_Cursor_isVariadic: [ref.types.uint32, [ + CXCursor, + ]], + clang_Cursor_isExternalSymbol: [ref.types.uint32, [ + CXCursor, + CXStringPtr, + CXStringPtr, + ref.refType(ref.types.uint32), + ]], + clang_Cursor_getCommentRange: [CXSourceRange, [ + CXCursor, + ]], + clang_Cursor_getRawCommentText: [CXString, [ + CXCursor, + ]], + clang_Cursor_getBriefCommentText: [CXString, [ + CXCursor, + ]], + clang_Cursor_getMangling: [CXString, [ + CXCursor, + ]], + clang_Cursor_getCXXManglings: [CXStringSetPtr, [ + CXCursor, + ]], + clang_Cursor_getObjCManglings: [CXStringSetPtr, [ + CXCursor, + ]], + clang_Cursor_getModule: [CXModule, [ + CXCursor, + ]], + clang_getModuleForFile: [CXModule, [ + CXTranslationUnit, + CXFile, + ]], + clang_Module_getASTFile: [CXFile, [ + CXModule, + ]], + clang_Module_getParent: [CXModule, [ + CXModule, + ]], + clang_Module_getName: [CXString, [ + CXModule, + ]], + clang_Module_getFullName: [CXString, [ + CXModule, + ]], + clang_Module_isSystem: [ref.types.int32, [ + CXModule, + ]], + clang_Module_getNumTopLevelHeaders: [ref.types.uint32, [ + CXTranslationUnit, + CXModule, + ]], + clang_Module_getTopLevelHeader: [CXFile, [ + CXTranslationUnit, + CXModule, + ref.types.uint32, + ]], + clang_CXXConstructor_isConvertingConstructor: [ref.types.uint32, [ + CXCursor, + ]], + clang_CXXConstructor_isCopyConstructor: [ref.types.uint32, [ + CXCursor, + ]], + clang_CXXConstructor_isDefaultConstructor: [ref.types.uint32, [ + CXCursor, + ]], + clang_CXXConstructor_isMoveConstructor: [ref.types.uint32, [ + CXCursor, + ]], + clang_CXXField_isMutable: [ref.types.uint32, [ + CXCursor, + ]], + clang_CXXMethod_isDefaulted: [ref.types.uint32, [ + CXCursor, + ]], + clang_CXXMethod_isPureVirtual: [ref.types.uint32, [ + CXCursor, + ]], + clang_CXXMethod_isStatic: [ref.types.uint32, [ + CXCursor, + ]], + clang_CXXMethod_isVirtual: [ref.types.uint32, [ + CXCursor, + ]], + clang_CXXRecord_isAbstract: [ref.types.uint32, [ + CXCursor, + ]], + clang_EnumDecl_isScoped: [ref.types.uint32, [ + CXCursor, + ]], + clang_CXXMethod_isConst: [ref.types.uint32, [ + CXCursor, + ]], + clang_getTemplateCursorKind: [ref.types.uint32, [ + CXCursor, + ]], + clang_getSpecializedCursorTemplate: [CXCursor, [ + CXCursor, + ]], + clang_getCursorReferenceNameRange: [CXSourceRange, [ + CXCursor, + ref.types.uint32, + ref.types.uint32, + ]], + clang_getToken: [CXTokenPtr, [ + CXTranslationUnit, + CXSourceLocation, + ]], + clang_getTokenKind: [ref.types.uint32, [ + CXToken, + ]], + clang_getTokenSpelling: [CXString, [ + CXTranslationUnit, + CXToken, + ]], + clang_getTokenLocation: [CXSourceLocation, [ + CXTranslationUnit, + CXToken, + ]], + clang_getTokenExtent: [CXSourceRange, [ + CXTranslationUnit, + CXToken, + ]], + clang_tokenize: [ref.types.void, [ + CXTranslationUnit, + CXSourceRange, + voidPtr, + ref.refType(ref.types.uint32), + ]], + clang_annotateTokens: [ref.types.void, [ + CXTranslationUnit, + CXTokenPtr, + ref.types.uint32, + CXCursorPtr, + ]], + clang_disposeTokens: [ref.types.void, [ + CXTranslationUnit, + CXTokenPtr, + ref.types.uint32, + ]], + clang_getCursorKindSpelling: [CXString, [ + ref.types.uint32, + ]], + clang_getDefinitionSpellingAndExtent: [ref.types.void, [ + CXCursor, + voidPtr, + voidPtr, + ref.refType(ref.types.uint32), + ref.refType(ref.types.uint32), + ref.refType(ref.types.uint32), + ref.refType(ref.types.uint32), + ]], clang_enableStackTraces: [ref.types.void, []], - clang_executeOnThread: [ref.types.void, [voidPtr, voidPtr, ref.types.uint32]], - clang_getCompletionChunkKind: [ref.types.uint32, [CXCompletionString, ref.types.uint32]], - clang_getCompletionChunkText: [CXString, [CXCompletionString, ref.types.uint32]], - clang_getCompletionChunkCompletionString: [CXCompletionString, [CXCompletionString, ref.types.uint32]], - clang_getNumCompletionChunks: [ref.types.uint32, [CXCompletionString]], - clang_getCompletionPriority: [ref.types.uint32, [CXCompletionString]], - clang_getCompletionAvailability: [ref.types.uint32, [CXCompletionString]], - clang_getCompletionNumAnnotations: [ref.types.uint32, [CXCompletionString]], - clang_getCompletionAnnotation: [CXString, [CXCompletionString, ref.types.uint32]], - clang_getCompletionParent: [CXString, [CXCompletionString, voidPtr]], - clang_getCompletionBriefComment: [CXString, [CXCompletionString]], - clang_getCursorCompletionString: [CXCompletionString, [CXCursor]], + clang_executeOnThread: [ref.types.void, [ + voidPtr, + voidPtr, + ref.types.uint32, + ]], + clang_getCompletionChunkKind: [ref.types.uint32, [ + CXCompletionString, + ref.types.uint32, + ]], + clang_getCompletionChunkText: [CXString, [ + CXCompletionString, + ref.types.uint32, + ]], + clang_getCompletionChunkCompletionString: [CXCompletionString, [ + CXCompletionString, + ref.types.uint32, + ]], + clang_getNumCompletionChunks: [ref.types.uint32, [ + CXCompletionString, + ]], + clang_getCompletionPriority: [ref.types.uint32, [ + CXCompletionString, + ]], + clang_getCompletionAvailability: [ref.types.uint32, [ + CXCompletionString, + ]], + clang_getCompletionNumAnnotations: [ref.types.uint32, [ + CXCompletionString, + ]], + clang_getCompletionAnnotation: [CXString, [ + CXCompletionString, + ref.types.uint32, + ]], + clang_getCompletionParent: [CXString, [ + CXCompletionString, + voidPtr, + ]], + clang_getCompletionBriefComment: [CXString, [ + CXCompletionString, + ]], + clang_getCursorCompletionString: [CXCompletionString, [ + CXCursor, + ]], + clang_getCompletionNumFixIts: [ref.types.uint32, [ + CXCodeCompleteResultsPtr, + ref.types.uint32, + ]], + clang_getCompletionFixIt: [CXString, [ + CXCodeCompleteResultsPtr, + ref.types.uint32, + ref.types.uint32, + CXSourceRangePtr, + ]], clang_defaultCodeCompleteOptions: [ref.types.uint32, []], - clang_codeCompleteAt: [CXCodeCompleteResultsPtr, [CXTranslationUnit, ref.types.CString, ref.types.uint32, ref.types.uint32, voidPtr, ref.types.uint32, ref.types.uint32]], - clang_sortCodeCompletionResults: [ref.types.void, [CXCompletionResultPtr, ref.types.uint32]], - clang_disposeCodeCompleteResults: [ref.types.void, [CXCodeCompleteResultsPtr]], - clang_codeCompleteGetNumDiagnostics: [ref.types.uint32, [CXCodeCompleteResultsPtr]], - clang_codeCompleteGetDiagnostic: [CXDiagnostic, [CXCodeCompleteResultsPtr, ref.types.uint32]], - clang_codeCompleteGetContexts: [ref.types.ulonglong, [CXCodeCompleteResultsPtr]], - clang_codeCompleteGetContainerKind: [ref.types.uint32, [CXCodeCompleteResultsPtr, voidPtr]], - clang_codeCompleteGetContainerUSR: [CXString, [CXCodeCompleteResultsPtr]], - clang_codeCompleteGetObjCSelector: [CXString, [CXCodeCompleteResultsPtr]], + clang_codeCompleteAt: [CXCodeCompleteResultsPtr, [ + CXTranslationUnit, + ref.types.CString, + ref.types.uint32, + ref.types.uint32, + voidPtr, + ref.types.uint32, + ref.types.uint32, + ]], + clang_sortCodeCompletionResults: [ref.types.void, [ + CXCompletionResultPtr, + ref.types.uint32, + ]], + clang_disposeCodeCompleteResults: [ref.types.void, [ + CXCodeCompleteResultsPtr, + ]], + clang_codeCompleteGetNumDiagnostics: [ref.types.uint32, [ + CXCodeCompleteResultsPtr, + ]], + clang_codeCompleteGetDiagnostic: [CXDiagnostic, [ + CXCodeCompleteResultsPtr, + ref.types.uint32, + ]], + clang_codeCompleteGetContexts: [ref.types.ulonglong, [ + CXCodeCompleteResultsPtr, + ]], + clang_codeCompleteGetContainerKind: [ref.types.uint32, [ + CXCodeCompleteResultsPtr, + ref.refType(ref.types.uint32), + ]], + clang_codeCompleteGetContainerUSR: [CXString, [ + CXCodeCompleteResultsPtr, + ]], + clang_codeCompleteGetObjCSelector: [CXString, [ + CXCodeCompleteResultsPtr, + ]], clang_getClangVersion: [CXString, []], - clang_toggleCrashRecovery: [ref.types.void, [ref.types.uint32]], - clang_getInclusions: [ref.types.void, [CXTranslationUnit, CXInclusionVisitor, CXClientData]], - clang_getRemappings: [CXRemapping, [ref.types.CString]], - clang_getRemappingsFromFileList: [CXRemapping, [voidPtr, ref.types.uint32]], - clang_remap_getNumFiles: [ref.types.uint32, [CXRemapping]], - clang_remap_getFilenames: [ref.types.void, [CXRemapping, ref.types.uint32, CXStringPtr, CXStringPtr]], - clang_remap_dispose: [ref.types.void, [CXRemapping]], - clang_findReferencesInFile: [ref.types.void, [CXCursor, CXFile, CXCursorAndRangeVisitor]], - clang_index_isEntityObjCContainerKind: [ref.types.int32, [ref.types.uint32]], - clang_index_getObjCContainerDeclInfo: [CXIdxObjCContainerDeclInfoPtr, [CXIdxDeclInfoPtr]], - clang_index_getObjCInterfaceDeclInfo: [CXIdxObjCInterfaceDeclInfoPtr, [CXIdxDeclInfoPtr]], - clang_index_getObjCCategoryDeclInfo: [CXIdxObjCCategoryDeclInfoPtr, [CXIdxDeclInfoPtr]], - clang_index_getObjCProtocolRefListInfo: [CXIdxObjCProtocolRefListInfoPtr, [CXIdxDeclInfoPtr]], - clang_index_getObjCPropertyDeclInfo: [CXIdxObjCPropertyDeclInfoPtr, [CXIdxDeclInfoPtr]], - clang_index_getIBOutletCollectionAttrInfo: [CXIdxIBOutletCollectionAttrInfoPtr, [CXIdxAttrInfoPtr]], - clang_index_getCXXClassDeclInfo: [CXIdxCXXClassDeclInfoPtr, [CXIdxDeclInfoPtr]], - clang_index_getClientContainer: [CXIdxClientContainer, [CXIdxContainerInfoPtr]], - clang_index_setClientContainer: [ref.types.void, [CXIdxContainerInfoPtr, CXIdxClientContainer]], - clang_index_getClientEntity: [CXIdxClientEntity, [CXIdxEntityInfoPtr]], - clang_index_setClientEntity: [ref.types.void, [CXIdxEntityInfoPtr, CXIdxClientEntity]], - clang_IndexAction_create: [CXIndexAction, [CXIndex]], - clang_IndexAction_dispose: [ref.types.void, [CXIndexAction]], - clang_indexSourceFile: [ref.types.int32, [CXIndexAction, CXClientData, IndexerCallbacksPtr, ref.types.uint32, ref.types.uint32, ref.types.CString, voidPtr, ref.types.int32, voidPtr, ref.types.uint32, CXTranslationUnitPtr, ref.types.uint32]], - clang_indexTranslationUnit: [ref.types.int32, [CXIndexAction, CXClientData, IndexerCallbacksPtr, ref.types.uint32, ref.types.uint32, CXTranslationUnit]], - clang_indexLoc_getFileLocation: [ref.types.void, [CXIdxLoc, CXIdxClientFile, CXFilePtr, voidPtr, voidPtr, voidPtr]], - clang_indexLoc_getCXSourceLocation: [CXSourceLocation, [CXIdxLoc]], -}); + clang_toggleCrashRecovery: [ref.types.void, [ + ref.types.uint32, + ]], + clang_getInclusions: [ref.types.void, [ + CXTranslationUnit, + CXInclusionVisitor, + CXClientData, + ]], + clang_Cursor_Evaluate: [CXEvalResult, [ + CXCursor, + ]], + clang_EvalResult_getKind: [ref.types.uint32, [ + CXEvalResult, + ]], + clang_EvalResult_getAsInt: [ref.types.int32, [ + CXEvalResult, + ]], + clang_EvalResult_getAsLongLong: [ref.types.longlong, [ + CXEvalResult, + ]], + clang_EvalResult_isUnsignedInt: [ref.types.uint32, [ + CXEvalResult, + ]], + clang_EvalResult_getAsUnsigned: [ref.types.ulonglong, [ + CXEvalResult, + ]], + clang_EvalResult_getAsDouble: [ref.types.double, [ + CXEvalResult, + ]], + clang_EvalResult_getAsStr: [ref.types.CString, [ + CXEvalResult, + ]], + clang_EvalResult_dispose: [ref.types.void, [ + CXEvalResult, + ]], + clang_getRemappings: [CXRemapping, [ + ref.types.CString, + ]], + clang_getRemappingsFromFileList: [CXRemapping, [ + voidPtr, + ref.types.uint32, + ]], + clang_remap_getNumFiles: [ref.types.uint32, [ + CXRemapping, + ]], + clang_remap_getFilenames: [ref.types.void, [ + CXRemapping, + ref.types.uint32, + CXStringPtr, + CXStringPtr, + ]], + clang_remap_dispose: [ref.types.void, [ + CXRemapping, + ]], + clang_findReferencesInFile: [ref.types.uint32, [ + CXCursor, + CXFile, + CXCursorAndRangeVisitor, + ]], + clang_findIncludesInFile: [ref.types.uint32, [ + CXTranslationUnit, + CXFile, + CXCursorAndRangeVisitor, + ]], + clang_index_isEntityObjCContainerKind: [ref.types.int32, [ + ref.types.uint32, + ]], + clang_index_getObjCContainerDeclInfo: [CXIdxObjCContainerDeclInfoPtr, [ + CXIdxDeclInfoPtr, + ]], + clang_index_getObjCInterfaceDeclInfo: [CXIdxObjCInterfaceDeclInfoPtr, [ + CXIdxDeclInfoPtr, + ]], + clang_index_getObjCCategoryDeclInfo: [CXIdxObjCCategoryDeclInfoPtr, [ + CXIdxDeclInfoPtr, + ]], + clang_index_getObjCProtocolRefListInfo: [CXIdxObjCProtocolRefListInfoPtr, [ + CXIdxDeclInfoPtr, + ]], + clang_index_getObjCPropertyDeclInfo: [CXIdxObjCPropertyDeclInfoPtr, [ + CXIdxDeclInfoPtr, + ]], + clang_index_getIBOutletCollectionAttrInfo: [CXIdxIBOutletCollectionAttrInfoPtr, [ + CXIdxAttrInfoPtr, + ]], + clang_index_getCXXClassDeclInfo: [CXIdxCXXClassDeclInfoPtr, [ + CXIdxDeclInfoPtr, + ]], + clang_index_getClientContainer: [CXIdxClientContainer, [ + CXIdxContainerInfoPtr, + ]], + clang_index_setClientContainer: [ref.types.void, [ + CXIdxContainerInfoPtr, + CXIdxClientContainer, + ]], + clang_index_getClientEntity: [CXIdxClientEntity, [ + CXIdxEntityInfoPtr, + ]], + clang_index_setClientEntity: [ref.types.void, [ + CXIdxEntityInfoPtr, + CXIdxClientEntity, + ]], + clang_IndexAction_create: [CXIndexAction, [ + CXIndex, + ]], + clang_IndexAction_dispose: [ref.types.void, [ + CXIndexAction, + ]], + clang_indexSourceFile: [ref.types.int32, [ + CXIndexAction, + CXClientData, + IndexerCallbacksPtr, + ref.types.uint32, + ref.types.uint32, + ref.types.CString, + voidPtr, + ref.types.int32, + voidPtr, + ref.types.uint32, + CXTranslationUnitPtr, + ref.types.uint32, + ]], + clang_indexSourceFileFullArgv: [ref.types.int32, [ + CXIndexAction, + CXClientData, + IndexerCallbacksPtr, + ref.types.uint32, + ref.types.uint32, + ref.types.CString, + voidPtr, + ref.types.int32, + voidPtr, + ref.types.uint32, + CXTranslationUnitPtr, + ref.types.uint32, + ]], + clang_indexTranslationUnit: [ref.types.int32, [ + CXIndexAction, + CXClientData, + IndexerCallbacksPtr, + ref.types.uint32, + ref.types.uint32, + CXTranslationUnit, + ]], + clang_indexLoc_getFileLocation: [ref.types.void, [ + CXIdxLoc, + CXIdxClientFile, + CXFilePtr, + ref.refType(ref.types.uint32), + ref.refType(ref.types.uint32), + ref.refType(ref.types.uint32), + ]], + clang_indexLoc_getCXSourceLocation: [CXSourceLocation, [ + CXIdxLoc, + ]], + clang_Type_visitFields: [ref.types.uint32, [ + CXType, + CXFieldVisitor, + CXClientData, + ]], +}); \ No newline at end of file diff --git a/lib/location.js b/lib/location.js index 869dd69..283a6e3 100644 --- a/lib/location.js +++ b/lib/location.js @@ -20,7 +20,7 @@ var lib = require('./dynamic_clang'); var util = require('./util'); -var ref = require('ref'); +var ref = require('ref-napi'); var Location = function (instance) { if (!(this instanceof Location)) diff --git a/lib/translationunit.js b/lib/translationunit.js index c7b2392..2eb51ce 100644 --- a/lib/translationunit.js +++ b/lib/translationunit.js @@ -18,7 +18,7 @@ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE -var ref = require('ref'); +var ref = require('ref-napi'); var lib = require('./dynamic_clang').libclang; diff --git a/lib/type.js b/lib/type.js index 08a6547..30c20fb 100644 --- a/lib/type.js +++ b/lib/type.js @@ -100,6 +100,12 @@ var Type = function (instance) { } }); + Object.defineProperty(this, 'namedType', { + get: function () { + return new Type(lib.clang_Type_getNamedType(self._instance)); + } + }); + this.getArg = function (arg) { return new Type(lib.clang_getArgType(self._instance, arg)); }; diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..dc615ce --- /dev/null +++ b/package-lock.json @@ -0,0 +1,251 @@ +{ + "name": "libclang", + "version": "0.0.11", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "array-index": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-index/-/array-index-1.0.0.tgz", + "integrity": "sha1-7FanSe4QPk4Ix5C5w1PfFgVbl/k=", + "requires": { + "debug": "^2.2.0", + "es6-symbol": "^3.0.2" + } + }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "requires": { + "file-uri-to-path": "1.0.0" + } + }, + "d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "requires": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "es5-ext": { + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "requires": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.3", + "next-tick": "~1.0.0" + } + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "requires": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "ext": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", + "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "requires": { + "type": "^2.0.0" + }, + "dependencies": { + "type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", + "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==" + } + } + }, + "ffi-napi": { + "version": "github:atishay/node-ffi-napi#40443ca8dad10cc3286c432774de3ce631d457e1", + "from": "github:atishay/node-ffi-napi#40443ca8dad10cc3286c432774de3ce631d457e1", + "requires": { + "bindings": "^1.3.0", + "debug": "^3.1.0", + "get-uv-event-loop-napi-h": "^1.0.5", + "node-addon-api": "1.6.1", + "ref-napi": "^1.4.0", + "ref-struct-di": "^1.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } + }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" + }, + "get-symbol-from-current-process-h": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-from-current-process-h/-/get-symbol-from-current-process-h-1.0.2.tgz", + "integrity": "sha512-syloC6fsCt62ELLrr1VKBM1ggOpMdetX9hTrdW77UQdcApPHLmf7CI7OKcN1c9kYuNxKcDe4iJ4FY9sX3aw2xw==" + }, + "get-uv-event-loop-napi-h": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/get-uv-event-loop-napi-h/-/get-uv-event-loop-napi-h-1.0.6.tgz", + "integrity": "sha512-t5c9VNR84nRoF+eLiz6wFrEp1SE2Acg0wS+Ysa2zF0eROes+LzOfuTaVHxGy8AbS8rq7FHEJzjnCZo1BupwdJg==", + "requires": { + "get-symbol-from-current-process-h": "^1.0.1" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" + }, + "node-addon-api": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-1.6.1.tgz", + "integrity": "sha512-GcLOYrG5/enbqH4SMsqXt6GQUQGGnDnE3FLDZzXYkCgQHuZV5UDFR+EboeY8kpG0avroyOjpFQ2qLEBosFcRIA==" + }, + "ref-array-di": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ref-array-di/-/ref-array-di-1.2.1.tgz", + "integrity": "sha512-e0iybjafXHZT0nXGui9j4h6VrHUAHeB62a5Ikdgz2ShKy4n+6rTJ+vgj/c8O0yX2ns/ZW8J8oX0cQQxxIiJy4Q==", + "requires": { + "array-index": "^1.0.0", + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } + }, + "ref-napi": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/ref-napi/-/ref-napi-1.4.3.tgz", + "integrity": "sha512-yE98eVwjpeGSbHjahn+hNlheGgKdV3gCW1rSj7HZL4ITzBhRb0HlUapWamRcAjZebPr3yuhvxeKFmso8NbRv5g==", + "requires": { + "bindings": "^1.3.0", + "debug": "^3.1.0", + "node-addon-api": "^2.0.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node-addon-api": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.0.tgz", + "integrity": "sha512-ASCL5U13as7HhOExbT6OlWJJUV/lLzL2voOSP1UVehpRD8FbSrSDjfScK/KwAvVTI5AS6r4VwbOMlIqtvRidnA==" + } + } + }, + "ref-struct-di": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ref-struct-di/-/ref-struct-di-1.1.0.tgz", + "integrity": "sha512-gghZITj/iQwdwFDduZ6T8kL2B2ogInlOz7AOB0ggFoEc7akAKMcDrbzh3OIPk13Kxy8U2bHPvN6nejcBh4jN7A==", + "requires": { + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } + }, + "ref-union-di": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ref-union-di/-/ref-union-di-1.0.1.tgz", + "integrity": "sha512-JWSF2BwNVtCgmEfoDGMh8S1KO07oq+T8L7cBHwcsmQmeXDZd9JNlrxU+ebSHs+jsf0qrqFFWXMCmj94Tcl26TA==", + "requires": { + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } + }, + "type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + } + } +} diff --git a/package.json b/package.json index 40c2a97..87a617b 100644 --- a/package.json +++ b/package.json @@ -11,9 +11,10 @@ "author": "Timothy J Fontaine ", "license": "MIT", "dependencies": { - "ffi": "", - "ref": "", - "ref-array": "", - "ref-struct": "" + "ffi-napi": "atishay/node-ffi-napi#40443ca8dad10cc3286c432774de3ce631d457e1", + "ref-array-di": "^1.2.1", + "ref-napi": "^1.4.3", + "ref-struct-di": "^1.1.0", + "ref-union-di": "^1.0.1" } }