zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

blob 72818d4c (49863B) - Raw


      1 const builtin = @import("builtin");
      2 
      3 pub const struct_ZigClangConditionalOperator = @Type(.Opaque);
      4 pub const struct_ZigClangBinaryConditionalOperator = @Type(.Opaque);
      5 pub const struct_ZigClangAbstractConditionalOperator = @Type(.Opaque);
      6 pub const struct_ZigClangAPInt = @Type(.Opaque);
      7 pub const struct_ZigClangAPSInt = @Type(.Opaque);
      8 pub const struct_ZigClangAPFloat = @Type(.Opaque);
      9 pub const struct_ZigClangASTContext = @Type(.Opaque);
     10 pub const struct_ZigClangASTUnit = @Type(.Opaque);
     11 pub const struct_ZigClangArraySubscriptExpr = @Type(.Opaque);
     12 pub const struct_ZigClangArrayType = @Type(.Opaque);
     13 pub const struct_ZigClangAttributedType = @Type(.Opaque);
     14 pub const struct_ZigClangBinaryOperator = @Type(.Opaque);
     15 pub const struct_ZigClangBreakStmt = @Type(.Opaque);
     16 pub const struct_ZigClangBuiltinType = @Type(.Opaque);
     17 pub const struct_ZigClangCStyleCastExpr = @Type(.Opaque);
     18 pub const struct_ZigClangCallExpr = @Type(.Opaque);
     19 pub const struct_ZigClangCaseStmt = @Type(.Opaque);
     20 pub const struct_ZigClangCompoundAssignOperator = @Type(.Opaque);
     21 pub const struct_ZigClangCompoundStmt = @Type(.Opaque);
     22 pub const struct_ZigClangConstantArrayType = @Type(.Opaque);
     23 pub const struct_ZigClangContinueStmt = @Type(.Opaque);
     24 pub const struct_ZigClangDecayedType = @Type(.Opaque);
     25 pub const struct_ZigClangDecl = @Type(.Opaque);
     26 pub const struct_ZigClangDeclRefExpr = @Type(.Opaque);
     27 pub const struct_ZigClangDeclStmt = @Type(.Opaque);
     28 pub const struct_ZigClangDefaultStmt = @Type(.Opaque);
     29 pub const struct_ZigClangDiagnosticOptions = @Type(.Opaque);
     30 pub const struct_ZigClangDiagnosticsEngine = @Type(.Opaque);
     31 pub const struct_ZigClangDoStmt = @Type(.Opaque);
     32 pub const struct_ZigClangElaboratedType = @Type(.Opaque);
     33 pub const struct_ZigClangEnumConstantDecl = @Type(.Opaque);
     34 pub const struct_ZigClangEnumDecl = @Type(.Opaque);
     35 pub const struct_ZigClangEnumType = @Type(.Opaque);
     36 pub const struct_ZigClangExpr = @Type(.Opaque);
     37 pub const struct_ZigClangFieldDecl = @Type(.Opaque);
     38 pub const struct_ZigClangFileID = @Type(.Opaque);
     39 pub const struct_ZigClangForStmt = @Type(.Opaque);
     40 pub const struct_ZigClangFullSourceLoc = @Type(.Opaque);
     41 pub const struct_ZigClangFunctionDecl = @Type(.Opaque);
     42 pub const struct_ZigClangFunctionProtoType = @Type(.Opaque);
     43 pub const struct_ZigClangIfStmt = @Type(.Opaque);
     44 pub const struct_ZigClangImplicitCastExpr = @Type(.Opaque);
     45 pub const struct_ZigClangIncompleteArrayType = @Type(.Opaque);
     46 pub const struct_ZigClangIntegerLiteral = @Type(.Opaque);
     47 pub const struct_ZigClangMacroDefinitionRecord = @Type(.Opaque);
     48 pub const struct_ZigClangMacroExpansion = @Type(.Opaque);
     49 pub const struct_ZigClangMacroQualifiedType = @Type(.Opaque);
     50 pub const struct_ZigClangMemberExpr = @Type(.Opaque);
     51 pub const struct_ZigClangNamedDecl = @Type(.Opaque);
     52 pub const struct_ZigClangNone = @Type(.Opaque);
     53 pub const struct_ZigClangOpaqueValueExpr = @Type(.Opaque);
     54 pub const struct_ZigClangPCHContainerOperations = @Type(.Opaque);
     55 pub const struct_ZigClangParenExpr = @Type(.Opaque);
     56 pub const struct_ZigClangParenType = @Type(.Opaque);
     57 pub const struct_ZigClangParmVarDecl = @Type(.Opaque);
     58 pub const struct_ZigClangPointerType = @Type(.Opaque);
     59 pub const struct_ZigClangPreprocessedEntity = @Type(.Opaque);
     60 pub const struct_ZigClangRecordDecl = @Type(.Opaque);
     61 pub const struct_ZigClangRecordType = @Type(.Opaque);
     62 pub const struct_ZigClangReturnStmt = @Type(.Opaque);
     63 pub const struct_ZigClangSkipFunctionBodiesScope = @Type(.Opaque);
     64 pub const struct_ZigClangSourceManager = @Type(.Opaque);
     65 pub const struct_ZigClangSourceRange = @Type(.Opaque);
     66 pub const ZigClangStmt = @Type(.Opaque);
     67 pub const struct_ZigClangStringLiteral = @Type(.Opaque);
     68 pub const struct_ZigClangStringRef = @Type(.Opaque);
     69 pub const struct_ZigClangSwitchStmt = @Type(.Opaque);
     70 pub const struct_ZigClangTagDecl = @Type(.Opaque);
     71 pub const struct_ZigClangType = @Type(.Opaque);
     72 pub const struct_ZigClangTypedefNameDecl = @Type(.Opaque);
     73 pub const struct_ZigClangTypedefType = @Type(.Opaque);
     74 pub const struct_ZigClangUnaryExprOrTypeTraitExpr = @Type(.Opaque);
     75 pub const struct_ZigClangUnaryOperator = @Type(.Opaque);
     76 pub const struct_ZigClangValueDecl = @Type(.Opaque);
     77 pub const struct_ZigClangVarDecl = @Type(.Opaque);
     78 pub const struct_ZigClangWhileStmt = @Type(.Opaque);
     79 pub const struct_ZigClangFunctionType = @Type(.Opaque);
     80 pub const struct_ZigClangPredefinedExpr = @Type(.Opaque);
     81 pub const struct_ZigClangInitListExpr = @Type(.Opaque);
     82 pub const ZigClangPreprocessingRecord = @Type(.Opaque);
     83 pub const ZigClangFloatingLiteral = @Type(.Opaque);
     84 pub const ZigClangConstantExpr = @Type(.Opaque);
     85 pub const ZigClangCharacterLiteral = @Type(.Opaque);
     86 pub const ZigClangStmtExpr = @Type(.Opaque);
     87 
     88 pub const ZigClangBO = extern enum {
     89     PtrMemD,
     90     PtrMemI,
     91     Mul,
     92     Div,
     93     Rem,
     94     Add,
     95     Sub,
     96     Shl,
     97     Shr,
     98     Cmp,
     99     LT,
    100     GT,
    101     LE,
    102     GE,
    103     EQ,
    104     NE,
    105     And,
    106     Xor,
    107     Or,
    108     LAnd,
    109     LOr,
    110     Assign,
    111     MulAssign,
    112     DivAssign,
    113     RemAssign,
    114     AddAssign,
    115     SubAssign,
    116     ShlAssign,
    117     ShrAssign,
    118     AndAssign,
    119     XorAssign,
    120     OrAssign,
    121     Comma,
    122 };
    123 
    124 pub const ZigClangUO = extern enum {
    125     PostInc,
    126     PostDec,
    127     PreInc,
    128     PreDec,
    129     AddrOf,
    130     Deref,
    131     Plus,
    132     Minus,
    133     Not,
    134     LNot,
    135     Real,
    136     Imag,
    137     Extension,
    138     Coawait,
    139 };
    140 
    141 pub const ZigClangTypeClass = extern enum {
    142     Adjusted,
    143     Decayed,
    144     ConstantArray,
    145     DependentSizedArray,
    146     IncompleteArray,
    147     VariableArray,
    148     Atomic,
    149     Attributed,
    150     BlockPointer,
    151     Builtin,
    152     Complex,
    153     Decltype,
    154     Auto,
    155     DeducedTemplateSpecialization,
    156     DependentAddressSpace,
    157     DependentName,
    158     DependentSizedExtVector,
    159     DependentTemplateSpecialization,
    160     DependentVector,
    161     Elaborated,
    162     FunctionNoProto,
    163     FunctionProto,
    164     InjectedClassName,
    165     MacroQualified,
    166     MemberPointer,
    167     ObjCObjectPointer,
    168     ObjCObject,
    169     ObjCInterface,
    170     ObjCTypeParam,
    171     PackExpansion,
    172     Paren,
    173     Pipe,
    174     Pointer,
    175     LValueReference,
    176     RValueReference,
    177     SubstTemplateTypeParmPack,
    178     SubstTemplateTypeParm,
    179     Enum,
    180     Record,
    181     TemplateSpecialization,
    182     TemplateTypeParm,
    183     TypeOfExpr,
    184     TypeOf,
    185     Typedef,
    186     UnaryTransform,
    187     UnresolvedUsing,
    188     Vector,
    189     ExtVector,
    190 };
    191 
    192 const ZigClangStmtClass = extern enum {
    193     NoStmtClass,
    194     GCCAsmStmtClass,
    195     MSAsmStmtClass,
    196     BreakStmtClass,
    197     CXXCatchStmtClass,
    198     CXXForRangeStmtClass,
    199     CXXTryStmtClass,
    200     CapturedStmtClass,
    201     CompoundStmtClass,
    202     ContinueStmtClass,
    203     CoreturnStmtClass,
    204     CoroutineBodyStmtClass,
    205     DeclStmtClass,
    206     DoStmtClass,
    207     ForStmtClass,
    208     GotoStmtClass,
    209     IfStmtClass,
    210     IndirectGotoStmtClass,
    211     MSDependentExistsStmtClass,
    212     NullStmtClass,
    213     OMPAtomicDirectiveClass,
    214     OMPBarrierDirectiveClass,
    215     OMPCancelDirectiveClass,
    216     OMPCancellationPointDirectiveClass,
    217     OMPCriticalDirectiveClass,
    218     OMPFlushDirectiveClass,
    219     OMPDistributeDirectiveClass,
    220     OMPDistributeParallelForDirectiveClass,
    221     OMPDistributeParallelForSimdDirectiveClass,
    222     OMPDistributeSimdDirectiveClass,
    223     OMPForDirectiveClass,
    224     OMPForSimdDirectiveClass,
    225     OMPMasterTaskLoopDirectiveClass,
    226     OMPMasterTaskLoopSimdDirectiveClass,
    227     OMPParallelForDirectiveClass,
    228     OMPParallelForSimdDirectiveClass,
    229     OMPParallelMasterTaskLoopDirectiveClass,
    230     OMPParallelMasterTaskLoopSimdDirectiveClass,
    231     OMPSimdDirectiveClass,
    232     OMPTargetParallelForSimdDirectiveClass,
    233     OMPTargetSimdDirectiveClass,
    234     OMPTargetTeamsDistributeDirectiveClass,
    235     OMPTargetTeamsDistributeParallelForDirectiveClass,
    236     OMPTargetTeamsDistributeParallelForSimdDirectiveClass,
    237     OMPTargetTeamsDistributeSimdDirectiveClass,
    238     OMPTaskLoopDirectiveClass,
    239     OMPTaskLoopSimdDirectiveClass,
    240     OMPTeamsDistributeDirectiveClass,
    241     OMPTeamsDistributeParallelForDirectiveClass,
    242     OMPTeamsDistributeParallelForSimdDirectiveClass,
    243     OMPTeamsDistributeSimdDirectiveClass,
    244     OMPMasterDirectiveClass,
    245     OMPOrderedDirectiveClass,
    246     OMPParallelDirectiveClass,
    247     OMPParallelMasterDirectiveClass,
    248     OMPParallelSectionsDirectiveClass,
    249     OMPSectionDirectiveClass,
    250     OMPSectionsDirectiveClass,
    251     OMPSingleDirectiveClass,
    252     OMPTargetDataDirectiveClass,
    253     OMPTargetDirectiveClass,
    254     OMPTargetEnterDataDirectiveClass,
    255     OMPTargetExitDataDirectiveClass,
    256     OMPTargetParallelDirectiveClass,
    257     OMPTargetParallelForDirectiveClass,
    258     OMPTargetTeamsDirectiveClass,
    259     OMPTargetUpdateDirectiveClass,
    260     OMPTaskDirectiveClass,
    261     OMPTaskgroupDirectiveClass,
    262     OMPTaskwaitDirectiveClass,
    263     OMPTaskyieldDirectiveClass,
    264     OMPTeamsDirectiveClass,
    265     ObjCAtCatchStmtClass,
    266     ObjCAtFinallyStmtClass,
    267     ObjCAtSynchronizedStmtClass,
    268     ObjCAtThrowStmtClass,
    269     ObjCAtTryStmtClass,
    270     ObjCAutoreleasePoolStmtClass,
    271     ObjCForCollectionStmtClass,
    272     ReturnStmtClass,
    273     SEHExceptStmtClass,
    274     SEHFinallyStmtClass,
    275     SEHLeaveStmtClass,
    276     SEHTryStmtClass,
    277     CaseStmtClass,
    278     DefaultStmtClass,
    279     SwitchStmtClass,
    280     AttributedStmtClass,
    281     BinaryConditionalOperatorClass,
    282     ConditionalOperatorClass,
    283     AddrLabelExprClass,
    284     ArrayInitIndexExprClass,
    285     ArrayInitLoopExprClass,
    286     ArraySubscriptExprClass,
    287     ArrayTypeTraitExprClass,
    288     AsTypeExprClass,
    289     AtomicExprClass,
    290     BinaryOperatorClass,
    291     CompoundAssignOperatorClass,
    292     BlockExprClass,
    293     CXXBindTemporaryExprClass,
    294     CXXBoolLiteralExprClass,
    295     CXXConstructExprClass,
    296     CXXTemporaryObjectExprClass,
    297     CXXDefaultArgExprClass,
    298     CXXDefaultInitExprClass,
    299     CXXDeleteExprClass,
    300     CXXDependentScopeMemberExprClass,
    301     CXXFoldExprClass,
    302     CXXInheritedCtorInitExprClass,
    303     CXXNewExprClass,
    304     CXXNoexceptExprClass,
    305     CXXNullPtrLiteralExprClass,
    306     CXXPseudoDestructorExprClass,
    307     CXXRewrittenBinaryOperatorClass,
    308     CXXScalarValueInitExprClass,
    309     CXXStdInitializerListExprClass,
    310     CXXThisExprClass,
    311     CXXThrowExprClass,
    312     CXXTypeidExprClass,
    313     CXXUnresolvedConstructExprClass,
    314     CXXUuidofExprClass,
    315     CallExprClass,
    316     CUDAKernelCallExprClass,
    317     CXXMemberCallExprClass,
    318     CXXOperatorCallExprClass,
    319     UserDefinedLiteralClass,
    320     BuiltinBitCastExprClass,
    321     CStyleCastExprClass,
    322     CXXFunctionalCastExprClass,
    323     CXXConstCastExprClass,
    324     CXXDynamicCastExprClass,
    325     CXXReinterpretCastExprClass,
    326     CXXStaticCastExprClass,
    327     ObjCBridgedCastExprClass,
    328     ImplicitCastExprClass,
    329     CharacterLiteralClass,
    330     ChooseExprClass,
    331     CompoundLiteralExprClass,
    332     ConceptSpecializationExprClass,
    333     ConvertVectorExprClass,
    334     CoawaitExprClass,
    335     CoyieldExprClass,
    336     DeclRefExprClass,
    337     DependentCoawaitExprClass,
    338     DependentScopeDeclRefExprClass,
    339     DesignatedInitExprClass,
    340     DesignatedInitUpdateExprClass,
    341     ExpressionTraitExprClass,
    342     ExtVectorElementExprClass,
    343     FixedPointLiteralClass,
    344     FloatingLiteralClass,
    345     ConstantExprClass,
    346     ExprWithCleanupsClass,
    347     FunctionParmPackExprClass,
    348     GNUNullExprClass,
    349     GenericSelectionExprClass,
    350     ImaginaryLiteralClass,
    351     ImplicitValueInitExprClass,
    352     InitListExprClass,
    353     IntegerLiteralClass,
    354     LambdaExprClass,
    355     MSPropertyRefExprClass,
    356     MSPropertySubscriptExprClass,
    357     MaterializeTemporaryExprClass,
    358     MemberExprClass,
    359     NoInitExprClass,
    360     OMPArraySectionExprClass,
    361     ObjCArrayLiteralClass,
    362     ObjCAvailabilityCheckExprClass,
    363     ObjCBoolLiteralExprClass,
    364     ObjCBoxedExprClass,
    365     ObjCDictionaryLiteralClass,
    366     ObjCEncodeExprClass,
    367     ObjCIndirectCopyRestoreExprClass,
    368     ObjCIsaExprClass,
    369     ObjCIvarRefExprClass,
    370     ObjCMessageExprClass,
    371     ObjCPropertyRefExprClass,
    372     ObjCProtocolExprClass,
    373     ObjCSelectorExprClass,
    374     ObjCStringLiteralClass,
    375     ObjCSubscriptRefExprClass,
    376     OffsetOfExprClass,
    377     OpaqueValueExprClass,
    378     UnresolvedLookupExprClass,
    379     UnresolvedMemberExprClass,
    380     PackExpansionExprClass,
    381     ParenExprClass,
    382     ParenListExprClass,
    383     PredefinedExprClass,
    384     PseudoObjectExprClass,
    385     RequiresExprClass,
    386     ShuffleVectorExprClass,
    387     SizeOfPackExprClass,
    388     SourceLocExprClass,
    389     StmtExprClass,
    390     StringLiteralClass,
    391     SubstNonTypeTemplateParmExprClass,
    392     SubstNonTypeTemplateParmPackExprClass,
    393     TypeTraitExprClass,
    394     TypoExprClass,
    395     UnaryExprOrTypeTraitExprClass,
    396     UnaryOperatorClass,
    397     VAArgExprClass,
    398     LabelStmtClass,
    399     WhileStmtClass,
    400 };
    401 
    402 pub const ZigClangCK = extern enum {
    403     Dependent,
    404     BitCast,
    405     LValueBitCast,
    406     LValueToRValueBitCast,
    407     LValueToRValue,
    408     NoOp,
    409     BaseToDerived,
    410     DerivedToBase,
    411     UncheckedDerivedToBase,
    412     Dynamic,
    413     ToUnion,
    414     ArrayToPointerDecay,
    415     FunctionToPointerDecay,
    416     NullToPointer,
    417     NullToMemberPointer,
    418     BaseToDerivedMemberPointer,
    419     DerivedToBaseMemberPointer,
    420     MemberPointerToBoolean,
    421     ReinterpretMemberPointer,
    422     UserDefinedConversion,
    423     ConstructorConversion,
    424     IntegralToPointer,
    425     PointerToIntegral,
    426     PointerToBoolean,
    427     ToVoid,
    428     VectorSplat,
    429     IntegralCast,
    430     IntegralToBoolean,
    431     IntegralToFloating,
    432     FixedPointCast,
    433     FixedPointToIntegral,
    434     IntegralToFixedPoint,
    435     FixedPointToBoolean,
    436     FloatingToIntegral,
    437     FloatingToBoolean,
    438     BooleanToSignedIntegral,
    439     FloatingCast,
    440     CPointerToObjCPointerCast,
    441     BlockPointerToObjCPointerCast,
    442     AnyPointerToBlockPointerCast,
    443     ObjCObjectLValueCast,
    444     FloatingRealToComplex,
    445     FloatingComplexToReal,
    446     FloatingComplexToBoolean,
    447     FloatingComplexCast,
    448     FloatingComplexToIntegralComplex,
    449     IntegralRealToComplex,
    450     IntegralComplexToReal,
    451     IntegralComplexToBoolean,
    452     IntegralComplexCast,
    453     IntegralComplexToFloatingComplex,
    454     ARCProduceObject,
    455     ARCConsumeObject,
    456     ARCReclaimReturnedObject,
    457     ARCExtendBlockObject,
    458     AtomicToNonAtomic,
    459     NonAtomicToAtomic,
    460     CopyAndAutoreleaseBlockObject,
    461     BuiltinFnToFnPtr,
    462     ZeroToOCLOpaqueType,
    463     AddressSpaceConversion,
    464     IntToOCLSampler,
    465 };
    466 
    467 pub const ZigClangAPValueKind = extern enum {
    468     None,
    469     Indeterminate,
    470     Int,
    471     Float,
    472     FixedPoint,
    473     ComplexInt,
    474     ComplexFloat,
    475     LValue,
    476     Vector,
    477     Array,
    478     Struct,
    479     Union,
    480     MemberPointer,
    481     AddrLabelDiff,
    482 };
    483 
    484 pub const ZigClangDeclKind = extern enum {
    485     AccessSpec,
    486     Block,
    487     Captured,
    488     ClassScopeFunctionSpecialization,
    489     Empty,
    490     Export,
    491     ExternCContext,
    492     FileScopeAsm,
    493     Friend,
    494     FriendTemplate,
    495     Import,
    496     LifetimeExtendedTemporary,
    497     LinkageSpec,
    498     Label,
    499     Namespace,
    500     NamespaceAlias,
    501     ObjCCompatibleAlias,
    502     ObjCCategory,
    503     ObjCCategoryImpl,
    504     ObjCImplementation,
    505     ObjCInterface,
    506     ObjCProtocol,
    507     ObjCMethod,
    508     ObjCProperty,
    509     BuiltinTemplate,
    510     Concept,
    511     ClassTemplate,
    512     FunctionTemplate,
    513     TypeAliasTemplate,
    514     VarTemplate,
    515     TemplateTemplateParm,
    516     Enum,
    517     Record,
    518     CXXRecord,
    519     ClassTemplateSpecialization,
    520     ClassTemplatePartialSpecialization,
    521     TemplateTypeParm,
    522     ObjCTypeParam,
    523     TypeAlias,
    524     Typedef,
    525     UnresolvedUsingTypename,
    526     Using,
    527     UsingDirective,
    528     UsingPack,
    529     UsingShadow,
    530     ConstructorUsingShadow,
    531     Binding,
    532     Field,
    533     ObjCAtDefsField,
    534     ObjCIvar,
    535     Function,
    536     CXXDeductionGuide,
    537     CXXMethod,
    538     CXXConstructor,
    539     CXXConversion,
    540     CXXDestructor,
    541     MSProperty,
    542     NonTypeTemplateParm,
    543     Var,
    544     Decomposition,
    545     ImplicitParam,
    546     OMPCapturedExpr,
    547     ParmVar,
    548     VarTemplateSpecialization,
    549     VarTemplatePartialSpecialization,
    550     EnumConstant,
    551     IndirectField,
    552     OMPDeclareMapper,
    553     OMPDeclareReduction,
    554     UnresolvedUsingValue,
    555     OMPAllocate,
    556     OMPRequires,
    557     OMPThreadPrivate,
    558     ObjCPropertyImpl,
    559     PragmaComment,
    560     PragmaDetectMismatch,
    561     RequiresExprBody,
    562     StaticAssert,
    563     TranslationUnit,
    564 };
    565 
    566 pub const ZigClangBuiltinTypeKind = extern enum {
    567     OCLImage1dRO,
    568     OCLImage1dArrayRO,
    569     OCLImage1dBufferRO,
    570     OCLImage2dRO,
    571     OCLImage2dArrayRO,
    572     OCLImage2dDepthRO,
    573     OCLImage2dArrayDepthRO,
    574     OCLImage2dMSAARO,
    575     OCLImage2dArrayMSAARO,
    576     OCLImage2dMSAADepthRO,
    577     OCLImage2dArrayMSAADepthRO,
    578     OCLImage3dRO,
    579     OCLImage1dWO,
    580     OCLImage1dArrayWO,
    581     OCLImage1dBufferWO,
    582     OCLImage2dWO,
    583     OCLImage2dArrayWO,
    584     OCLImage2dDepthWO,
    585     OCLImage2dArrayDepthWO,
    586     OCLImage2dMSAAWO,
    587     OCLImage2dArrayMSAAWO,
    588     OCLImage2dMSAADepthWO,
    589     OCLImage2dArrayMSAADepthWO,
    590     OCLImage3dWO,
    591     OCLImage1dRW,
    592     OCLImage1dArrayRW,
    593     OCLImage1dBufferRW,
    594     OCLImage2dRW,
    595     OCLImage2dArrayRW,
    596     OCLImage2dDepthRW,
    597     OCLImage2dArrayDepthRW,
    598     OCLImage2dMSAARW,
    599     OCLImage2dArrayMSAARW,
    600     OCLImage2dMSAADepthRW,
    601     OCLImage2dArrayMSAADepthRW,
    602     OCLImage3dRW,
    603     OCLIntelSubgroupAVCMcePayload,
    604     OCLIntelSubgroupAVCImePayload,
    605     OCLIntelSubgroupAVCRefPayload,
    606     OCLIntelSubgroupAVCSicPayload,
    607     OCLIntelSubgroupAVCMceResult,
    608     OCLIntelSubgroupAVCImeResult,
    609     OCLIntelSubgroupAVCRefResult,
    610     OCLIntelSubgroupAVCSicResult,
    611     OCLIntelSubgroupAVCImeResultSingleRefStreamout,
    612     OCLIntelSubgroupAVCImeResultDualRefStreamout,
    613     OCLIntelSubgroupAVCImeSingleRefStreamin,
    614     OCLIntelSubgroupAVCImeDualRefStreamin,
    615     SveInt8,
    616     SveInt16,
    617     SveInt32,
    618     SveInt64,
    619     SveUint8,
    620     SveUint16,
    621     SveUint32,
    622     SveUint64,
    623     SveFloat16,
    624     SveFloat32,
    625     SveFloat64,
    626     SveBool,
    627     Void,
    628     Bool,
    629     Char_U,
    630     UChar,
    631     WChar_U,
    632     Char8,
    633     Char16,
    634     Char32,
    635     UShort,
    636     UInt,
    637     ULong,
    638     ULongLong,
    639     UInt128,
    640     Char_S,
    641     SChar,
    642     WChar_S,
    643     Short,
    644     Int,
    645     Long,
    646     LongLong,
    647     Int128,
    648     ShortAccum,
    649     Accum,
    650     LongAccum,
    651     UShortAccum,
    652     UAccum,
    653     ULongAccum,
    654     ShortFract,
    655     Fract,
    656     LongFract,
    657     UShortFract,
    658     UFract,
    659     ULongFract,
    660     SatShortAccum,
    661     SatAccum,
    662     SatLongAccum,
    663     SatUShortAccum,
    664     SatUAccum,
    665     SatULongAccum,
    666     SatShortFract,
    667     SatFract,
    668     SatLongFract,
    669     SatUShortFract,
    670     SatUFract,
    671     SatULongFract,
    672     Half,
    673     Float,
    674     Double,
    675     LongDouble,
    676     Float16,
    677     Float128,
    678     NullPtr,
    679     ObjCId,
    680     ObjCClass,
    681     ObjCSel,
    682     OCLSampler,
    683     OCLEvent,
    684     OCLClkEvent,
    685     OCLQueue,
    686     OCLReserveID,
    687     Dependent,
    688     Overload,
    689     BoundMember,
    690     PseudoObject,
    691     UnknownAny,
    692     BuiltinFn,
    693     ARCUnbridgedCast,
    694     OMPArraySection,
    695 };
    696 
    697 pub const ZigClangCallingConv = extern enum {
    698     C,
    699     X86StdCall,
    700     X86FastCall,
    701     X86ThisCall,
    702     X86VectorCall,
    703     X86Pascal,
    704     Win64,
    705     X86_64SysV,
    706     X86RegCall,
    707     AAPCS,
    708     AAPCS_VFP,
    709     IntelOclBicc,
    710     SpirFunction,
    711     OpenCLKernel,
    712     Swift,
    713     PreserveMost,
    714     PreserveAll,
    715     AArch64VectorCall,
    716 };
    717 
    718 pub const ZigClangStorageClass = extern enum {
    719     None,
    720     Extern,
    721     Static,
    722     PrivateExtern,
    723     Auto,
    724     Register,
    725 };
    726 
    727 pub const ZigClangAPFloat_roundingMode = extern enum {
    728     NearestTiesToEven,
    729     TowardPositive,
    730     TowardNegative,
    731     TowardZero,
    732     NearestTiesToAway,
    733 };
    734 
    735 pub const ZigClangStringLiteral_StringKind = extern enum {
    736     Ascii,
    737     Wide,
    738     UTF8,
    739     UTF16,
    740     UTF32,
    741 };
    742 
    743 pub const ZigClangCharacterLiteral_CharacterKind = extern enum {
    744     Ascii,
    745     Wide,
    746     UTF8,
    747     UTF16,
    748     UTF32,
    749 };
    750 
    751 pub const ZigClangRecordDecl_field_iterator = extern struct {
    752     opaque: *c_void,
    753 };
    754 
    755 pub const ZigClangEnumDecl_enumerator_iterator = extern struct {
    756     opaque: *c_void,
    757 };
    758 
    759 pub const ZigClangPreprocessingRecord_iterator = extern struct {
    760     I: c_int,
    761     Self: *ZigClangPreprocessingRecord,
    762 };
    763 
    764 pub const ZigClangPreprocessedEntity_EntityKind = extern enum {
    765     InvalidKind,
    766     MacroExpansionKind,
    767     MacroDefinitionKind,
    768     InclusionDirectiveKind,
    769 };
    770 
    771 pub const ZigClangExpr_ConstExprUsage = extern enum {
    772     EvaluateForCodeGen,
    773     EvaluateForMangling,
    774 };
    775 
    776 pub extern fn ZigClangSourceManager_getSpellingLoc(self: ?*const struct_ZigClangSourceManager, Loc: struct_ZigClangSourceLocation) struct_ZigClangSourceLocation;
    777 pub extern fn ZigClangSourceManager_getFilename(self: *const struct_ZigClangSourceManager, SpellingLoc: struct_ZigClangSourceLocation) ?[*:0]const u8;
    778 pub extern fn ZigClangSourceManager_getSpellingLineNumber(self: ?*const struct_ZigClangSourceManager, Loc: struct_ZigClangSourceLocation) c_uint;
    779 pub extern fn ZigClangSourceManager_getSpellingColumnNumber(self: ?*const struct_ZigClangSourceManager, Loc: struct_ZigClangSourceLocation) c_uint;
    780 pub extern fn ZigClangSourceManager_getCharacterData(self: ?*const struct_ZigClangSourceManager, SL: struct_ZigClangSourceLocation) [*:0]const u8;
    781 pub extern fn ZigClangASTContext_getPointerType(self: ?*const struct_ZigClangASTContext, T: struct_ZigClangQualType) struct_ZigClangQualType;
    782 pub extern fn ZigClangASTUnit_getASTContext(self: ?*struct_ZigClangASTUnit) ?*struct_ZigClangASTContext;
    783 pub extern fn ZigClangASTUnit_getSourceManager(self: *struct_ZigClangASTUnit) *struct_ZigClangSourceManager;
    784 pub extern fn ZigClangASTUnit_visitLocalTopLevelDecls(self: *struct_ZigClangASTUnit, context: ?*c_void, Fn: ?fn (?*c_void, *const struct_ZigClangDecl) callconv(.C) bool) bool;
    785 pub extern fn ZigClangRecordType_getDecl(record_ty: ?*const struct_ZigClangRecordType) *const struct_ZigClangRecordDecl;
    786 pub extern fn ZigClangTagDecl_isThisDeclarationADefinition(self: *const ZigClangTagDecl) bool;
    787 pub extern fn ZigClangEnumType_getDecl(record_ty: ?*const struct_ZigClangEnumType) *const struct_ZigClangEnumDecl;
    788 pub extern fn ZigClangRecordDecl_getCanonicalDecl(record_decl: ?*const struct_ZigClangRecordDecl) ?*const struct_ZigClangTagDecl;
    789 pub extern fn ZigClangFieldDecl_getCanonicalDecl(field_decl: ?*const struct_ZigClangFieldDecl) ?*const struct_ZigClangFieldDecl;
    790 pub extern fn ZigClangFieldDecl_getAlignedAttribute(field_decl: ?*const struct_ZigClangFieldDecl, *const ZigClangASTContext) c_uint;
    791 pub extern fn ZigClangEnumDecl_getCanonicalDecl(self: ?*const struct_ZigClangEnumDecl) ?*const struct_ZigClangTagDecl;
    792 pub extern fn ZigClangTypedefNameDecl_getCanonicalDecl(self: ?*const struct_ZigClangTypedefNameDecl) ?*const struct_ZigClangTypedefNameDecl;
    793 pub extern fn ZigClangFunctionDecl_getCanonicalDecl(self: ?*const struct_ZigClangFunctionDecl) ?*const struct_ZigClangFunctionDecl;
    794 pub extern fn ZigClangParmVarDecl_getOriginalType(self: ?*const struct_ZigClangParmVarDecl) struct_ZigClangQualType;
    795 pub extern fn ZigClangVarDecl_getCanonicalDecl(self: ?*const struct_ZigClangVarDecl) ?*const struct_ZigClangVarDecl;
    796 pub extern fn ZigClangVarDecl_getSectionAttribute(self: *const ZigClangVarDecl, len: *usize) ?[*]const u8;
    797 pub extern fn ZigClangFunctionDecl_getAlignedAttribute(self: *const ZigClangFunctionDecl, *const ZigClangASTContext) c_uint;
    798 pub extern fn ZigClangVarDecl_getAlignedAttribute(self: *const ZigClangVarDecl, *const ZigClangASTContext) c_uint;
    799 pub extern fn ZigClangRecordDecl_getPackedAttribute(self: ?*const struct_ZigClangRecordDecl) bool;
    800 pub extern fn ZigClangRecordDecl_getDefinition(self: ?*const struct_ZigClangRecordDecl) ?*const struct_ZigClangRecordDecl;
    801 pub extern fn ZigClangEnumDecl_getDefinition(self: ?*const struct_ZigClangEnumDecl) ?*const struct_ZigClangEnumDecl;
    802 pub extern fn ZigClangRecordDecl_getLocation(self: ?*const struct_ZigClangRecordDecl) struct_ZigClangSourceLocation;
    803 pub extern fn ZigClangEnumDecl_getLocation(self: ?*const struct_ZigClangEnumDecl) struct_ZigClangSourceLocation;
    804 pub extern fn ZigClangTypedefNameDecl_getLocation(self: ?*const struct_ZigClangTypedefNameDecl) struct_ZigClangSourceLocation;
    805 pub extern fn ZigClangDecl_getLocation(self: *const ZigClangDecl) ZigClangSourceLocation;
    806 pub extern fn ZigClangRecordDecl_isUnion(record_decl: ?*const struct_ZigClangRecordDecl) bool;
    807 pub extern fn ZigClangRecordDecl_isStruct(record_decl: ?*const struct_ZigClangRecordDecl) bool;
    808 pub extern fn ZigClangRecordDecl_isAnonymousStructOrUnion(record_decl: ?*const struct_ZigClangRecordDecl) bool;
    809 pub extern fn ZigClangRecordDecl_field_begin(*const struct_ZigClangRecordDecl) ZigClangRecordDecl_field_iterator;
    810 pub extern fn ZigClangRecordDecl_field_end(*const struct_ZigClangRecordDecl) ZigClangRecordDecl_field_iterator;
    811 pub extern fn ZigClangRecordDecl_field_iterator_next(ZigClangRecordDecl_field_iterator) ZigClangRecordDecl_field_iterator;
    812 pub extern fn ZigClangRecordDecl_field_iterator_deref(ZigClangRecordDecl_field_iterator) *const struct_ZigClangFieldDecl;
    813 pub extern fn ZigClangRecordDecl_field_iterator_neq(ZigClangRecordDecl_field_iterator, ZigClangRecordDecl_field_iterator) bool;
    814 pub extern fn ZigClangEnumDecl_getIntegerType(self: ?*const struct_ZigClangEnumDecl) struct_ZigClangQualType;
    815 pub extern fn ZigClangEnumDecl_enumerator_begin(*const ZigClangEnumDecl) ZigClangEnumDecl_enumerator_iterator;
    816 pub extern fn ZigClangEnumDecl_enumerator_end(*const ZigClangEnumDecl) ZigClangEnumDecl_enumerator_iterator;
    817 pub extern fn ZigClangEnumDecl_enumerator_iterator_next(ZigClangEnumDecl_enumerator_iterator) ZigClangEnumDecl_enumerator_iterator;
    818 pub extern fn ZigClangEnumDecl_enumerator_iterator_deref(ZigClangEnumDecl_enumerator_iterator) *const ZigClangEnumConstantDecl;
    819 pub extern fn ZigClangEnumDecl_enumerator_iterator_neq(ZigClangEnumDecl_enumerator_iterator, ZigClangEnumDecl_enumerator_iterator) bool;
    820 pub extern fn ZigClangDecl_castToNamedDecl(decl: *const struct_ZigClangDecl) ?*const ZigClangNamedDecl;
    821 pub extern fn ZigClangNamedDecl_getName_bytes_begin(decl: ?*const struct_ZigClangNamedDecl) [*:0]const u8;
    822 pub extern fn ZigClangSourceLocation_eq(a: struct_ZigClangSourceLocation, b: struct_ZigClangSourceLocation) bool;
    823 pub extern fn ZigClangTypedefType_getDecl(self: ?*const struct_ZigClangTypedefType) *const struct_ZigClangTypedefNameDecl;
    824 pub extern fn ZigClangTypedefNameDecl_getUnderlyingType(self: ?*const struct_ZigClangTypedefNameDecl) struct_ZigClangQualType;
    825 pub extern fn ZigClangQualType_getCanonicalType(self: struct_ZigClangQualType) struct_ZigClangQualType;
    826 pub extern fn ZigClangQualType_getTypeClass(self: struct_ZigClangQualType) ZigClangTypeClass;
    827 pub extern fn ZigClangQualType_getTypePtr(self: struct_ZigClangQualType) *const struct_ZigClangType;
    828 pub extern fn ZigClangQualType_addConst(self: *struct_ZigClangQualType) void;
    829 pub extern fn ZigClangQualType_eq(self: struct_ZigClangQualType, arg1: struct_ZigClangQualType) bool;
    830 pub extern fn ZigClangQualType_isConstQualified(self: struct_ZigClangQualType) bool;
    831 pub extern fn ZigClangQualType_isVolatileQualified(self: struct_ZigClangQualType) bool;
    832 pub extern fn ZigClangQualType_isRestrictQualified(self: struct_ZigClangQualType) bool;
    833 pub extern fn ZigClangType_getTypeClass(self: ?*const struct_ZigClangType) ZigClangTypeClass;
    834 pub extern fn ZigClangType_getPointeeType(self: ?*const struct_ZigClangType) struct_ZigClangQualType;
    835 pub extern fn ZigClangType_isVoidType(self: ?*const struct_ZigClangType) bool;
    836 pub extern fn ZigClangType_isConstantArrayType(self: ?*const struct_ZigClangType) bool;
    837 pub extern fn ZigClangType_isRecordType(self: ?*const struct_ZigClangType) bool;
    838 pub extern fn ZigClangType_isIncompleteOrZeroLengthArrayType(self: ?*const struct_ZigClangType, *const ZigClangASTContext) bool;
    839 pub extern fn ZigClangType_isArrayType(self: ?*const struct_ZigClangType) bool;
    840 pub extern fn ZigClangType_isBooleanType(self: ?*const struct_ZigClangType) bool;
    841 pub extern fn ZigClangType_getTypeClassName(self: *const struct_ZigClangType) [*:0]const u8;
    842 pub extern fn ZigClangType_getAsArrayTypeUnsafe(self: *const ZigClangType) *const ZigClangArrayType;
    843 pub extern fn ZigClangType_getAsRecordType(self: *const ZigClangType) ?*const ZigClangRecordType;
    844 pub extern fn ZigClangType_getAsUnionType(self: *const ZigClangType) ?*const ZigClangRecordType;
    845 pub extern fn ZigClangStmt_getBeginLoc(self: *const ZigClangStmt) struct_ZigClangSourceLocation;
    846 pub extern fn ZigClangStmt_getStmtClass(self: ?*const ZigClangStmt) ZigClangStmtClass;
    847 pub extern fn ZigClangStmt_classof_Expr(self: ?*const ZigClangStmt) bool;
    848 pub extern fn ZigClangExpr_getStmtClass(self: *const struct_ZigClangExpr) ZigClangStmtClass;
    849 pub extern fn ZigClangExpr_getType(self: *const struct_ZigClangExpr) struct_ZigClangQualType;
    850 pub extern fn ZigClangExpr_getBeginLoc(self: *const struct_ZigClangExpr) struct_ZigClangSourceLocation;
    851 pub extern fn ZigClangInitListExpr_getInit(self: ?*const struct_ZigClangInitListExpr, i: c_uint) *const ZigClangExpr;
    852 pub extern fn ZigClangInitListExpr_getArrayFiller(self: ?*const struct_ZigClangInitListExpr) *const ZigClangExpr;
    853 pub extern fn ZigClangInitListExpr_getNumInits(self: ?*const struct_ZigClangInitListExpr) c_uint;
    854 pub extern fn ZigClangInitListExpr_getInitializedFieldInUnion(self: ?*const struct_ZigClangInitListExpr) ?*ZigClangFieldDecl;
    855 pub extern fn ZigClangAPValue_getKind(self: ?*const struct_ZigClangAPValue) ZigClangAPValueKind;
    856 pub extern fn ZigClangAPValue_getInt(self: ?*const struct_ZigClangAPValue) *const struct_ZigClangAPSInt;
    857 pub extern fn ZigClangAPValue_getArrayInitializedElts(self: ?*const struct_ZigClangAPValue) c_uint;
    858 pub extern fn ZigClangAPValue_getArraySize(self: ?*const struct_ZigClangAPValue) c_uint;
    859 pub extern fn ZigClangAPValue_getLValueBase(self: ?*const struct_ZigClangAPValue) struct_ZigClangAPValueLValueBase;
    860 pub extern fn ZigClangAPSInt_isSigned(self: *const struct_ZigClangAPSInt) bool;
    861 pub extern fn ZigClangAPSInt_isNegative(self: *const struct_ZigClangAPSInt) bool;
    862 pub extern fn ZigClangAPSInt_negate(self: *const struct_ZigClangAPSInt) *const struct_ZigClangAPSInt;
    863 pub extern fn ZigClangAPSInt_free(self: *const struct_ZigClangAPSInt) void;
    864 pub extern fn ZigClangAPSInt_getRawData(self: *const struct_ZigClangAPSInt) [*:0]const u64;
    865 pub extern fn ZigClangAPSInt_getNumWords(self: *const struct_ZigClangAPSInt) c_uint;
    866 
    867 pub extern fn ZigClangAPInt_getLimitedValue(self: *const struct_ZigClangAPInt, limit: u64) u64;
    868 pub extern fn ZigClangAPValueLValueBase_dyn_cast_Expr(self: struct_ZigClangAPValueLValueBase) ?*const struct_ZigClangExpr;
    869 pub extern fn ZigClangASTUnit_delete(self: ?*struct_ZigClangASTUnit) void;
    870 
    871 pub extern fn ZigClangFunctionDecl_getType(self: *const ZigClangFunctionDecl) struct_ZigClangQualType;
    872 pub extern fn ZigClangFunctionDecl_getLocation(self: *const ZigClangFunctionDecl) struct_ZigClangSourceLocation;
    873 pub extern fn ZigClangFunctionDecl_hasBody(self: *const ZigClangFunctionDecl) bool;
    874 pub extern fn ZigClangFunctionDecl_getStorageClass(self: *const ZigClangFunctionDecl) ZigClangStorageClass;
    875 pub extern fn ZigClangFunctionDecl_getParamDecl(self: *const ZigClangFunctionDecl, i: c_uint) *const struct_ZigClangParmVarDecl;
    876 pub extern fn ZigClangFunctionDecl_getBody(self: *const ZigClangFunctionDecl) *const ZigClangStmt;
    877 pub extern fn ZigClangFunctionDecl_doesDeclarationForceExternallyVisibleDefinition(self: *const ZigClangFunctionDecl) bool;
    878 pub extern fn ZigClangFunctionDecl_isThisDeclarationADefinition(self: *const ZigClangFunctionDecl) bool;
    879 pub extern fn ZigClangFunctionDecl_doesThisDeclarationHaveABody(self: *const ZigClangFunctionDecl) bool;
    880 pub extern fn ZigClangFunctionDecl_isInlineSpecified(self: *const ZigClangFunctionDecl) bool;
    881 pub extern fn ZigClangFunctionDecl_isDefined(self: *const ZigClangFunctionDecl) bool;
    882 pub extern fn ZigClangFunctionDecl_getDefinition(self: *const ZigClangFunctionDecl) ?*const struct_ZigClangFunctionDecl;
    883 pub extern fn ZigClangFunctionDecl_getSectionAttribute(self: *const ZigClangFunctionDecl, len: *usize) ?[*]const u8;
    884 
    885 pub extern fn ZigClangBuiltinType_getKind(self: *const struct_ZigClangBuiltinType) ZigClangBuiltinTypeKind;
    886 
    887 pub extern fn ZigClangFunctionType_getNoReturnAttr(self: *const ZigClangFunctionType) bool;
    888 pub extern fn ZigClangFunctionType_getCallConv(self: *const ZigClangFunctionType) ZigClangCallingConv;
    889 pub extern fn ZigClangFunctionType_getReturnType(self: *const ZigClangFunctionType) ZigClangQualType;
    890 
    891 pub extern fn ZigClangFunctionProtoType_isVariadic(self: *const struct_ZigClangFunctionProtoType) bool;
    892 pub extern fn ZigClangFunctionProtoType_getNumParams(self: *const struct_ZigClangFunctionProtoType) c_uint;
    893 pub extern fn ZigClangFunctionProtoType_getParamType(self: *const struct_ZigClangFunctionProtoType, i: c_uint) ZigClangQualType;
    894 pub extern fn ZigClangFunctionProtoType_getReturnType(self: *const ZigClangFunctionProtoType) ZigClangQualType;
    895 
    896 pub const ZigClangSourceLocation = struct_ZigClangSourceLocation;
    897 pub const ZigClangQualType = struct_ZigClangQualType;
    898 pub const ZigClangConditionalOperator = struct_ZigClangConditionalOperator;
    899 pub const ZigClangBinaryConditionalOperator = struct_ZigClangBinaryConditionalOperator;
    900 pub const ZigClangAbstractConditionalOperator = struct_ZigClangAbstractConditionalOperator;
    901 pub const ZigClangAPValueLValueBase = struct_ZigClangAPValueLValueBase;
    902 pub const ZigClangAPValue = struct_ZigClangAPValue;
    903 pub const ZigClangAPSInt = struct_ZigClangAPSInt;
    904 pub const ZigClangAPFloat = struct_ZigClangAPFloat;
    905 pub const ZigClangASTContext = struct_ZigClangASTContext;
    906 pub const ZigClangASTUnit = struct_ZigClangASTUnit;
    907 pub const ZigClangArraySubscriptExpr = struct_ZigClangArraySubscriptExpr;
    908 pub const ZigClangArrayType = struct_ZigClangArrayType;
    909 pub const ZigClangAttributedType = struct_ZigClangAttributedType;
    910 pub const ZigClangBinaryOperator = struct_ZigClangBinaryOperator;
    911 pub const ZigClangBreakStmt = struct_ZigClangBreakStmt;
    912 pub const ZigClangBuiltinType = struct_ZigClangBuiltinType;
    913 pub const ZigClangCStyleCastExpr = struct_ZigClangCStyleCastExpr;
    914 pub const ZigClangCallExpr = struct_ZigClangCallExpr;
    915 pub const ZigClangCaseStmt = struct_ZigClangCaseStmt;
    916 pub const ZigClangCompoundAssignOperator = struct_ZigClangCompoundAssignOperator;
    917 pub const ZigClangCompoundStmt = struct_ZigClangCompoundStmt;
    918 pub const ZigClangConstantArrayType = struct_ZigClangConstantArrayType;
    919 pub const ZigClangContinueStmt = struct_ZigClangContinueStmt;
    920 pub const ZigClangDecayedType = struct_ZigClangDecayedType;
    921 pub const ZigClangDecl = struct_ZigClangDecl;
    922 pub const ZigClangDeclRefExpr = struct_ZigClangDeclRefExpr;
    923 pub const ZigClangDeclStmt = struct_ZigClangDeclStmt;
    924 pub const ZigClangDefaultStmt = struct_ZigClangDefaultStmt;
    925 pub const ZigClangDiagnosticOptions = struct_ZigClangDiagnosticOptions;
    926 pub const ZigClangDiagnosticsEngine = struct_ZigClangDiagnosticsEngine;
    927 pub const ZigClangDoStmt = struct_ZigClangDoStmt;
    928 pub const ZigClangElaboratedType = struct_ZigClangElaboratedType;
    929 pub const ZigClangEnumConstantDecl = struct_ZigClangEnumConstantDecl;
    930 pub const ZigClangEnumDecl = struct_ZigClangEnumDecl;
    931 pub const ZigClangEnumType = struct_ZigClangEnumType;
    932 pub const ZigClangExpr = struct_ZigClangExpr;
    933 pub const ZigClangFieldDecl = struct_ZigClangFieldDecl;
    934 pub const ZigClangFileID = struct_ZigClangFileID;
    935 pub const ZigClangForStmt = struct_ZigClangForStmt;
    936 pub const ZigClangFullSourceLoc = struct_ZigClangFullSourceLoc;
    937 pub const ZigClangFunctionDecl = struct_ZigClangFunctionDecl;
    938 pub const ZigClangFunctionProtoType = struct_ZigClangFunctionProtoType;
    939 pub const ZigClangIfStmt = struct_ZigClangIfStmt;
    940 pub const ZigClangImplicitCastExpr = struct_ZigClangImplicitCastExpr;
    941 pub const ZigClangIncompleteArrayType = struct_ZigClangIncompleteArrayType;
    942 pub const ZigClangIntegerLiteral = struct_ZigClangIntegerLiteral;
    943 pub const ZigClangMacroDefinitionRecord = struct_ZigClangMacroDefinitionRecord;
    944 pub const ZigClangMacroExpansion = struct_ZigClangMacroExpansion;
    945 pub const ZigClangMacroQualifiedType = struct_ZigClangMacroQualifiedType;
    946 pub const ZigClangMemberExpr = struct_ZigClangMemberExpr;
    947 pub const ZigClangNamedDecl = struct_ZigClangNamedDecl;
    948 pub const ZigClangNone = struct_ZigClangNone;
    949 pub const ZigClangOpaqueValueExpr = struct_ZigClangOpaqueValueExpr;
    950 pub const ZigClangPCHContainerOperations = struct_ZigClangPCHContainerOperations;
    951 pub const ZigClangParenExpr = struct_ZigClangParenExpr;
    952 pub const ZigClangParenType = struct_ZigClangParenType;
    953 pub const ZigClangParmVarDecl = struct_ZigClangParmVarDecl;
    954 pub const ZigClangPointerType = struct_ZigClangPointerType;
    955 pub const ZigClangPreprocessedEntity = struct_ZigClangPreprocessedEntity;
    956 pub const ZigClangRecordDecl = struct_ZigClangRecordDecl;
    957 pub const ZigClangRecordType = struct_ZigClangRecordType;
    958 pub const ZigClangReturnStmt = struct_ZigClangReturnStmt;
    959 pub const ZigClangSkipFunctionBodiesScope = struct_ZigClangSkipFunctionBodiesScope;
    960 pub const ZigClangSourceManager = struct_ZigClangSourceManager;
    961 pub const ZigClangSourceRange = struct_ZigClangSourceRange;
    962 pub const ZigClangStringLiteral = struct_ZigClangStringLiteral;
    963 pub const ZigClangStringRef = struct_ZigClangStringRef;
    964 pub const ZigClangSwitchStmt = struct_ZigClangSwitchStmt;
    965 pub const ZigClangTagDecl = struct_ZigClangTagDecl;
    966 pub const ZigClangType = struct_ZigClangType;
    967 pub const ZigClangTypedefNameDecl = struct_ZigClangTypedefNameDecl;
    968 pub const ZigClangTypedefType = struct_ZigClangTypedefType;
    969 pub const ZigClangUnaryExprOrTypeTraitExpr = struct_ZigClangUnaryExprOrTypeTraitExpr;
    970 pub const ZigClangUnaryOperator = struct_ZigClangUnaryOperator;
    971 pub const ZigClangValueDecl = struct_ZigClangValueDecl;
    972 pub const ZigClangVarDecl = struct_ZigClangVarDecl;
    973 pub const ZigClangWhileStmt = struct_ZigClangWhileStmt;
    974 pub const ZigClangFunctionType = struct_ZigClangFunctionType;
    975 pub const ZigClangPredefinedExpr = struct_ZigClangPredefinedExpr;
    976 pub const ZigClangInitListExpr = struct_ZigClangInitListExpr;
    977 
    978 pub const struct_ZigClangSourceLocation = extern struct {
    979     ID: c_uint,
    980 };
    981 
    982 pub const Stage2ErrorMsg = extern struct {
    983     filename_ptr: ?[*]const u8,
    984     filename_len: usize,
    985     msg_ptr: [*]const u8,
    986     msg_len: usize,
    987     // valid until the ASTUnit is freed
    988     source: ?[*]const u8,
    989     // 0 based
    990     line: c_uint,
    991     // 0 based
    992     column: c_uint,
    993     // byte offset into source
    994     offset: c_uint,
    995 };
    996 
    997 pub const struct_ZigClangQualType = extern struct {
    998     ptr: ?*c_void,
    999 };
   1000 
   1001 pub const struct_ZigClangAPValueLValueBase = extern struct {
   1002     Ptr: ?*c_void,
   1003     CallIndex: c_uint,
   1004     Version: c_uint,
   1005 };
   1006 
   1007 pub extern fn ZigClangErrorMsg_delete(ptr: [*]Stage2ErrorMsg, len: usize) void;
   1008 
   1009 pub extern fn ZigClangLoadFromCommandLine(
   1010     args_begin: [*]?[*]const u8,
   1011     args_end: [*]?[*]const u8,
   1012     errors_ptr: *[*]Stage2ErrorMsg,
   1013     errors_len: *usize,
   1014     resources_path: [*:0]const u8,
   1015 ) ?*ZigClangASTUnit;
   1016 
   1017 pub extern fn ZigClangDecl_getKind(decl: *const ZigClangDecl) ZigClangDeclKind;
   1018 pub extern fn ZigClangDecl_getDeclKindName(decl: *const struct_ZigClangDecl) [*:0]const u8;
   1019 
   1020 pub const ZigClangCompoundStmt_const_body_iterator = [*]const *ZigClangStmt;
   1021 
   1022 pub extern fn ZigClangCompoundStmt_body_begin(self: *const ZigClangCompoundStmt) ZigClangCompoundStmt_const_body_iterator;
   1023 pub extern fn ZigClangCompoundStmt_body_end(self: *const ZigClangCompoundStmt) ZigClangCompoundStmt_const_body_iterator;
   1024 
   1025 pub const ZigClangDeclStmt_const_decl_iterator = [*]const *struct_ZigClangDecl;
   1026 
   1027 pub extern fn ZigClangDeclStmt_decl_begin(self: *const ZigClangDeclStmt) ZigClangDeclStmt_const_decl_iterator;
   1028 pub extern fn ZigClangDeclStmt_decl_end(self: *const ZigClangDeclStmt) ZigClangDeclStmt_const_decl_iterator;
   1029 
   1030 pub extern fn ZigClangVarDecl_getLocation(self: *const struct_ZigClangVarDecl) ZigClangSourceLocation;
   1031 pub extern fn ZigClangVarDecl_hasInit(self: *const struct_ZigClangVarDecl) bool;
   1032 pub extern fn ZigClangVarDecl_getStorageClass(self: *const ZigClangVarDecl) ZigClangStorageClass;
   1033 pub extern fn ZigClangVarDecl_getType(self: ?*const struct_ZigClangVarDecl) struct_ZigClangQualType;
   1034 pub extern fn ZigClangVarDecl_getInit(*const ZigClangVarDecl) ?*const ZigClangExpr;
   1035 pub extern fn ZigClangVarDecl_getTLSKind(self: ?*const struct_ZigClangVarDecl) ZigClangVarDecl_TLSKind;
   1036 pub const ZigClangVarDecl_TLSKind = extern enum {
   1037     None,
   1038     Static,
   1039     Dynamic,
   1040 };
   1041 
   1042 pub extern fn ZigClangImplicitCastExpr_getBeginLoc(*const ZigClangImplicitCastExpr) ZigClangSourceLocation;
   1043 pub extern fn ZigClangImplicitCastExpr_getCastKind(*const ZigClangImplicitCastExpr) ZigClangCK;
   1044 pub extern fn ZigClangImplicitCastExpr_getSubExpr(*const ZigClangImplicitCastExpr) *const ZigClangExpr;
   1045 
   1046 pub extern fn ZigClangArrayType_getElementType(*const ZigClangArrayType) ZigClangQualType;
   1047 pub extern fn ZigClangIncompleteArrayType_getElementType(*const ZigClangIncompleteArrayType) ZigClangQualType;
   1048 
   1049 pub extern fn ZigClangConstantArrayType_getElementType(self: *const struct_ZigClangConstantArrayType) ZigClangQualType;
   1050 pub extern fn ZigClangConstantArrayType_getSize(self: *const struct_ZigClangConstantArrayType) *const struct_ZigClangAPInt;
   1051 pub extern fn ZigClangDeclRefExpr_getDecl(*const ZigClangDeclRefExpr) *const ZigClangValueDecl;
   1052 pub extern fn ZigClangDeclRefExpr_getFoundDecl(*const ZigClangDeclRefExpr) *const ZigClangNamedDecl;
   1053 
   1054 pub extern fn ZigClangParenType_getInnerType(*const ZigClangParenType) ZigClangQualType;
   1055 
   1056 pub extern fn ZigClangElaboratedType_getNamedType(*const ZigClangElaboratedType) ZigClangQualType;
   1057 
   1058 pub extern fn ZigClangAttributedType_getEquivalentType(*const ZigClangAttributedType) ZigClangQualType;
   1059 
   1060 pub extern fn ZigClangMacroQualifiedType_getModifiedType(*const ZigClangMacroQualifiedType) ZigClangQualType;
   1061 
   1062 pub extern fn ZigClangCStyleCastExpr_getBeginLoc(*const ZigClangCStyleCastExpr) ZigClangSourceLocation;
   1063 pub extern fn ZigClangCStyleCastExpr_getSubExpr(*const ZigClangCStyleCastExpr) *const ZigClangExpr;
   1064 pub extern fn ZigClangCStyleCastExpr_getType(*const ZigClangCStyleCastExpr) ZigClangQualType;
   1065 
   1066 pub const ZigClangExprEvalResult = struct_ZigClangExprEvalResult;
   1067 pub const struct_ZigClangExprEvalResult = extern struct {
   1068     HasSideEffects: bool,
   1069     HasUndefinedBehavior: bool,
   1070     SmallVectorImpl: ?*c_void,
   1071     Val: ZigClangAPValue,
   1072 };
   1073 
   1074 pub const struct_ZigClangAPValue = extern struct {
   1075     Kind: ZigClangAPValueKind,
   1076     Data: if (builtin.os.tag == .windows and builtin.abi == .msvc) [52]u8 else [68]u8,
   1077 };
   1078 pub extern fn ZigClangVarDecl_getTypeSourceInfo_getType(self: *const struct_ZigClangVarDecl) struct_ZigClangQualType;
   1079 
   1080 pub extern fn ZigClangIntegerLiteral_EvaluateAsInt(*const ZigClangIntegerLiteral, *ZigClangExprEvalResult, *const ZigClangASTContext) bool;
   1081 pub extern fn ZigClangIntegerLiteral_getBeginLoc(*const ZigClangIntegerLiteral) ZigClangSourceLocation;
   1082 
   1083 pub extern fn ZigClangReturnStmt_getRetValue(*const ZigClangReturnStmt) ?*const ZigClangExpr;
   1084 
   1085 pub extern fn ZigClangBinaryOperator_getOpcode(*const ZigClangBinaryOperator) ZigClangBO;
   1086 pub extern fn ZigClangBinaryOperator_getBeginLoc(*const ZigClangBinaryOperator) ZigClangSourceLocation;
   1087 pub extern fn ZigClangBinaryOperator_getLHS(*const ZigClangBinaryOperator) *const ZigClangExpr;
   1088 pub extern fn ZigClangBinaryOperator_getRHS(*const ZigClangBinaryOperator) *const ZigClangExpr;
   1089 pub extern fn ZigClangBinaryOperator_getType(*const ZigClangBinaryOperator) ZigClangQualType;
   1090 
   1091 pub extern fn ZigClangDecayedType_getDecayedType(*const ZigClangDecayedType) ZigClangQualType;
   1092 
   1093 pub extern fn ZigClangStringLiteral_getKind(*const ZigClangStringLiteral) ZigClangStringLiteral_StringKind;
   1094 pub extern fn ZigClangStringLiteral_getString_bytes_begin_size(*const ZigClangStringLiteral, *usize) [*]const u8;
   1095 
   1096 pub extern fn ZigClangParenExpr_getSubExpr(*const ZigClangParenExpr) *const ZigClangExpr;
   1097 
   1098 pub extern fn ZigClangFieldDecl_isAnonymousStructOrUnion(*const struct_ZigClangFieldDecl) bool;
   1099 pub extern fn ZigClangFieldDecl_isBitField(*const struct_ZigClangFieldDecl) bool;
   1100 pub extern fn ZigClangFieldDecl_getType(*const struct_ZigClangFieldDecl) struct_ZigClangQualType;
   1101 pub extern fn ZigClangFieldDecl_getLocation(*const struct_ZigClangFieldDecl) struct_ZigClangSourceLocation;
   1102 
   1103 pub extern fn ZigClangEnumConstantDecl_getInitExpr(*const ZigClangEnumConstantDecl) ?*const ZigClangExpr;
   1104 pub extern fn ZigClangEnumConstantDecl_getInitVal(*const ZigClangEnumConstantDecl) *const ZigClangAPSInt;
   1105 
   1106 pub extern fn ZigClangASTUnit_getLocalPreprocessingEntities_begin(*ZigClangASTUnit) ZigClangPreprocessingRecord_iterator;
   1107 pub extern fn ZigClangASTUnit_getLocalPreprocessingEntities_end(*ZigClangASTUnit) ZigClangPreprocessingRecord_iterator;
   1108 pub extern fn ZigClangPreprocessingRecord_iterator_deref(ZigClangPreprocessingRecord_iterator) *ZigClangPreprocessedEntity;
   1109 pub extern fn ZigClangPreprocessedEntity_getKind(*const ZigClangPreprocessedEntity) ZigClangPreprocessedEntity_EntityKind;
   1110 
   1111 pub extern fn ZigClangMacroDefinitionRecord_getName_getNameStart(*const ZigClangMacroDefinitionRecord) [*:0]const u8;
   1112 pub extern fn ZigClangMacroDefinitionRecord_getSourceRange_getBegin(*const ZigClangMacroDefinitionRecord) ZigClangSourceLocation;
   1113 pub extern fn ZigClangMacroDefinitionRecord_getSourceRange_getEnd(*const ZigClangMacroDefinitionRecord) ZigClangSourceLocation;
   1114 
   1115 pub extern fn ZigClangMacroExpansion_getDefinition(*const ZigClangMacroExpansion) *const ZigClangMacroDefinitionRecord;
   1116 
   1117 pub extern fn ZigClangIfStmt_getThen(*const ZigClangIfStmt) *const ZigClangStmt;
   1118 pub extern fn ZigClangIfStmt_getElse(*const ZigClangIfStmt) ?*const ZigClangStmt;
   1119 pub extern fn ZigClangIfStmt_getCond(*const ZigClangIfStmt) *const ZigClangStmt;
   1120 
   1121 pub extern fn ZigClangWhileStmt_getCond(*const ZigClangWhileStmt) *const ZigClangExpr;
   1122 pub extern fn ZigClangWhileStmt_getBody(*const ZigClangWhileStmt) *const ZigClangStmt;
   1123 
   1124 pub extern fn ZigClangDoStmt_getCond(*const ZigClangDoStmt) *const ZigClangExpr;
   1125 pub extern fn ZigClangDoStmt_getBody(*const ZigClangDoStmt) *const ZigClangStmt;
   1126 
   1127 pub extern fn ZigClangForStmt_getInit(*const ZigClangForStmt) ?*const ZigClangStmt;
   1128 pub extern fn ZigClangForStmt_getCond(*const ZigClangForStmt) ?*const ZigClangExpr;
   1129 pub extern fn ZigClangForStmt_getInc(*const ZigClangForStmt) ?*const ZigClangExpr;
   1130 pub extern fn ZigClangForStmt_getBody(*const ZigClangForStmt) *const ZigClangStmt;
   1131 
   1132 pub extern fn ZigClangAPFloat_toString(self: *const ZigClangAPFloat, precision: c_uint, maxPadding: c_uint, truncateZero: bool) [*:0]const u8;
   1133 pub extern fn ZigClangAPFloat_getValueAsApproximateDouble(*const ZigClangFloatingLiteral) f64;
   1134 
   1135 pub extern fn ZigClangAbstractConditionalOperator_getCond(*const ZigClangAbstractConditionalOperator) *const ZigClangExpr;
   1136 pub extern fn ZigClangAbstractConditionalOperator_getTrueExpr(*const ZigClangAbstractConditionalOperator) *const ZigClangExpr;
   1137 pub extern fn ZigClangAbstractConditionalOperator_getFalseExpr(*const ZigClangAbstractConditionalOperator) *const ZigClangExpr;
   1138 
   1139 pub extern fn ZigClangSwitchStmt_getConditionVariableDeclStmt(*const ZigClangSwitchStmt) ?*const ZigClangDeclStmt;
   1140 pub extern fn ZigClangSwitchStmt_getCond(*const ZigClangSwitchStmt) *const ZigClangExpr;
   1141 pub extern fn ZigClangSwitchStmt_getBody(*const ZigClangSwitchStmt) *const ZigClangStmt;
   1142 pub extern fn ZigClangSwitchStmt_isAllEnumCasesCovered(*const ZigClangSwitchStmt) bool;
   1143 
   1144 pub extern fn ZigClangCaseStmt_getLHS(*const ZigClangCaseStmt) *const ZigClangExpr;
   1145 pub extern fn ZigClangCaseStmt_getRHS(*const ZigClangCaseStmt) ?*const ZigClangExpr;
   1146 pub extern fn ZigClangCaseStmt_getBeginLoc(*const ZigClangCaseStmt) ZigClangSourceLocation;
   1147 pub extern fn ZigClangCaseStmt_getSubStmt(*const ZigClangCaseStmt) *const ZigClangStmt;
   1148 
   1149 pub extern fn ZigClangDefaultStmt_getSubStmt(*const ZigClangDefaultStmt) *const ZigClangStmt;
   1150 
   1151 pub extern fn ZigClangExpr_EvaluateAsConstantExpr(*const ZigClangExpr, *ZigClangExprEvalResult, ZigClangExpr_ConstExprUsage, *const ZigClangASTContext) bool;
   1152 
   1153 pub extern fn ZigClangPredefinedExpr_getFunctionName(*const ZigClangPredefinedExpr) *const ZigClangStringLiteral;
   1154 
   1155 pub extern fn ZigClangCharacterLiteral_getBeginLoc(*const ZigClangCharacterLiteral) ZigClangSourceLocation;
   1156 pub extern fn ZigClangCharacterLiteral_getKind(*const ZigClangCharacterLiteral) ZigClangCharacterLiteral_CharacterKind;
   1157 pub extern fn ZigClangCharacterLiteral_getValue(*const ZigClangCharacterLiteral) c_uint;
   1158 
   1159 pub extern fn ZigClangStmtExpr_getSubStmt(*const ZigClangStmtExpr) *const ZigClangCompoundStmt;
   1160 
   1161 pub extern fn ZigClangMemberExpr_getBase(*const ZigClangMemberExpr) *const ZigClangExpr;
   1162 pub extern fn ZigClangMemberExpr_isArrow(*const ZigClangMemberExpr) bool;
   1163 pub extern fn ZigClangMemberExpr_getMemberDecl(*const ZigClangMemberExpr) *const ZigClangValueDecl;
   1164 
   1165 pub extern fn ZigClangArraySubscriptExpr_getBase(*const ZigClangArraySubscriptExpr) *const ZigClangExpr;
   1166 pub extern fn ZigClangArraySubscriptExpr_getIdx(*const ZigClangArraySubscriptExpr) *const ZigClangExpr;
   1167 
   1168 pub extern fn ZigClangCallExpr_getCallee(*const ZigClangCallExpr) *const ZigClangExpr;
   1169 pub extern fn ZigClangCallExpr_getNumArgs(*const ZigClangCallExpr) c_uint;
   1170 pub extern fn ZigClangCallExpr_getArgs(*const ZigClangCallExpr) [*]const *const ZigClangExpr;
   1171 
   1172 pub extern fn ZigClangUnaryExprOrTypeTraitExpr_getTypeOfArgument(*const ZigClangUnaryExprOrTypeTraitExpr) ZigClangQualType;
   1173 pub extern fn ZigClangUnaryExprOrTypeTraitExpr_getBeginLoc(*const ZigClangUnaryExprOrTypeTraitExpr) ZigClangSourceLocation;
   1174 
   1175 pub extern fn ZigClangUnaryOperator_getOpcode(*const ZigClangUnaryOperator) ZigClangUO;
   1176 pub extern fn ZigClangUnaryOperator_getType(*const ZigClangUnaryOperator) ZigClangQualType;
   1177 pub extern fn ZigClangUnaryOperator_getSubExpr(*const ZigClangUnaryOperator) *const ZigClangExpr;
   1178 pub extern fn ZigClangUnaryOperator_getBeginLoc(*const ZigClangUnaryOperator) ZigClangSourceLocation;
   1179 
   1180 pub extern fn ZigClangOpaqueValueExpr_getSourceExpr(*const ZigClangOpaqueValueExpr) ?*const ZigClangExpr;
   1181 
   1182 pub extern fn ZigClangCompoundAssignOperator_getType(*const ZigClangCompoundAssignOperator) ZigClangQualType;
   1183 pub extern fn ZigClangCompoundAssignOperator_getComputationLHSType(*const ZigClangCompoundAssignOperator) ZigClangQualType;
   1184 pub extern fn ZigClangCompoundAssignOperator_getComputationResultType(*const ZigClangCompoundAssignOperator) ZigClangQualType;
   1185 pub extern fn ZigClangCompoundAssignOperator_getBeginLoc(*const ZigClangCompoundAssignOperator) ZigClangSourceLocation;
   1186 pub extern fn ZigClangCompoundAssignOperator_getOpcode(*const ZigClangCompoundAssignOperator) ZigClangBO;
   1187 pub extern fn ZigClangCompoundAssignOperator_getLHS(*const ZigClangCompoundAssignOperator) *const ZigClangExpr;
   1188 pub extern fn ZigClangCompoundAssignOperator_getRHS(*const ZigClangCompoundAssignOperator) *const ZigClangExpr;