1239 lines
56 KiB
C
1239 lines
56 KiB
C
/*
|
|
* Copyright (c) 2019 Andrew Kelley
|
|
*
|
|
* This file is part of zig, which is MIT licensed.
|
|
* See http://opensource.org/licenses/MIT
|
|
*/
|
|
|
|
#ifndef ZIG_ZIG_CLANG_H
|
|
#define ZIG_ZIG_CLANG_H
|
|
|
|
#include "stage2.h"
|
|
#include <inttypes.h>
|
|
#include <stdbool.h>
|
|
|
|
// ATTENTION: If you modify this file, be sure to update the corresponding
|
|
// extern function declarations in the self-hosted compiler file
|
|
// src/clang.zig.
|
|
|
|
struct ZigClangSourceLocation {
|
|
unsigned ID;
|
|
};
|
|
|
|
struct ZigClangQualType {
|
|
void *ptr;
|
|
};
|
|
|
|
struct ZigClangAPValueLValueBase {
|
|
void *Ptr;
|
|
unsigned CallIndex;
|
|
unsigned Version;
|
|
};
|
|
|
|
enum ZigClangAPValueKind {
|
|
ZigClangAPValueNone,
|
|
ZigClangAPValueIndeterminate,
|
|
ZigClangAPValueInt,
|
|
ZigClangAPValueFloat,
|
|
ZigClangAPValueFixedPoint,
|
|
ZigClangAPValueComplexInt,
|
|
ZigClangAPValueComplexFloat,
|
|
ZigClangAPValueLValue,
|
|
ZigClangAPValueVector,
|
|
ZigClangAPValueArray,
|
|
ZigClangAPValueStruct,
|
|
ZigClangAPValueUnion,
|
|
ZigClangAPValueMemberPointer,
|
|
ZigClangAPValueAddrLabelDiff,
|
|
};
|
|
|
|
struct ZigClangAPValue {
|
|
enum ZigClangAPValueKind Kind;
|
|
// experimentally-derived size of clang::APValue::DataType
|
|
#if defined(_WIN32) && defined(__i386__)
|
|
char Data[68];
|
|
#elif defined(_WIN32) && defined(_MSC_VER)
|
|
char Data[52];
|
|
#elif defined(__i386__)
|
|
char Data[48];
|
|
#else
|
|
char Data[68];
|
|
#endif
|
|
};
|
|
|
|
struct ZigClangExprEvalResult {
|
|
bool HasSideEffects;
|
|
bool HasUndefinedBehavior;
|
|
void *SmallVectorImpl;
|
|
ZigClangAPValue Val;
|
|
};
|
|
|
|
struct ZigClangAbstractConditionalOperator;
|
|
struct ZigClangAPFloat;
|
|
struct ZigClangAPInt;
|
|
struct ZigClangAPSInt;
|
|
struct ZigClangASTContext;
|
|
struct ZigClangASTUnit;
|
|
struct ZigClangArraySubscriptExpr;
|
|
struct ZigClangArrayType;
|
|
struct ZigClangAttributedType;
|
|
struct ZigClangBinaryOperator;
|
|
struct ZigClangBinaryConditionalOperator;
|
|
struct ZigClangBreakStmt;
|
|
struct ZigClangBuiltinType;
|
|
struct ZigClangCStyleCastExpr;
|
|
struct ZigClangCallExpr;
|
|
struct ZigClangCaseStmt;
|
|
struct ZigClangCharacterLiteral;
|
|
struct ZigClangCompoundAssignOperator;
|
|
struct ZigClangCompoundStmt;
|
|
struct ZigClangConditionalOperator;
|
|
struct ZigClangConstantArrayType;
|
|
struct ZigClangConstantExpr;
|
|
struct ZigClangContinueStmt;
|
|
struct ZigClangDecayedType;
|
|
struct ZigClangDecl;
|
|
struct ZigClangDeclRefExpr;
|
|
struct ZigClangDeclStmt;
|
|
struct ZigClangDefaultStmt;
|
|
struct ZigClangDiagnosticOptions;
|
|
struct ZigClangDiagnosticsEngine;
|
|
struct ZigClangDoStmt;
|
|
struct ZigClangElaboratedType;
|
|
struct ZigClangEnumConstantDecl;
|
|
struct ZigClangEnumDecl;
|
|
struct ZigClangEnumType;
|
|
struct ZigClangExpr;
|
|
struct ZigClangFieldDecl;
|
|
struct ZigClangFileID;
|
|
struct ZigClangFloatingLiteral;
|
|
struct ZigClangForStmt;
|
|
struct ZigClangFullSourceLoc;
|
|
struct ZigClangFunctionDecl;
|
|
struct ZigClangFunctionProtoType;
|
|
struct ZigClangFunctionType;
|
|
struct ZigClangIfStmt;
|
|
struct ZigClangImplicitCastExpr;
|
|
struct ZigClangIncompleteArrayType;
|
|
struct ZigClangIntegerLiteral;
|
|
struct ZigClangMacroDefinitionRecord;
|
|
struct ZigClangMacroQualifiedType;
|
|
struct ZigClangMemberExpr;
|
|
struct ZigClangNamedDecl;
|
|
struct ZigClangNone;
|
|
struct ZigClangOpaqueValueExpr;
|
|
struct ZigClangPCHContainerOperations;
|
|
struct ZigClangParenExpr;
|
|
struct ZigClangParenType;
|
|
struct ZigClangParmVarDecl;
|
|
struct ZigClangPointerType;
|
|
struct ZigClangPredefinedExpr;
|
|
struct ZigClangPreprocessedEntity;
|
|
struct ZigClangPreprocessingRecord;
|
|
struct ZigClangRecordDecl;
|
|
struct ZigClangRecordType;
|
|
struct ZigClangReturnStmt;
|
|
struct ZigClangSkipFunctionBodiesScope;
|
|
struct ZigClangSourceManager;
|
|
struct ZigClangSourceRange;
|
|
struct ZigClangStmt;
|
|
struct ZigClangStmtExpr;
|
|
struct ZigClangStringLiteral;
|
|
struct ZigClangStringRef;
|
|
struct ZigClangSwitchStmt;
|
|
struct ZigClangTagDecl;
|
|
struct ZigClangType;
|
|
struct ZigClangTypedefNameDecl;
|
|
struct ZigClangTypedefType;
|
|
struct ZigClangUnaryExprOrTypeTraitExpr;
|
|
struct ZigClangUnaryOperator;
|
|
struct ZigClangValueDecl;
|
|
struct ZigClangVarDecl;
|
|
struct ZigClangWhileStmt;
|
|
struct ZigClangInitListExpr;
|
|
|
|
typedef struct ZigClangStmt *const * ZigClangCompoundStmt_const_body_iterator;
|
|
typedef struct ZigClangDecl *const * ZigClangDeclStmt_const_decl_iterator;
|
|
|
|
struct ZigClangRecordDecl_field_iterator {
|
|
void *opaque;
|
|
};
|
|
|
|
struct ZigClangEnumDecl_enumerator_iterator {
|
|
void *opaque;
|
|
};
|
|
|
|
struct ZigClangPreprocessingRecord_iterator {
|
|
int I;
|
|
struct ZigClangPreprocessingRecord *Self;
|
|
};
|
|
|
|
enum ZigClangBO {
|
|
ZigClangBO_PtrMemD,
|
|
ZigClangBO_PtrMemI,
|
|
ZigClangBO_Mul,
|
|
ZigClangBO_Div,
|
|
ZigClangBO_Rem,
|
|
ZigClangBO_Add,
|
|
ZigClangBO_Sub,
|
|
ZigClangBO_Shl,
|
|
ZigClangBO_Shr,
|
|
ZigClangBO_Cmp,
|
|
ZigClangBO_LT,
|
|
ZigClangBO_GT,
|
|
ZigClangBO_LE,
|
|
ZigClangBO_GE,
|
|
ZigClangBO_EQ,
|
|
ZigClangBO_NE,
|
|
ZigClangBO_And,
|
|
ZigClangBO_Xor,
|
|
ZigClangBO_Or,
|
|
ZigClangBO_LAnd,
|
|
ZigClangBO_LOr,
|
|
ZigClangBO_Assign,
|
|
ZigClangBO_MulAssign,
|
|
ZigClangBO_DivAssign,
|
|
ZigClangBO_RemAssign,
|
|
ZigClangBO_AddAssign,
|
|
ZigClangBO_SubAssign,
|
|
ZigClangBO_ShlAssign,
|
|
ZigClangBO_ShrAssign,
|
|
ZigClangBO_AndAssign,
|
|
ZigClangBO_XorAssign,
|
|
ZigClangBO_OrAssign,
|
|
ZigClangBO_Comma,
|
|
};
|
|
|
|
enum ZigClangUO {
|
|
ZigClangUO_PostInc,
|
|
ZigClangUO_PostDec,
|
|
ZigClangUO_PreInc,
|
|
ZigClangUO_PreDec,
|
|
ZigClangUO_AddrOf,
|
|
ZigClangUO_Deref,
|
|
ZigClangUO_Plus,
|
|
ZigClangUO_Minus,
|
|
ZigClangUO_Not,
|
|
ZigClangUO_LNot,
|
|
ZigClangUO_Real,
|
|
ZigClangUO_Imag,
|
|
ZigClangUO_Extension,
|
|
ZigClangUO_Coawait,
|
|
};
|
|
|
|
enum ZigClangTypeClass {
|
|
ZigClangType_Adjusted,
|
|
ZigClangType_Decayed,
|
|
ZigClangType_ConstantArray,
|
|
ZigClangType_DependentSizedArray,
|
|
ZigClangType_IncompleteArray,
|
|
ZigClangType_VariableArray,
|
|
ZigClangType_Atomic,
|
|
ZigClangType_Attributed,
|
|
ZigClangType_BlockPointer,
|
|
ZigClangType_Builtin,
|
|
ZigClangType_Complex,
|
|
ZigClangType_Decltype,
|
|
ZigClangType_Auto,
|
|
ZigClangType_DeducedTemplateSpecialization,
|
|
ZigClangType_DependentAddressSpace,
|
|
ZigClangType_DependentExtInt,
|
|
ZigClangType_DependentName,
|
|
ZigClangType_DependentSizedExtVector,
|
|
ZigClangType_DependentTemplateSpecialization,
|
|
ZigClangType_DependentVector,
|
|
ZigClangType_Elaborated,
|
|
ZigClangType_ExtInt,
|
|
ZigClangType_FunctionNoProto,
|
|
ZigClangType_FunctionProto,
|
|
ZigClangType_InjectedClassName,
|
|
ZigClangType_MacroQualified,
|
|
ZigClangType_ConstantMatrix,
|
|
ZigClangType_DependentSizedMatrix,
|
|
ZigClangType_MemberPointer,
|
|
ZigClangType_ObjCObjectPointer,
|
|
ZigClangType_ObjCObject,
|
|
ZigClangType_ObjCInterface,
|
|
ZigClangType_ObjCTypeParam,
|
|
ZigClangType_PackExpansion,
|
|
ZigClangType_Paren,
|
|
ZigClangType_Pipe,
|
|
ZigClangType_Pointer,
|
|
ZigClangType_LValueReference,
|
|
ZigClangType_RValueReference,
|
|
ZigClangType_SubstTemplateTypeParmPack,
|
|
ZigClangType_SubstTemplateTypeParm,
|
|
ZigClangType_Enum,
|
|
ZigClangType_Record,
|
|
ZigClangType_TemplateSpecialization,
|
|
ZigClangType_TemplateTypeParm,
|
|
ZigClangType_TypeOfExpr,
|
|
ZigClangType_TypeOf,
|
|
ZigClangType_Typedef,
|
|
ZigClangType_UnaryTransform,
|
|
ZigClangType_UnresolvedUsing,
|
|
ZigClangType_Vector,
|
|
ZigClangType_ExtVector,
|
|
};
|
|
|
|
enum ZigClangStmtClass {
|
|
ZigClangStmt_NoStmtClass,
|
|
ZigClangStmt_GCCAsmStmtClass,
|
|
ZigClangStmt_MSAsmStmtClass,
|
|
ZigClangStmt_BreakStmtClass,
|
|
ZigClangStmt_CXXCatchStmtClass,
|
|
ZigClangStmt_CXXForRangeStmtClass,
|
|
ZigClangStmt_CXXTryStmtClass,
|
|
ZigClangStmt_CapturedStmtClass,
|
|
ZigClangStmt_CompoundStmtClass,
|
|
ZigClangStmt_ContinueStmtClass,
|
|
ZigClangStmt_CoreturnStmtClass,
|
|
ZigClangStmt_CoroutineBodyStmtClass,
|
|
ZigClangStmt_DeclStmtClass,
|
|
ZigClangStmt_DoStmtClass,
|
|
ZigClangStmt_ForStmtClass,
|
|
ZigClangStmt_GotoStmtClass,
|
|
ZigClangStmt_IfStmtClass,
|
|
ZigClangStmt_IndirectGotoStmtClass,
|
|
ZigClangStmt_MSDependentExistsStmtClass,
|
|
ZigClangStmt_NullStmtClass,
|
|
ZigClangStmt_OMPAtomicDirectiveClass,
|
|
ZigClangStmt_OMPBarrierDirectiveClass,
|
|
ZigClangStmt_OMPCancelDirectiveClass,
|
|
ZigClangStmt_OMPCancellationPointDirectiveClass,
|
|
ZigClangStmt_OMPCriticalDirectiveClass,
|
|
ZigClangStmt_OMPDepobjDirectiveClass,
|
|
ZigClangStmt_OMPFlushDirectiveClass,
|
|
ZigClangStmt_OMPDistributeDirectiveClass,
|
|
ZigClangStmt_OMPDistributeParallelForDirectiveClass,
|
|
ZigClangStmt_OMPDistributeParallelForSimdDirectiveClass,
|
|
ZigClangStmt_OMPDistributeSimdDirectiveClass,
|
|
ZigClangStmt_OMPForDirectiveClass,
|
|
ZigClangStmt_OMPForSimdDirectiveClass,
|
|
ZigClangStmt_OMPMasterTaskLoopDirectiveClass,
|
|
ZigClangStmt_OMPMasterTaskLoopSimdDirectiveClass,
|
|
ZigClangStmt_OMPParallelForDirectiveClass,
|
|
ZigClangStmt_OMPParallelForSimdDirectiveClass,
|
|
ZigClangStmt_OMPParallelMasterTaskLoopDirectiveClass,
|
|
ZigClangStmt_OMPParallelMasterTaskLoopSimdDirectiveClass,
|
|
ZigClangStmt_OMPSimdDirectiveClass,
|
|
ZigClangStmt_OMPTargetParallelForSimdDirectiveClass,
|
|
ZigClangStmt_OMPTargetSimdDirectiveClass,
|
|
ZigClangStmt_OMPTargetTeamsDistributeDirectiveClass,
|
|
ZigClangStmt_OMPTargetTeamsDistributeParallelForDirectiveClass,
|
|
ZigClangStmt_OMPTargetTeamsDistributeParallelForSimdDirectiveClass,
|
|
ZigClangStmt_OMPTargetTeamsDistributeSimdDirectiveClass,
|
|
ZigClangStmt_OMPTaskLoopDirectiveClass,
|
|
ZigClangStmt_OMPTaskLoopSimdDirectiveClass,
|
|
ZigClangStmt_OMPTeamsDistributeDirectiveClass,
|
|
ZigClangStmt_OMPTeamsDistributeParallelForDirectiveClass,
|
|
ZigClangStmt_OMPTeamsDistributeParallelForSimdDirectiveClass,
|
|
ZigClangStmt_OMPTeamsDistributeSimdDirectiveClass,
|
|
ZigClangStmt_OMPMasterDirectiveClass,
|
|
ZigClangStmt_OMPOrderedDirectiveClass,
|
|
ZigClangStmt_OMPParallelDirectiveClass,
|
|
ZigClangStmt_OMPParallelMasterDirectiveClass,
|
|
ZigClangStmt_OMPParallelSectionsDirectiveClass,
|
|
ZigClangStmt_OMPScanDirectiveClass,
|
|
ZigClangStmt_OMPSectionDirectiveClass,
|
|
ZigClangStmt_OMPSectionsDirectiveClass,
|
|
ZigClangStmt_OMPSingleDirectiveClass,
|
|
ZigClangStmt_OMPTargetDataDirectiveClass,
|
|
ZigClangStmt_OMPTargetDirectiveClass,
|
|
ZigClangStmt_OMPTargetEnterDataDirectiveClass,
|
|
ZigClangStmt_OMPTargetExitDataDirectiveClass,
|
|
ZigClangStmt_OMPTargetParallelDirectiveClass,
|
|
ZigClangStmt_OMPTargetParallelForDirectiveClass,
|
|
ZigClangStmt_OMPTargetTeamsDirectiveClass,
|
|
ZigClangStmt_OMPTargetUpdateDirectiveClass,
|
|
ZigClangStmt_OMPTaskDirectiveClass,
|
|
ZigClangStmt_OMPTaskgroupDirectiveClass,
|
|
ZigClangStmt_OMPTaskwaitDirectiveClass,
|
|
ZigClangStmt_OMPTaskyieldDirectiveClass,
|
|
ZigClangStmt_OMPTeamsDirectiveClass,
|
|
ZigClangStmt_ObjCAtCatchStmtClass,
|
|
ZigClangStmt_ObjCAtFinallyStmtClass,
|
|
ZigClangStmt_ObjCAtSynchronizedStmtClass,
|
|
ZigClangStmt_ObjCAtThrowStmtClass,
|
|
ZigClangStmt_ObjCAtTryStmtClass,
|
|
ZigClangStmt_ObjCAutoreleasePoolStmtClass,
|
|
ZigClangStmt_ObjCForCollectionStmtClass,
|
|
ZigClangStmt_ReturnStmtClass,
|
|
ZigClangStmt_SEHExceptStmtClass,
|
|
ZigClangStmt_SEHFinallyStmtClass,
|
|
ZigClangStmt_SEHLeaveStmtClass,
|
|
ZigClangStmt_SEHTryStmtClass,
|
|
ZigClangStmt_CaseStmtClass,
|
|
ZigClangStmt_DefaultStmtClass,
|
|
ZigClangStmt_SwitchStmtClass,
|
|
ZigClangStmt_AttributedStmtClass,
|
|
ZigClangStmt_BinaryConditionalOperatorClass,
|
|
ZigClangStmt_ConditionalOperatorClass,
|
|
ZigClangStmt_AddrLabelExprClass,
|
|
ZigClangStmt_ArrayInitIndexExprClass,
|
|
ZigClangStmt_ArrayInitLoopExprClass,
|
|
ZigClangStmt_ArraySubscriptExprClass,
|
|
ZigClangStmt_ArrayTypeTraitExprClass,
|
|
ZigClangStmt_AsTypeExprClass,
|
|
ZigClangStmt_AtomicExprClass,
|
|
ZigClangStmt_BinaryOperatorClass,
|
|
ZigClangStmt_CompoundAssignOperatorClass,
|
|
ZigClangStmt_BlockExprClass,
|
|
ZigClangStmt_CXXBindTemporaryExprClass,
|
|
ZigClangStmt_CXXBoolLiteralExprClass,
|
|
ZigClangStmt_CXXConstructExprClass,
|
|
ZigClangStmt_CXXTemporaryObjectExprClass,
|
|
ZigClangStmt_CXXDefaultArgExprClass,
|
|
ZigClangStmt_CXXDefaultInitExprClass,
|
|
ZigClangStmt_CXXDeleteExprClass,
|
|
ZigClangStmt_CXXDependentScopeMemberExprClass,
|
|
ZigClangStmt_CXXFoldExprClass,
|
|
ZigClangStmt_CXXInheritedCtorInitExprClass,
|
|
ZigClangStmt_CXXNewExprClass,
|
|
ZigClangStmt_CXXNoexceptExprClass,
|
|
ZigClangStmt_CXXNullPtrLiteralExprClass,
|
|
ZigClangStmt_CXXPseudoDestructorExprClass,
|
|
ZigClangStmt_CXXRewrittenBinaryOperatorClass,
|
|
ZigClangStmt_CXXScalarValueInitExprClass,
|
|
ZigClangStmt_CXXStdInitializerListExprClass,
|
|
ZigClangStmt_CXXThisExprClass,
|
|
ZigClangStmt_CXXThrowExprClass,
|
|
ZigClangStmt_CXXTypeidExprClass,
|
|
ZigClangStmt_CXXUnresolvedConstructExprClass,
|
|
ZigClangStmt_CXXUuidofExprClass,
|
|
ZigClangStmt_CallExprClass,
|
|
ZigClangStmt_CUDAKernelCallExprClass,
|
|
ZigClangStmt_CXXMemberCallExprClass,
|
|
ZigClangStmt_CXXOperatorCallExprClass,
|
|
ZigClangStmt_UserDefinedLiteralClass,
|
|
ZigClangStmt_BuiltinBitCastExprClass,
|
|
ZigClangStmt_CStyleCastExprClass,
|
|
ZigClangStmt_CXXFunctionalCastExprClass,
|
|
ZigClangStmt_CXXAddrspaceCastExprClass,
|
|
ZigClangStmt_CXXConstCastExprClass,
|
|
ZigClangStmt_CXXDynamicCastExprClass,
|
|
ZigClangStmt_CXXReinterpretCastExprClass,
|
|
ZigClangStmt_CXXStaticCastExprClass,
|
|
ZigClangStmt_ObjCBridgedCastExprClass,
|
|
ZigClangStmt_ImplicitCastExprClass,
|
|
ZigClangStmt_CharacterLiteralClass,
|
|
ZigClangStmt_ChooseExprClass,
|
|
ZigClangStmt_CompoundLiteralExprClass,
|
|
ZigClangStmt_ConceptSpecializationExprClass,
|
|
ZigClangStmt_ConvertVectorExprClass,
|
|
ZigClangStmt_CoawaitExprClass,
|
|
ZigClangStmt_CoyieldExprClass,
|
|
ZigClangStmt_DeclRefExprClass,
|
|
ZigClangStmt_DependentCoawaitExprClass,
|
|
ZigClangStmt_DependentScopeDeclRefExprClass,
|
|
ZigClangStmt_DesignatedInitExprClass,
|
|
ZigClangStmt_DesignatedInitUpdateExprClass,
|
|
ZigClangStmt_ExpressionTraitExprClass,
|
|
ZigClangStmt_ExtVectorElementExprClass,
|
|
ZigClangStmt_FixedPointLiteralClass,
|
|
ZigClangStmt_FloatingLiteralClass,
|
|
ZigClangStmt_ConstantExprClass,
|
|
ZigClangStmt_ExprWithCleanupsClass,
|
|
ZigClangStmt_FunctionParmPackExprClass,
|
|
ZigClangStmt_GNUNullExprClass,
|
|
ZigClangStmt_GenericSelectionExprClass,
|
|
ZigClangStmt_ImaginaryLiteralClass,
|
|
ZigClangStmt_ImplicitValueInitExprClass,
|
|
ZigClangStmt_InitListExprClass,
|
|
ZigClangStmt_IntegerLiteralClass,
|
|
ZigClangStmt_LambdaExprClass,
|
|
ZigClangStmt_MSPropertyRefExprClass,
|
|
ZigClangStmt_MSPropertySubscriptExprClass,
|
|
ZigClangStmt_MaterializeTemporaryExprClass,
|
|
ZigClangStmt_MatrixSubscriptExprClass,
|
|
ZigClangStmt_MemberExprClass,
|
|
ZigClangStmt_NoInitExprClass,
|
|
ZigClangStmt_OMPArraySectionExprClass,
|
|
ZigClangStmt_OMPArrayShapingExprClass,
|
|
ZigClangStmt_OMPIteratorExprClass,
|
|
ZigClangStmt_ObjCArrayLiteralClass,
|
|
ZigClangStmt_ObjCAvailabilityCheckExprClass,
|
|
ZigClangStmt_ObjCBoolLiteralExprClass,
|
|
ZigClangStmt_ObjCBoxedExprClass,
|
|
ZigClangStmt_ObjCDictionaryLiteralClass,
|
|
ZigClangStmt_ObjCEncodeExprClass,
|
|
ZigClangStmt_ObjCIndirectCopyRestoreExprClass,
|
|
ZigClangStmt_ObjCIsaExprClass,
|
|
ZigClangStmt_ObjCIvarRefExprClass,
|
|
ZigClangStmt_ObjCMessageExprClass,
|
|
ZigClangStmt_ObjCPropertyRefExprClass,
|
|
ZigClangStmt_ObjCProtocolExprClass,
|
|
ZigClangStmt_ObjCSelectorExprClass,
|
|
ZigClangStmt_ObjCStringLiteralClass,
|
|
ZigClangStmt_ObjCSubscriptRefExprClass,
|
|
ZigClangStmt_OffsetOfExprClass,
|
|
ZigClangStmt_OpaqueValueExprClass,
|
|
ZigClangStmt_UnresolvedLookupExprClass,
|
|
ZigClangStmt_UnresolvedMemberExprClass,
|
|
ZigClangStmt_PackExpansionExprClass,
|
|
ZigClangStmt_ParenExprClass,
|
|
ZigClangStmt_ParenListExprClass,
|
|
ZigClangStmt_PredefinedExprClass,
|
|
ZigClangStmt_PseudoObjectExprClass,
|
|
ZigClangStmt_RecoveryExprClass,
|
|
ZigClangStmt_RequiresExprClass,
|
|
ZigClangStmt_ShuffleVectorExprClass,
|
|
ZigClangStmt_SizeOfPackExprClass,
|
|
ZigClangStmt_SourceLocExprClass,
|
|
ZigClangStmt_StmtExprClass,
|
|
ZigClangStmt_StringLiteralClass,
|
|
ZigClangStmt_SubstNonTypeTemplateParmExprClass,
|
|
ZigClangStmt_SubstNonTypeTemplateParmPackExprClass,
|
|
ZigClangStmt_TypeTraitExprClass,
|
|
ZigClangStmt_TypoExprClass,
|
|
ZigClangStmt_UnaryExprOrTypeTraitExprClass,
|
|
ZigClangStmt_UnaryOperatorClass,
|
|
ZigClangStmt_VAArgExprClass,
|
|
ZigClangStmt_LabelStmtClass,
|
|
ZigClangStmt_WhileStmtClass,
|
|
};
|
|
|
|
enum ZigClangCK {
|
|
ZigClangCK_Dependent,
|
|
ZigClangCK_BitCast,
|
|
ZigClangCK_LValueBitCast,
|
|
ZigClangCK_LValueToRValueBitCast,
|
|
ZigClangCK_LValueToRValue,
|
|
ZigClangCK_NoOp,
|
|
ZigClangCK_BaseToDerived,
|
|
ZigClangCK_DerivedToBase,
|
|
ZigClangCK_UncheckedDerivedToBase,
|
|
ZigClangCK_Dynamic,
|
|
ZigClangCK_ToUnion,
|
|
ZigClangCK_ArrayToPointerDecay,
|
|
ZigClangCK_FunctionToPointerDecay,
|
|
ZigClangCK_NullToPointer,
|
|
ZigClangCK_NullToMemberPointer,
|
|
ZigClangCK_BaseToDerivedMemberPointer,
|
|
ZigClangCK_DerivedToBaseMemberPointer,
|
|
ZigClangCK_MemberPointerToBoolean,
|
|
ZigClangCK_ReinterpretMemberPointer,
|
|
ZigClangCK_UserDefinedConversion,
|
|
ZigClangCK_ConstructorConversion,
|
|
ZigClangCK_IntegralToPointer,
|
|
ZigClangCK_PointerToIntegral,
|
|
ZigClangCK_PointerToBoolean,
|
|
ZigClangCK_ToVoid,
|
|
ZigClangCK_VectorSplat,
|
|
ZigClangCK_IntegralCast,
|
|
ZigClangCK_IntegralToBoolean,
|
|
ZigClangCK_IntegralToFloating,
|
|
ZigClangCK_FixedPointCast,
|
|
ZigClangCK_FixedPointToIntegral,
|
|
ZigClangCK_IntegralToFixedPoint,
|
|
ZigClangCK_FixedPointToBoolean,
|
|
ZigClangCK_FloatingToIntegral,
|
|
ZigClangCK_FloatingToBoolean,
|
|
ZigClangCK_BooleanToSignedIntegral,
|
|
ZigClangCK_FloatingCast,
|
|
ZigClangCK_CPointerToObjCPointerCast,
|
|
ZigClangCK_BlockPointerToObjCPointerCast,
|
|
ZigClangCK_AnyPointerToBlockPointerCast,
|
|
ZigClangCK_ObjCObjectLValueCast,
|
|
ZigClangCK_FloatingRealToComplex,
|
|
ZigClangCK_FloatingComplexToReal,
|
|
ZigClangCK_FloatingComplexToBoolean,
|
|
ZigClangCK_FloatingComplexCast,
|
|
ZigClangCK_FloatingComplexToIntegralComplex,
|
|
ZigClangCK_IntegralRealToComplex,
|
|
ZigClangCK_IntegralComplexToReal,
|
|
ZigClangCK_IntegralComplexToBoolean,
|
|
ZigClangCK_IntegralComplexCast,
|
|
ZigClangCK_IntegralComplexToFloatingComplex,
|
|
ZigClangCK_ARCProduceObject,
|
|
ZigClangCK_ARCConsumeObject,
|
|
ZigClangCK_ARCReclaimReturnedObject,
|
|
ZigClangCK_ARCExtendBlockObject,
|
|
ZigClangCK_AtomicToNonAtomic,
|
|
ZigClangCK_NonAtomicToAtomic,
|
|
ZigClangCK_CopyAndAutoreleaseBlockObject,
|
|
ZigClangCK_BuiltinFnToFnPtr,
|
|
ZigClangCK_ZeroToOCLOpaqueType,
|
|
ZigClangCK_AddressSpaceConversion,
|
|
ZigClangCK_IntToOCLSampler,
|
|
};
|
|
|
|
enum ZigClangDeclKind {
|
|
ZigClangDeclAccessSpec,
|
|
ZigClangDeclBlock,
|
|
ZigClangDeclCaptured,
|
|
ZigClangDeclClassScopeFunctionSpecialization,
|
|
ZigClangDeclEmpty,
|
|
ZigClangDeclExport,
|
|
ZigClangDeclExternCContext,
|
|
ZigClangDeclFileScopeAsm,
|
|
ZigClangDeclFriend,
|
|
ZigClangDeclFriendTemplate,
|
|
ZigClangDeclImport,
|
|
ZigClangDeclLifetimeExtendedTemporary,
|
|
ZigClangDeclLinkageSpec,
|
|
ZigClangDeclLabel,
|
|
ZigClangDeclNamespace,
|
|
ZigClangDeclNamespaceAlias,
|
|
ZigClangDeclObjCCompatibleAlias,
|
|
ZigClangDeclObjCCategory,
|
|
ZigClangDeclObjCCategoryImpl,
|
|
ZigClangDeclObjCImplementation,
|
|
ZigClangDeclObjCInterface,
|
|
ZigClangDeclObjCProtocol,
|
|
ZigClangDeclObjCMethod,
|
|
ZigClangDeclObjCProperty,
|
|
ZigClangDeclBuiltinTemplate,
|
|
ZigClangDeclConcept,
|
|
ZigClangDeclClassTemplate,
|
|
ZigClangDeclFunctionTemplate,
|
|
ZigClangDeclTypeAliasTemplate,
|
|
ZigClangDeclVarTemplate,
|
|
ZigClangDeclTemplateTemplateParm,
|
|
ZigClangDeclEnum,
|
|
ZigClangDeclRecord,
|
|
ZigClangDeclCXXRecord,
|
|
ZigClangDeclClassTemplateSpecialization,
|
|
ZigClangDeclClassTemplatePartialSpecialization,
|
|
ZigClangDeclTemplateTypeParm,
|
|
ZigClangDeclObjCTypeParam,
|
|
ZigClangDeclTypeAlias,
|
|
ZigClangDeclTypedef,
|
|
ZigClangDeclUnresolvedUsingTypename,
|
|
ZigClangDeclUsing,
|
|
ZigClangDeclUsingDirective,
|
|
ZigClangDeclUsingPack,
|
|
ZigClangDeclUsingShadow,
|
|
ZigClangDeclConstructorUsingShadow,
|
|
ZigClangDeclBinding,
|
|
ZigClangDeclField,
|
|
ZigClangDeclObjCAtDefsField,
|
|
ZigClangDeclObjCIvar,
|
|
ZigClangDeclFunction,
|
|
ZigClangDeclCXXDeductionGuide,
|
|
ZigClangDeclCXXMethod,
|
|
ZigClangDeclCXXConstructor,
|
|
ZigClangDeclCXXConversion,
|
|
ZigClangDeclCXXDestructor,
|
|
ZigClangDeclMSProperty,
|
|
ZigClangDeclNonTypeTemplateParm,
|
|
ZigClangDeclVar,
|
|
ZigClangDeclDecomposition,
|
|
ZigClangDeclImplicitParam,
|
|
ZigClangDeclOMPCapturedExpr,
|
|
ZigClangDeclParmVar,
|
|
ZigClangDeclVarTemplateSpecialization,
|
|
ZigClangDeclVarTemplatePartialSpecialization,
|
|
ZigClangDeclEnumConstant,
|
|
ZigClangDeclIndirectField,
|
|
ZigClangDeclMSGuid,
|
|
ZigClangDeclOMPDeclareMapper,
|
|
ZigClangDeclOMPDeclareReduction,
|
|
ZigClangDeclUnresolvedUsingValue,
|
|
ZigClangDeclOMPAllocate,
|
|
ZigClangDeclOMPRequires,
|
|
ZigClangDeclOMPThreadPrivate,
|
|
ZigClangDeclObjCPropertyImpl,
|
|
ZigClangDeclPragmaComment,
|
|
ZigClangDeclPragmaDetectMismatch,
|
|
ZigClangDeclRequiresExprBody,
|
|
ZigClangDeclStaticAssert,
|
|
ZigClangDeclTranslationUnit,
|
|
};
|
|
|
|
enum ZigClangBuiltinTypeKind {
|
|
ZigClangBuiltinTypeOCLImage1dRO,
|
|
ZigClangBuiltinTypeOCLImage1dArrayRO,
|
|
ZigClangBuiltinTypeOCLImage1dBufferRO,
|
|
ZigClangBuiltinTypeOCLImage2dRO,
|
|
ZigClangBuiltinTypeOCLImage2dArrayRO,
|
|
ZigClangBuiltinTypeOCLImage2dDepthRO,
|
|
ZigClangBuiltinTypeOCLImage2dArrayDepthRO,
|
|
ZigClangBuiltinTypeOCLImage2dMSAARO,
|
|
ZigClangBuiltinTypeOCLImage2dArrayMSAARO,
|
|
ZigClangBuiltinTypeOCLImage2dMSAADepthRO,
|
|
ZigClangBuiltinTypeOCLImage2dArrayMSAADepthRO,
|
|
ZigClangBuiltinTypeOCLImage3dRO,
|
|
ZigClangBuiltinTypeOCLImage1dWO,
|
|
ZigClangBuiltinTypeOCLImage1dArrayWO,
|
|
ZigClangBuiltinTypeOCLImage1dBufferWO,
|
|
ZigClangBuiltinTypeOCLImage2dWO,
|
|
ZigClangBuiltinTypeOCLImage2dArrayWO,
|
|
ZigClangBuiltinTypeOCLImage2dDepthWO,
|
|
ZigClangBuiltinTypeOCLImage2dArrayDepthWO,
|
|
ZigClangBuiltinTypeOCLImage2dMSAAWO,
|
|
ZigClangBuiltinTypeOCLImage2dArrayMSAAWO,
|
|
ZigClangBuiltinTypeOCLImage2dMSAADepthWO,
|
|
ZigClangBuiltinTypeOCLImage2dArrayMSAADepthWO,
|
|
ZigClangBuiltinTypeOCLImage3dWO,
|
|
ZigClangBuiltinTypeOCLImage1dRW,
|
|
ZigClangBuiltinTypeOCLImage1dArrayRW,
|
|
ZigClangBuiltinTypeOCLImage1dBufferRW,
|
|
ZigClangBuiltinTypeOCLImage2dRW,
|
|
ZigClangBuiltinTypeOCLImage2dArrayRW,
|
|
ZigClangBuiltinTypeOCLImage2dDepthRW,
|
|
ZigClangBuiltinTypeOCLImage2dArrayDepthRW,
|
|
ZigClangBuiltinTypeOCLImage2dMSAARW,
|
|
ZigClangBuiltinTypeOCLImage2dArrayMSAARW,
|
|
ZigClangBuiltinTypeOCLImage2dMSAADepthRW,
|
|
ZigClangBuiltinTypeOCLImage2dArrayMSAADepthRW,
|
|
ZigClangBuiltinTypeOCLImage3dRW,
|
|
ZigClangBuiltinTypeOCLIntelSubgroupAVCMcePayload,
|
|
ZigClangBuiltinTypeOCLIntelSubgroupAVCImePayload,
|
|
ZigClangBuiltinTypeOCLIntelSubgroupAVCRefPayload,
|
|
ZigClangBuiltinTypeOCLIntelSubgroupAVCSicPayload,
|
|
ZigClangBuiltinTypeOCLIntelSubgroupAVCMceResult,
|
|
ZigClangBuiltinTypeOCLIntelSubgroupAVCImeResult,
|
|
ZigClangBuiltinTypeOCLIntelSubgroupAVCRefResult,
|
|
ZigClangBuiltinTypeOCLIntelSubgroupAVCSicResult,
|
|
ZigClangBuiltinTypeOCLIntelSubgroupAVCImeResultSingleRefStreamout,
|
|
ZigClangBuiltinTypeOCLIntelSubgroupAVCImeResultDualRefStreamout,
|
|
ZigClangBuiltinTypeOCLIntelSubgroupAVCImeSingleRefStreamin,
|
|
ZigClangBuiltinTypeOCLIntelSubgroupAVCImeDualRefStreamin,
|
|
ZigClangBuiltinTypeSveInt8,
|
|
ZigClangBuiltinTypeSveInt16,
|
|
ZigClangBuiltinTypeSveInt32,
|
|
ZigClangBuiltinTypeSveInt64,
|
|
ZigClangBuiltinTypeSveUint8,
|
|
ZigClangBuiltinTypeSveUint16,
|
|
ZigClangBuiltinTypeSveUint32,
|
|
ZigClangBuiltinTypeSveUint64,
|
|
ZigClangBuiltinTypeSveFloat16,
|
|
ZigClangBuiltinTypeSveFloat32,
|
|
ZigClangBuiltinTypeSveFloat64,
|
|
ZigClangBuiltinTypeSveBFloat16,
|
|
ZigClangBuiltinTypeSveInt8x2,
|
|
ZigClangBuiltinTypeSveInt16x2,
|
|
ZigClangBuiltinTypeSveInt32x2,
|
|
ZigClangBuiltinTypeSveInt64x2,
|
|
ZigClangBuiltinTypeSveUint8x2,
|
|
ZigClangBuiltinTypeSveUint16x2,
|
|
ZigClangBuiltinTypeSveUint32x2,
|
|
ZigClangBuiltinTypeSveUint64x2,
|
|
ZigClangBuiltinTypeSveFloat16x2,
|
|
ZigClangBuiltinTypeSveFloat32x2,
|
|
ZigClangBuiltinTypeSveFloat64x2,
|
|
ZigClangBuiltinTypeSveBFloat16x2,
|
|
ZigClangBuiltinTypeSveInt8x3,
|
|
ZigClangBuiltinTypeSveInt16x3,
|
|
ZigClangBuiltinTypeSveInt32x3,
|
|
ZigClangBuiltinTypeSveInt64x3,
|
|
ZigClangBuiltinTypeSveUint8x3,
|
|
ZigClangBuiltinTypeSveUint16x3,
|
|
ZigClangBuiltinTypeSveUint32x3,
|
|
ZigClangBuiltinTypeSveUint64x3,
|
|
ZigClangBuiltinTypeSveFloat16x3,
|
|
ZigClangBuiltinTypeSveFloat32x3,
|
|
ZigClangBuiltinTypeSveFloat64x3,
|
|
ZigClangBuiltinTypeSveBFloat16x3,
|
|
ZigClangBuiltinTypeSveInt8x4,
|
|
ZigClangBuiltinTypeSveInt16x4,
|
|
ZigClangBuiltinTypeSveInt32x4,
|
|
ZigClangBuiltinTypeSveInt64x4,
|
|
ZigClangBuiltinTypeSveUint8x4,
|
|
ZigClangBuiltinTypeSveUint16x4,
|
|
ZigClangBuiltinTypeSveUint32x4,
|
|
ZigClangBuiltinTypeSveUint64x4,
|
|
ZigClangBuiltinTypeSveFloat16x4,
|
|
ZigClangBuiltinTypeSveFloat32x4,
|
|
ZigClangBuiltinTypeSveFloat64x4,
|
|
ZigClangBuiltinTypeSveBFloat16x4,
|
|
ZigClangBuiltinTypeSveBool,
|
|
ZigClangBuiltinTypeVoid,
|
|
ZigClangBuiltinTypeBool,
|
|
ZigClangBuiltinTypeChar_U,
|
|
ZigClangBuiltinTypeUChar,
|
|
ZigClangBuiltinTypeWChar_U,
|
|
ZigClangBuiltinTypeChar8,
|
|
ZigClangBuiltinTypeChar16,
|
|
ZigClangBuiltinTypeChar32,
|
|
ZigClangBuiltinTypeUShort,
|
|
ZigClangBuiltinTypeUInt,
|
|
ZigClangBuiltinTypeULong,
|
|
ZigClangBuiltinTypeULongLong,
|
|
ZigClangBuiltinTypeUInt128,
|
|
ZigClangBuiltinTypeChar_S,
|
|
ZigClangBuiltinTypeSChar,
|
|
ZigClangBuiltinTypeWChar_S,
|
|
ZigClangBuiltinTypeShort,
|
|
ZigClangBuiltinTypeInt,
|
|
ZigClangBuiltinTypeLong,
|
|
ZigClangBuiltinTypeLongLong,
|
|
ZigClangBuiltinTypeInt128,
|
|
ZigClangBuiltinTypeShortAccum,
|
|
ZigClangBuiltinTypeAccum,
|
|
ZigClangBuiltinTypeLongAccum,
|
|
ZigClangBuiltinTypeUShortAccum,
|
|
ZigClangBuiltinTypeUAccum,
|
|
ZigClangBuiltinTypeULongAccum,
|
|
ZigClangBuiltinTypeShortFract,
|
|
ZigClangBuiltinTypeFract,
|
|
ZigClangBuiltinTypeLongFract,
|
|
ZigClangBuiltinTypeUShortFract,
|
|
ZigClangBuiltinTypeUFract,
|
|
ZigClangBuiltinTypeULongFract,
|
|
ZigClangBuiltinTypeSatShortAccum,
|
|
ZigClangBuiltinTypeSatAccum,
|
|
ZigClangBuiltinTypeSatLongAccum,
|
|
ZigClangBuiltinTypeSatUShortAccum,
|
|
ZigClangBuiltinTypeSatUAccum,
|
|
ZigClangBuiltinTypeSatULongAccum,
|
|
ZigClangBuiltinTypeSatShortFract,
|
|
ZigClangBuiltinTypeSatFract,
|
|
ZigClangBuiltinTypeSatLongFract,
|
|
ZigClangBuiltinTypeSatUShortFract,
|
|
ZigClangBuiltinTypeSatUFract,
|
|
ZigClangBuiltinTypeSatULongFract,
|
|
ZigClangBuiltinTypeHalf,
|
|
ZigClangBuiltinTypeFloat,
|
|
ZigClangBuiltinTypeDouble,
|
|
ZigClangBuiltinTypeLongDouble,
|
|
ZigClangBuiltinTypeFloat16,
|
|
ZigClangBuiltinTypeBFloat16,
|
|
ZigClangBuiltinTypeFloat128,
|
|
ZigClangBuiltinTypeNullPtr,
|
|
ZigClangBuiltinTypeObjCId,
|
|
ZigClangBuiltinTypeObjCClass,
|
|
ZigClangBuiltinTypeObjCSel,
|
|
ZigClangBuiltinTypeOCLSampler,
|
|
ZigClangBuiltinTypeOCLEvent,
|
|
ZigClangBuiltinTypeOCLClkEvent,
|
|
ZigClangBuiltinTypeOCLQueue,
|
|
ZigClangBuiltinTypeOCLReserveID,
|
|
ZigClangBuiltinTypeDependent,
|
|
ZigClangBuiltinTypeOverload,
|
|
ZigClangBuiltinTypeBoundMember,
|
|
ZigClangBuiltinTypePseudoObject,
|
|
ZigClangBuiltinTypeUnknownAny,
|
|
ZigClangBuiltinTypeBuiltinFn,
|
|
ZigClangBuiltinTypeARCUnbridgedCast,
|
|
ZigClangBuiltinTypeIncompleteMatrixIdx,
|
|
ZigClangBuiltinTypeOMPArraySection,
|
|
ZigClangBuiltinTypeOMPArrayShaping,
|
|
ZigClangBuiltinTypeOMPIterator,
|
|
};
|
|
|
|
enum ZigClangCallingConv {
|
|
ZigClangCallingConv_C, // __attribute__((cdecl))
|
|
ZigClangCallingConv_X86StdCall, // __attribute__((stdcall))
|
|
ZigClangCallingConv_X86FastCall, // __attribute__((fastcall))
|
|
ZigClangCallingConv_X86ThisCall, // __attribute__((thiscall))
|
|
ZigClangCallingConv_X86VectorCall, // __attribute__((vectorcall))
|
|
ZigClangCallingConv_X86Pascal, // __attribute__((pascal))
|
|
ZigClangCallingConv_Win64, // __attribute__((ms_abi))
|
|
ZigClangCallingConv_X86_64SysV, // __attribute__((sysv_abi))
|
|
ZigClangCallingConv_X86RegCall, // __attribute__((regcall))
|
|
ZigClangCallingConv_AAPCS, // __attribute__((pcs("aapcs")))
|
|
ZigClangCallingConv_AAPCS_VFP, // __attribute__((pcs("aapcs-vfp")))
|
|
ZigClangCallingConv_IntelOclBicc, // __attribute__((intel_ocl_bicc))
|
|
ZigClangCallingConv_SpirFunction, // default for OpenCL functions on SPIR target
|
|
ZigClangCallingConv_OpenCLKernel, // inferred for OpenCL kernels
|
|
ZigClangCallingConv_Swift, // __attribute__((swiftcall))
|
|
ZigClangCallingConv_PreserveMost, // __attribute__((preserve_most))
|
|
ZigClangCallingConv_PreserveAll, // __attribute__((preserve_all))
|
|
ZigClangCallingConv_AArch64VectorCall, // __attribute__((aarch64_vector_pcs))
|
|
};
|
|
|
|
enum ZigClangStorageClass {
|
|
// These are legal on both functions and variables.
|
|
ZigClangStorageClass_None,
|
|
ZigClangStorageClass_Extern,
|
|
ZigClangStorageClass_Static,
|
|
ZigClangStorageClass_PrivateExtern,
|
|
|
|
// These are only legal on variables.
|
|
ZigClangStorageClass_Auto,
|
|
ZigClangStorageClass_Register,
|
|
};
|
|
|
|
/// IEEE-754R 4.3: Rounding-direction attributes.
|
|
enum ZigClangAPFloat_roundingMode {
|
|
ZigClangAPFloat_roundingMode_TowardZero = 0,
|
|
ZigClangAPFloat_roundingMode_NearestTiesToEven = 1,
|
|
ZigClangAPFloat_roundingMode_TowardPositive = 2,
|
|
ZigClangAPFloat_roundingMode_TowardNegative = 3,
|
|
ZigClangAPFloat_roundingMode_NearestTiesToAway = 4,
|
|
|
|
ZigClangAPFloat_roundingMode_Dynamic = 7,
|
|
ZigClangAPFloat_roundingMode_Invalid = -1,
|
|
};
|
|
|
|
enum ZigClangStringLiteral_StringKind {
|
|
ZigClangStringLiteral_StringKind_Ascii,
|
|
ZigClangStringLiteral_StringKind_Wide,
|
|
ZigClangStringLiteral_StringKind_UTF8,
|
|
ZigClangStringLiteral_StringKind_UTF16,
|
|
ZigClangStringLiteral_StringKind_UTF32,
|
|
};
|
|
|
|
enum ZigClangCharacterLiteral_CharacterKind {
|
|
ZigClangCharacterLiteral_CharacterKind_Ascii,
|
|
ZigClangCharacterLiteral_CharacterKind_Wide,
|
|
ZigClangCharacterLiteral_CharacterKind_UTF8,
|
|
ZigClangCharacterLiteral_CharacterKind_UTF16,
|
|
ZigClangCharacterLiteral_CharacterKind_UTF32,
|
|
};
|
|
|
|
enum ZigClangVarDecl_TLSKind {
|
|
ZigClangVarDecl_TLSKind_None,
|
|
ZigClangVarDecl_TLSKind_Static,
|
|
ZigClangVarDecl_TLSKind_Dynamic,
|
|
};
|
|
|
|
enum ZigClangElaboratedTypeKeyword {
|
|
ZigClangETK_Struct,
|
|
ZigClangETK_Interface,
|
|
ZigClangETK_Union,
|
|
ZigClangETK_Class,
|
|
ZigClangETK_Enum,
|
|
ZigClangETK_Typename,
|
|
ZigClangETK_None,
|
|
};
|
|
|
|
enum ZigClangPreprocessedEntity_EntityKind {
|
|
ZigClangPreprocessedEntity_InvalidKind,
|
|
ZigClangPreprocessedEntity_MacroExpansionKind,
|
|
ZigClangPreprocessedEntity_MacroDefinitionKind,
|
|
ZigClangPreprocessedEntity_InclusionDirectiveKind,
|
|
};
|
|
|
|
enum ZigClangExpr_ConstExprUsage {
|
|
ZigClangExpr_EvaluateForCodeGen,
|
|
ZigClangExpr_EvaluateForMangling,
|
|
};
|
|
|
|
enum ZigClangUnaryExprOrTypeTrait_Kind {
|
|
ZigClangUnaryExprOrTypeTrait_KindSizeOf,
|
|
ZigClangUnaryExprOrTypeTrait_KindAlignOf,
|
|
ZigClangUnaryExprOrTypeTrait_KindVecStep,
|
|
ZigClangUnaryExprOrTypeTrait_KindOpenMPRequiredSimdAlign,
|
|
ZigClangUnaryExprOrTypeTrait_KindPreferredAlignOf,
|
|
};
|
|
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangSourceManager_getSpellingLoc(const struct ZigClangSourceManager *,
|
|
struct ZigClangSourceLocation Loc);
|
|
ZIG_EXTERN_C const char *ZigClangSourceManager_getFilename(const struct ZigClangSourceManager *,
|
|
struct ZigClangSourceLocation SpellingLoc);
|
|
ZIG_EXTERN_C unsigned ZigClangSourceManager_getSpellingLineNumber(const struct ZigClangSourceManager *,
|
|
struct ZigClangSourceLocation Loc);
|
|
ZIG_EXTERN_C unsigned ZigClangSourceManager_getSpellingColumnNumber(const struct ZigClangSourceManager *,
|
|
struct ZigClangSourceLocation Loc);
|
|
ZIG_EXTERN_C const char* ZigClangSourceManager_getCharacterData(const struct ZigClangSourceManager *,
|
|
struct ZigClangSourceLocation SL);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangASTContext_getPointerType(const struct ZigClangASTContext*, struct ZigClangQualType T);
|
|
|
|
|
|
// Can return null.
|
|
ZIG_EXTERN_C struct ZigClangASTUnit *ZigClangLoadFromCommandLine(const char **args_begin, const char **args_end,
|
|
struct Stage2ErrorMsg **errors_ptr, size_t *errors_len, const char *resources_path);
|
|
ZIG_EXTERN_C void ZigClangASTUnit_delete(struct ZigClangASTUnit *);
|
|
ZIG_EXTERN_C void ZigClangErrorMsg_delete(struct Stage2ErrorMsg *ptr, size_t len);
|
|
|
|
ZIG_EXTERN_C struct ZigClangASTContext *ZigClangASTUnit_getASTContext(struct ZigClangASTUnit *);
|
|
ZIG_EXTERN_C struct ZigClangSourceManager *ZigClangASTUnit_getSourceManager(struct ZigClangASTUnit *);
|
|
ZIG_EXTERN_C bool ZigClangASTUnit_visitLocalTopLevelDecls(struct ZigClangASTUnit *, void *context,
|
|
bool (*Fn)(void *context, const struct ZigClangDecl *decl));
|
|
ZIG_EXTERN_C struct ZigClangPreprocessingRecord_iterator ZigClangASTUnit_getLocalPreprocessingEntities_begin(struct ZigClangASTUnit *);
|
|
ZIG_EXTERN_C struct ZigClangPreprocessingRecord_iterator ZigClangASTUnit_getLocalPreprocessingEntities_end(struct ZigClangASTUnit *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangPreprocessedEntity *ZigClangPreprocessingRecord_iterator_deref(
|
|
struct ZigClangPreprocessingRecord_iterator);
|
|
|
|
ZIG_EXTERN_C enum ZigClangPreprocessedEntity_EntityKind ZigClangPreprocessedEntity_getKind(const struct ZigClangPreprocessedEntity *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangRecordDecl *ZigClangRecordType_getDecl(const struct ZigClangRecordType *record_ty);
|
|
ZIG_EXTERN_C const struct ZigClangEnumDecl *ZigClangEnumType_getDecl(const struct ZigClangEnumType *record_ty);
|
|
|
|
ZIG_EXTERN_C bool ZigClangTagDecl_isThisDeclarationADefinition(const struct ZigClangTagDecl *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangTagDecl *ZigClangRecordDecl_getCanonicalDecl(const struct ZigClangRecordDecl *record_decl);
|
|
ZIG_EXTERN_C const struct ZigClangTagDecl *ZigClangEnumDecl_getCanonicalDecl(const struct ZigClangEnumDecl *);
|
|
ZIG_EXTERN_C const struct ZigClangFieldDecl *ZigClangFieldDecl_getCanonicalDecl(const ZigClangFieldDecl *);
|
|
ZIG_EXTERN_C const struct ZigClangTypedefNameDecl *ZigClangTypedefNameDecl_getCanonicalDecl(const struct ZigClangTypedefNameDecl *);
|
|
ZIG_EXTERN_C const struct ZigClangFunctionDecl *ZigClangFunctionDecl_getCanonicalDecl(const ZigClangFunctionDecl *self);
|
|
ZIG_EXTERN_C const struct ZigClangVarDecl *ZigClangVarDecl_getCanonicalDecl(const ZigClangVarDecl *self);
|
|
ZIG_EXTERN_C const char* ZigClangVarDecl_getSectionAttribute(const struct ZigClangVarDecl *self, size_t *len);
|
|
ZIG_EXTERN_C unsigned ZigClangVarDecl_getAlignedAttribute(const struct ZigClangVarDecl *self, const ZigClangASTContext* ctx);
|
|
ZIG_EXTERN_C unsigned ZigClangFunctionDecl_getAlignedAttribute(const struct ZigClangFunctionDecl *self, const ZigClangASTContext* ctx);
|
|
ZIG_EXTERN_C unsigned ZigClangFieldDecl_getAlignedAttribute(const struct ZigClangFieldDecl *self, const ZigClangASTContext* ctx);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangParmVarDecl_getOriginalType(const struct ZigClangParmVarDecl *self);
|
|
|
|
ZIG_EXTERN_C bool ZigClangRecordDecl_getPackedAttribute(const struct ZigClangRecordDecl *);
|
|
ZIG_EXTERN_C const struct ZigClangRecordDecl *ZigClangRecordDecl_getDefinition(const struct ZigClangRecordDecl *);
|
|
ZIG_EXTERN_C const struct ZigClangEnumDecl *ZigClangEnumDecl_getDefinition(const struct ZigClangEnumDecl *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangRecordDecl_getLocation(const struct ZigClangRecordDecl *);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangEnumDecl_getLocation(const struct ZigClangEnumDecl *);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangTypedefNameDecl_getLocation(const struct ZigClangTypedefNameDecl *);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangDecl_getLocation(const struct ZigClangDecl *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangFunctionDecl_getType(const struct ZigClangFunctionDecl *);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangFunctionDecl_getLocation(const struct ZigClangFunctionDecl *);
|
|
ZIG_EXTERN_C bool ZigClangFunctionDecl_hasBody(const struct ZigClangFunctionDecl *);
|
|
ZIG_EXTERN_C enum ZigClangStorageClass ZigClangFunctionDecl_getStorageClass(const struct ZigClangFunctionDecl *);
|
|
ZIG_EXTERN_C const struct ZigClangParmVarDecl *ZigClangFunctionDecl_getParamDecl(const struct ZigClangFunctionDecl *, unsigned i);
|
|
ZIG_EXTERN_C const struct ZigClangStmt *ZigClangFunctionDecl_getBody(const struct ZigClangFunctionDecl *);
|
|
ZIG_EXTERN_C bool ZigClangFunctionDecl_doesDeclarationForceExternallyVisibleDefinition(const struct ZigClangFunctionDecl *);
|
|
ZIG_EXTERN_C bool ZigClangFunctionDecl_isThisDeclarationADefinition(const struct ZigClangFunctionDecl *);
|
|
ZIG_EXTERN_C bool ZigClangFunctionDecl_doesThisDeclarationHaveABody(const struct ZigClangFunctionDecl *);
|
|
ZIG_EXTERN_C bool ZigClangFunctionDecl_isInlineSpecified(const struct ZigClangFunctionDecl *);
|
|
ZIG_EXTERN_C bool ZigClangFunctionDecl_isDefined(const struct ZigClangFunctionDecl *);
|
|
ZIG_EXTERN_C const struct ZigClangFunctionDecl* ZigClangFunctionDecl_getDefinition(const struct ZigClangFunctionDecl *);
|
|
ZIG_EXTERN_C const char* ZigClangFunctionDecl_getSectionAttribute(const struct ZigClangFunctionDecl *, size_t *);
|
|
|
|
ZIG_EXTERN_C bool ZigClangRecordDecl_isUnion(const struct ZigClangRecordDecl *record_decl);
|
|
ZIG_EXTERN_C bool ZigClangRecordDecl_isStruct(const struct ZigClangRecordDecl *record_decl);
|
|
ZIG_EXTERN_C bool ZigClangRecordDecl_isAnonymousStructOrUnion(const struct ZigClangRecordDecl *record_decl);
|
|
ZIG_EXTERN_C ZigClangRecordDecl_field_iterator ZigClangRecordDecl_field_begin(const struct ZigClangRecordDecl *);
|
|
ZIG_EXTERN_C ZigClangRecordDecl_field_iterator ZigClangRecordDecl_field_end(const struct ZigClangRecordDecl *);
|
|
ZIG_EXTERN_C ZigClangRecordDecl_field_iterator ZigClangRecordDecl_field_iterator_next(struct ZigClangRecordDecl_field_iterator);
|
|
ZIG_EXTERN_C const struct ZigClangFieldDecl * ZigClangRecordDecl_field_iterator_deref(struct ZigClangRecordDecl_field_iterator);
|
|
ZIG_EXTERN_C bool ZigClangRecordDecl_field_iterator_neq(
|
|
struct ZigClangRecordDecl_field_iterator a,
|
|
struct ZigClangRecordDecl_field_iterator b);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangEnumDecl_getIntegerType(const struct ZigClangEnumDecl *);
|
|
ZIG_EXTERN_C ZigClangEnumDecl_enumerator_iterator ZigClangEnumDecl_enumerator_begin(const struct ZigClangEnumDecl *);
|
|
ZIG_EXTERN_C ZigClangEnumDecl_enumerator_iterator ZigClangEnumDecl_enumerator_end(const struct ZigClangEnumDecl *);
|
|
ZIG_EXTERN_C ZigClangEnumDecl_enumerator_iterator ZigClangEnumDecl_enumerator_iterator_next(struct ZigClangEnumDecl_enumerator_iterator);
|
|
ZIG_EXTERN_C const struct ZigClangEnumConstantDecl * ZigClangEnumDecl_enumerator_iterator_deref(struct ZigClangEnumDecl_enumerator_iterator);
|
|
ZIG_EXTERN_C bool ZigClangEnumDecl_enumerator_iterator_neq(
|
|
struct ZigClangEnumDecl_enumerator_iterator a,
|
|
struct ZigClangEnumDecl_enumerator_iterator b);
|
|
|
|
ZIG_EXTERN_C const ZigClangNamedDecl* ZigClangDecl_castToNamedDecl(const ZigClangDecl *self);
|
|
ZIG_EXTERN_C const char *ZigClangNamedDecl_getName_bytes_begin(const struct ZigClangNamedDecl *self);
|
|
ZIG_EXTERN_C enum ZigClangDeclKind ZigClangDecl_getKind(const struct ZigClangDecl *decl);
|
|
ZIG_EXTERN_C const char *ZigClangDecl_getDeclKindName(const struct ZigClangDecl *decl);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangVarDecl_getType(const struct ZigClangVarDecl *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangVarDecl_getInit(const struct ZigClangVarDecl *var_decl);
|
|
ZIG_EXTERN_C enum ZigClangVarDecl_TLSKind ZigClangVarDecl_getTLSKind(const struct ZigClangVarDecl *var_decl);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangVarDecl_getLocation(const struct ZigClangVarDecl *);
|
|
ZIG_EXTERN_C bool ZigClangVarDecl_hasExternalStorage(const struct ZigClangVarDecl *);
|
|
ZIG_EXTERN_C bool ZigClangVarDecl_isFileVarDecl(const struct ZigClangVarDecl *);
|
|
ZIG_EXTERN_C bool ZigClangVarDecl_hasInit(const struct ZigClangVarDecl *);
|
|
ZIG_EXTERN_C const struct ZigClangAPValue *ZigClangVarDecl_evaluateValue(const struct ZigClangVarDecl *);
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangVarDecl_getTypeSourceInfo_getType(const struct ZigClangVarDecl *);
|
|
ZIG_EXTERN_C enum ZigClangStorageClass ZigClangVarDecl_getStorageClass(const struct ZigClangVarDecl *self);
|
|
|
|
ZIG_EXTERN_C bool ZigClangSourceLocation_eq(struct ZigClangSourceLocation a, struct ZigClangSourceLocation b);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangTypedefNameDecl *ZigClangTypedefType_getDecl(const struct ZigClangTypedefType *);
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangTypedefNameDecl_getUnderlyingType(const struct ZigClangTypedefNameDecl *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangQualType_getCanonicalType(struct ZigClangQualType);
|
|
ZIG_EXTERN_C const struct ZigClangType *ZigClangQualType_getTypePtr(struct ZigClangQualType);
|
|
ZIG_EXTERN_C enum ZigClangTypeClass ZigClangQualType_getTypeClass(struct ZigClangQualType);
|
|
ZIG_EXTERN_C void ZigClangQualType_addConst(struct ZigClangQualType *);
|
|
ZIG_EXTERN_C bool ZigClangQualType_eq(struct ZigClangQualType, struct ZigClangQualType);
|
|
ZIG_EXTERN_C bool ZigClangQualType_isConstQualified(struct ZigClangQualType);
|
|
ZIG_EXTERN_C bool ZigClangQualType_isVolatileQualified(struct ZigClangQualType);
|
|
ZIG_EXTERN_C bool ZigClangQualType_isRestrictQualified(struct ZigClangQualType);
|
|
|
|
ZIG_EXTERN_C enum ZigClangTypeClass ZigClangType_getTypeClass(const struct ZigClangType *self);
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangType_getPointeeType(const struct ZigClangType *self);
|
|
ZIG_EXTERN_C bool ZigClangType_isBooleanType(const struct ZigClangType *self);
|
|
ZIG_EXTERN_C bool ZigClangType_isVoidType(const struct ZigClangType *self);
|
|
ZIG_EXTERN_C bool ZigClangType_isArrayType(const struct ZigClangType *self);
|
|
ZIG_EXTERN_C bool ZigClangType_isRecordType(const struct ZigClangType *self);
|
|
ZIG_EXTERN_C bool ZigClangType_isIncompleteOrZeroLengthArrayType(const ZigClangQualType *self, const struct ZigClangASTContext *ctx);
|
|
ZIG_EXTERN_C bool ZigClangType_isConstantArrayType(const ZigClangType *self);
|
|
ZIG_EXTERN_C const char *ZigClangType_getTypeClassName(const struct ZigClangType *self);
|
|
ZIG_EXTERN_C const struct ZigClangArrayType *ZigClangType_getAsArrayTypeUnsafe(const struct ZigClangType *self);
|
|
ZIG_EXTERN_C const ZigClangRecordType *ZigClangType_getAsRecordType(const ZigClangType *self);
|
|
ZIG_EXTERN_C const ZigClangRecordType *ZigClangType_getAsUnionType(const ZigClangType *self);
|
|
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangStmt_getBeginLoc(const struct ZigClangStmt *self);
|
|
ZIG_EXTERN_C enum ZigClangStmtClass ZigClangStmt_getStmtClass(const struct ZigClangStmt *self);
|
|
ZIG_EXTERN_C bool ZigClangStmt_classof_Expr(const struct ZigClangStmt *self);
|
|
|
|
ZIG_EXTERN_C enum ZigClangStmtClass ZigClangExpr_getStmtClass(const struct ZigClangExpr *self);
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangExpr_getType(const struct ZigClangExpr *self);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangExpr_getBeginLoc(const struct ZigClangExpr *self);
|
|
ZIG_EXTERN_C bool ZigClangExpr_EvaluateAsBooleanCondition(const struct ZigClangExpr *self,
|
|
bool *result, const struct ZigClangASTContext *ctx, bool in_constant_context);
|
|
ZIG_EXTERN_C bool ZigClangExpr_EvaluateAsFloat(const struct ZigClangExpr *self,
|
|
ZigClangAPFloat **result, const struct ZigClangASTContext *ctx);
|
|
ZIG_EXTERN_C bool ZigClangExpr_EvaluateAsConstantExpr(const struct ZigClangExpr *,
|
|
struct ZigClangExprEvalResult *, ZigClangExpr_ConstExprUsage, const struct ZigClangASTContext *);
|
|
|
|
ZIG_EXTERN_C const ZigClangExpr *ZigClangInitListExpr_getInit(const ZigClangInitListExpr *, unsigned);
|
|
ZIG_EXTERN_C const ZigClangExpr *ZigClangInitListExpr_getArrayFiller(const ZigClangInitListExpr *);
|
|
ZIG_EXTERN_C unsigned ZigClangInitListExpr_getNumInits(const ZigClangInitListExpr *);
|
|
ZIG_EXTERN_C const ZigClangFieldDecl *ZigClangInitListExpr_getInitializedFieldInUnion(const ZigClangInitListExpr *self);
|
|
|
|
ZIG_EXTERN_C enum ZigClangAPValueKind ZigClangAPValue_getKind(const struct ZigClangAPValue *self);
|
|
ZIG_EXTERN_C const struct ZigClangAPSInt *ZigClangAPValue_getInt(const struct ZigClangAPValue *self);
|
|
ZIG_EXTERN_C unsigned ZigClangAPValue_getArrayInitializedElts(const struct ZigClangAPValue *self);
|
|
ZIG_EXTERN_C const struct ZigClangAPValue *ZigClangAPValue_getArrayInitializedElt(const struct ZigClangAPValue *self, unsigned i);
|
|
ZIG_EXTERN_C const struct ZigClangAPValue *ZigClangAPValue_getArrayFiller(const struct ZigClangAPValue *self);
|
|
ZIG_EXTERN_C unsigned ZigClangAPValue_getArraySize(const struct ZigClangAPValue *self);
|
|
ZIG_EXTERN_C struct ZigClangAPValueLValueBase ZigClangAPValue_getLValueBase(const struct ZigClangAPValue *self);
|
|
|
|
ZIG_EXTERN_C bool ZigClangAPSInt_isSigned(const struct ZigClangAPSInt *self);
|
|
ZIG_EXTERN_C bool ZigClangAPSInt_isNegative(const struct ZigClangAPSInt *self);
|
|
ZIG_EXTERN_C const struct ZigClangAPSInt *ZigClangAPSInt_negate(const struct ZigClangAPSInt *self);
|
|
ZIG_EXTERN_C void ZigClangAPSInt_free(const struct ZigClangAPSInt *self);
|
|
ZIG_EXTERN_C const uint64_t *ZigClangAPSInt_getRawData(const struct ZigClangAPSInt *self);
|
|
ZIG_EXTERN_C unsigned ZigClangAPSInt_getNumWords(const struct ZigClangAPSInt *self);
|
|
|
|
ZIG_EXTERN_C uint64_t ZigClangAPInt_getLimitedValue(const struct ZigClangAPInt *self, uint64_t limit);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangAPValueLValueBase_dyn_cast_Expr(struct ZigClangAPValueLValueBase self);
|
|
|
|
ZIG_EXTERN_C enum ZigClangBuiltinTypeKind ZigClangBuiltinType_getKind(const struct ZigClangBuiltinType *self);
|
|
|
|
ZIG_EXTERN_C bool ZigClangFunctionType_getNoReturnAttr(const struct ZigClangFunctionType *self);
|
|
ZIG_EXTERN_C enum ZigClangCallingConv ZigClangFunctionType_getCallConv(const struct ZigClangFunctionType *self);
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangFunctionType_getReturnType(const struct ZigClangFunctionType *self);
|
|
|
|
ZIG_EXTERN_C bool ZigClangFunctionProtoType_isVariadic(const struct ZigClangFunctionProtoType *self);
|
|
ZIG_EXTERN_C unsigned ZigClangFunctionProtoType_getNumParams(const struct ZigClangFunctionProtoType *self);
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangFunctionProtoType_getParamType(const struct ZigClangFunctionProtoType *self, unsigned i);
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangFunctionProtoType_getReturnType(const struct ZigClangFunctionProtoType *self);
|
|
|
|
|
|
ZIG_EXTERN_C ZigClangCompoundStmt_const_body_iterator ZigClangCompoundStmt_body_begin(const struct ZigClangCompoundStmt *self);
|
|
ZIG_EXTERN_C ZigClangCompoundStmt_const_body_iterator ZigClangCompoundStmt_body_end(const struct ZigClangCompoundStmt *self);
|
|
|
|
ZIG_EXTERN_C ZigClangDeclStmt_const_decl_iterator ZigClangDeclStmt_decl_begin(const struct ZigClangDeclStmt *self);
|
|
ZIG_EXTERN_C ZigClangDeclStmt_const_decl_iterator ZigClangDeclStmt_decl_end(const struct ZigClangDeclStmt *self);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangDeclStmt_getBeginLoc(const struct ZigClangDeclStmt *self);
|
|
|
|
ZIG_EXTERN_C unsigned ZigClangAPFloat_convertToHexString(const struct ZigClangAPFloat *self, char *DST,
|
|
unsigned HexDigits, bool UpperCase, enum ZigClangAPFloat_roundingMode RM);
|
|
ZIG_EXTERN_C double ZigClangFloatingLiteral_getValueAsApproximateDouble(const ZigClangFloatingLiteral *self);
|
|
|
|
ZIG_EXTERN_C enum ZigClangStringLiteral_StringKind ZigClangStringLiteral_getKind(const struct ZigClangStringLiteral *self);
|
|
ZIG_EXTERN_C const char *ZigClangStringLiteral_getString_bytes_begin_size(const struct ZigClangStringLiteral *self,
|
|
size_t *len);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangStringLiteral *ZigClangPredefinedExpr_getFunctionName(
|
|
const struct ZigClangPredefinedExpr *self);
|
|
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangImplicitCastExpr_getBeginLoc(const struct ZigClangImplicitCastExpr *);
|
|
ZIG_EXTERN_C enum ZigClangCK ZigClangImplicitCastExpr_getCastKind(const struct ZigClangImplicitCastExpr *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangImplicitCastExpr_getSubExpr(const struct ZigClangImplicitCastExpr *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangArrayType_getElementType(const struct ZigClangArrayType *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangIncompleteArrayType_getElementType(const struct ZigClangIncompleteArrayType *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangConstantArrayType_getElementType(const struct ZigClangConstantArrayType *);
|
|
ZIG_EXTERN_C const struct ZigClangAPInt *ZigClangConstantArrayType_getSize(const struct ZigClangConstantArrayType *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangValueDecl *ZigClangDeclRefExpr_getDecl(const struct ZigClangDeclRefExpr *);
|
|
ZIG_EXTERN_C const struct ZigClangNamedDecl *ZigClangDeclRefExpr_getFoundDecl(const struct ZigClangDeclRefExpr *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangParenType_getInnerType(const struct ZigClangParenType *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangAttributedType_getEquivalentType(const struct ZigClangAttributedType *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangMacroQualifiedType_getModifiedType(const struct ZigClangMacroQualifiedType *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangElaboratedType_getNamedType(const struct ZigClangElaboratedType *);
|
|
ZIG_EXTERN_C enum ZigClangElaboratedTypeKeyword ZigClangElaboratedType_getKeyword(const struct ZigClangElaboratedType *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangCStyleCastExpr_getBeginLoc(const struct ZigClangCStyleCastExpr *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangCStyleCastExpr_getSubExpr(const struct ZigClangCStyleCastExpr *);
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangCStyleCastExpr_getType(const struct ZigClangCStyleCastExpr *);
|
|
|
|
ZIG_EXTERN_C bool ZigClangIntegerLiteral_EvaluateAsInt(const struct ZigClangIntegerLiteral *, struct ZigClangExprEvalResult *, const struct ZigClangASTContext *);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangIntegerLiteral_getBeginLoc(const struct ZigClangIntegerLiteral *);
|
|
ZIG_EXTERN_C bool ZigClangIntegerLiteral_isZero(const struct ZigClangIntegerLiteral *, bool *, const struct ZigClangASTContext *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangReturnStmt_getRetValue(const struct ZigClangReturnStmt *);
|
|
|
|
ZIG_EXTERN_C enum ZigClangBO ZigClangBinaryOperator_getOpcode(const struct ZigClangBinaryOperator *);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangBinaryOperator_getBeginLoc(const struct ZigClangBinaryOperator *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangBinaryOperator_getLHS(const struct ZigClangBinaryOperator *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangBinaryOperator_getRHS(const struct ZigClangBinaryOperator *);
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangBinaryOperator_getType(const struct ZigClangBinaryOperator *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangDecayedType_getDecayedType(const struct ZigClangDecayedType *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangCompoundStmt *ZigClangStmtExpr_getSubStmt(const struct ZigClangStmtExpr *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangCharacterLiteral_getBeginLoc(const struct ZigClangCharacterLiteral *);
|
|
ZIG_EXTERN_C enum ZigClangCharacterLiteral_CharacterKind ZigClangCharacterLiteral_getKind(const struct ZigClangCharacterLiteral *);
|
|
ZIG_EXTERN_C unsigned ZigClangCharacterLiteral_getValue(const struct ZigClangCharacterLiteral *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangAbstractConditionalOperator_getCond(const struct ZigClangAbstractConditionalOperator *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangAbstractConditionalOperator_getTrueExpr(const struct ZigClangAbstractConditionalOperator *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangAbstractConditionalOperator_getFalseExpr(const struct ZigClangAbstractConditionalOperator *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangCompoundAssignOperator_getType(const struct ZigClangCompoundAssignOperator *);
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangCompoundAssignOperator_getComputationLHSType(const struct ZigClangCompoundAssignOperator *);
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangCompoundAssignOperator_getComputationResultType(const struct ZigClangCompoundAssignOperator *);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangCompoundAssignOperator_getBeginLoc(const struct ZigClangCompoundAssignOperator *);
|
|
ZIG_EXTERN_C enum ZigClangBO ZigClangCompoundAssignOperator_getOpcode(const struct ZigClangCompoundAssignOperator *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangCompoundAssignOperator_getLHS(const struct ZigClangCompoundAssignOperator *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangCompoundAssignOperator_getRHS(const struct ZigClangCompoundAssignOperator *);
|
|
|
|
ZIG_EXTERN_C enum ZigClangUO ZigClangUnaryOperator_getOpcode(const struct ZigClangUnaryOperator *);
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangUnaryOperator_getType(const struct ZigClangUnaryOperator *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangUnaryOperator_getSubExpr(const struct ZigClangUnaryOperator *);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangUnaryOperator_getBeginLoc(const struct ZigClangUnaryOperator *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangWhileStmt_getCond(const struct ZigClangWhileStmt *);
|
|
ZIG_EXTERN_C const struct ZigClangStmt *ZigClangWhileStmt_getBody(const struct ZigClangWhileStmt *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangStmt *ZigClangIfStmt_getThen(const struct ZigClangIfStmt *);
|
|
ZIG_EXTERN_C const struct ZigClangStmt *ZigClangIfStmt_getElse(const struct ZigClangIfStmt *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangIfStmt_getCond(const struct ZigClangIfStmt *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangCallExpr_getCallee(const struct ZigClangCallExpr *);
|
|
ZIG_EXTERN_C unsigned ZigClangCallExpr_getNumArgs(const struct ZigClangCallExpr *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr * const * ZigClangCallExpr_getArgs(const struct ZigClangCallExpr *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangMemberExpr_getBase(const struct ZigClangMemberExpr *);
|
|
ZIG_EXTERN_C bool ZigClangMemberExpr_isArrow(const struct ZigClangMemberExpr *);
|
|
ZIG_EXTERN_C const struct ZigClangValueDecl * ZigClangMemberExpr_getMemberDecl(const struct ZigClangMemberExpr *);
|
|
|
|
ZIG_EXTERN_C const ZigClangExpr *ZigClangOpaqueValueExpr_getSourceExpr(const struct ZigClangOpaqueValueExpr *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangArraySubscriptExpr_getBase(const struct ZigClangArraySubscriptExpr *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangArraySubscriptExpr_getIdx(const struct ZigClangArraySubscriptExpr *);
|
|
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangUnaryExprOrTypeTraitExpr_getTypeOfArgument(const struct ZigClangUnaryExprOrTypeTraitExpr *);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangUnaryExprOrTypeTraitExpr_getBeginLoc(const struct ZigClangUnaryExprOrTypeTraitExpr *);
|
|
ZIG_EXTERN_C enum ZigClangUnaryExprOrTypeTrait_Kind ZigClangUnaryExprOrTypeTraitExpr_getKind(const struct ZigClangUnaryExprOrTypeTraitExpr *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangStmt *ZigClangDoStmt_getBody(const struct ZigClangDoStmt *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangDoStmt_getCond(const struct ZigClangDoStmt *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangStmt *ZigClangForStmt_getInit(const struct ZigClangForStmt *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangForStmt_getCond(const struct ZigClangForStmt *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangForStmt_getInc(const struct ZigClangForStmt *);
|
|
ZIG_EXTERN_C const struct ZigClangStmt *ZigClangForStmt_getBody(const struct ZigClangForStmt *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangDeclStmt *ZigClangSwitchStmt_getConditionVariableDeclStmt(const struct ZigClangSwitchStmt *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangSwitchStmt_getCond(const struct ZigClangSwitchStmt *);
|
|
ZIG_EXTERN_C const struct ZigClangStmt *ZigClangSwitchStmt_getBody(const struct ZigClangSwitchStmt *);
|
|
ZIG_EXTERN_C bool ZigClangSwitchStmt_isAllEnumCasesCovered(const struct ZigClangSwitchStmt *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangCaseStmt_getLHS(const struct ZigClangCaseStmt *);
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangCaseStmt_getRHS(const struct ZigClangCaseStmt *);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangCaseStmt_getBeginLoc(const struct ZigClangCaseStmt *);
|
|
ZIG_EXTERN_C const struct ZigClangStmt *ZigClangCaseStmt_getSubStmt(const struct ZigClangCaseStmt *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangStmt *ZigClangDefaultStmt_getSubStmt(const struct ZigClangDefaultStmt *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangParenExpr_getSubExpr(const struct ZigClangParenExpr *);
|
|
|
|
ZIG_EXTERN_C const char *ZigClangMacroDefinitionRecord_getName_getNameStart(const struct ZigClangMacroDefinitionRecord *);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangMacroDefinitionRecord_getSourceRange_getBegin(const struct ZigClangMacroDefinitionRecord *);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangMacroDefinitionRecord_getSourceRange_getEnd(const struct ZigClangMacroDefinitionRecord *);
|
|
|
|
ZIG_EXTERN_C bool ZigClangFieldDecl_isBitField(const struct ZigClangFieldDecl *);
|
|
ZIG_EXTERN_C bool ZigClangFieldDecl_isAnonymousStructOrUnion(const ZigClangFieldDecl *);
|
|
ZIG_EXTERN_C struct ZigClangQualType ZigClangFieldDecl_getType(const struct ZigClangFieldDecl *);
|
|
ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangFieldDecl_getLocation(const struct ZigClangFieldDecl *);
|
|
|
|
ZIG_EXTERN_C const struct ZigClangExpr *ZigClangEnumConstantDecl_getInitExpr(const struct ZigClangEnumConstantDecl *);
|
|
ZIG_EXTERN_C const struct ZigClangAPSInt *ZigClangEnumConstantDecl_getInitVal(const struct ZigClangEnumConstantDecl *);
|
|
#endif
|