Module Clang__.Attributes

include sig ... end
include sig ... end
type ('expr, 'qual_type, 'declaration_name) t =
| AMDGPUFlatWorkGroupSize of {
min : 'expr;
max : 'expr;
}
| AMDGPUNumSGPR of int
| AMDGPUNumVGPR of int
| AMDGPUWavesPerEU of {
min : 'expr;
max : 'expr;
}
| ARMInterrupt of Clang__.Clang__bindings.clang_ext_arminterruptattr_interrupttype
| AbiTag of string list
| AcquireCapability of {
spelling : Clang__.Clang__bindings.clang_ext_acquirecapability_spelling;
args : 'expr list;
}
| AcquireHandle of string
| AcquiredAfter of 'expr list
| AcquiredBefore of 'expr list
| AddressSpace of int
| Alias of string
| AlignValue of 'expr
| Aligned of {
spelling : Clang__.Clang__bindings.clang_ext_aligned_spelling;
alignment_expr : 'expr;
}
| AllocAlign of int
| AllocSize of {
elem_size : int;
num_elems : int;
}
| AlwaysInline of Clang__.Clang__bindings.clang_ext_alwaysinline_spelling
| Annotate of string
| ArgumentWithTypeTag of {
spelling : Clang__.Clang__bindings.clang_ext_argumentwithtypetag_spelling;
argument_kind : string;
argument_idx : int;
type_tag_idx : int;
is_pointer : bool;
}
| ArmMveAlias of string
| AsmLabel of {
label : string;
is_literal_label : bool;
}
| AssertCapability of {
spelling : Clang__.Clang__bindings.clang_ext_assertcapability_spelling;
args : 'expr list;
}
| AssertExclusiveLock of 'expr list
| AssertSharedLock of 'expr list
| AssumeAligned of {
alignment : 'expr;
offset : 'expr;
}
| Availability of {
platform : string;
introduced : Clang__.Clang__bindings.clang_ext_versiontuple;
deprecated : Clang__.Clang__bindings.clang_ext_versiontuple;
obsoleted : Clang__.Clang__bindings.clang_ext_versiontuple;
unavailable : bool;
message : string;
strict : bool;
replacement : string;
priority : int;
}
| Blocks of Clang__.Clang__bindings.clang_ext_blocksattr_blocktype
| CFGuard of Clang__.Clang__bindings.clang_ext_cfguardattr_guardarg
| CPUDispatch of string list
| CPUSpecific of string list
| CUDALaunchBounds of {
max_threads : 'expr;
min_blocks : 'expr;
}
| CallableWhen of Clang__.Clang__bindings.clang_ext_callablewhenattr_consumedstate list
| Callback of int list
| Capability of {
spelling : Clang__.Clang__bindings.clang_ext_capability_spelling;
name : string;
}
| Cleanup of 'declaration_name
| CodeSeg of string
| ConstInit of Clang__.Clang__bindings.clang_ext_constinit_spelling
| Constructor of int
| Consumable of Clang__.Clang__bindings.clang_ext_consumableattr_consumedstate
| Deprecated of {
message : string;
replacement : string;
}
| Destructor of int
| DiagnoseIf of {
cond : 'expr;
message : string;
}
| EnableIf of {
cond : 'expr;
message : string;
}
| EnumExtensibility of Clang__.Clang__bindings.clang_ext_enumextensibilityattr_kind
| ExclusiveTrylockFunction of {
success_value : 'expr;
args : 'expr list;
}
| ExternalSourceSymbol of {
language : string;
defined_in : string;
generated_declaration : bool;
}
| Final of Clang__.Clang__bindings.clang_ext_final_spelling
| Format of {
type_ : string;
format_idx : int;
first_arg : int;
}
| FormatArg of int
| GuardedBy of 'expr
| IBOutletCollection of 'qual_type
| IFunc of string
| InitPriority of int
| InitSeg of string
| LayoutVersion of int
| LockReturned of 'expr
| LocksExcluded of 'expr list
| LoopHint of {
spelling : Clang__.Clang__bindings.clang_ext_loophint_spelling;
option : Clang__.Clang__bindings.clang_ext_loophintattr_optiontype;
}
| MSInheritance of {
spelling : Clang__.Clang__bindings.clang_ext_msinheritance_spelling;
best_case : bool;
}
| MSP430Interrupt of int
| MSVtorDisp of int
| MaxFieldAlignment of int
| MinVectorWidth of int
| MipsInterrupt of Clang__.Clang__bindings.clang_ext_mipsinterruptattr_interrupttype
| MipsLongCall of Clang__.Clang__bindings.clang_ext_mipslongcall_spelling
| MipsShortCall of Clang__.Clang__bindings.clang_ext_mipsshortcall_spelling
| Mode of string
| NoBuiltin of string list
| NoSanitize of string list
| NonNull of int list
| OMPAllocateDecl of {
allocator_type : Clang__.Clang__bindings.clang_ext_ompallocatedeclattr_allocatortypety;
allocator : 'expr;
}
| OMPCaptureKind of int
| OMPDeclareSimdDecl of {
branch_state : Clang__.Clang__bindings.clang_ext_ompdeclaresimddeclattr_branchstatety;
simdlen : 'expr;
uniforms : 'expr list;
aligneds : 'expr list;
alignments : 'expr list;
linears : 'expr list;
modifiers : int list;
steps : 'expr list;
}
| OMPDeclareTargetDecl of Clang__.Clang__bindings.clang_ext_ompdeclaretargetdeclattr_maptypety
| OMPDeclareVariant of {
variant_func_ref : 'expr;
scores : 'expr list;
ctx_selector_sets : int list;
ctx_selectors : int list;
impl_vendors : string list;
device_kinds : string list;
}
| OMPReferencedVar of 'expr
| ObjCBridge of string
| ObjCBridgeMutable of string
| ObjCBridgeRelated of {
related_class : string;
class_method : string;
instance_method : string;
}
| ObjCGC of string
| ObjCMethodFamily of Clang__.Clang__bindings.clang_ext_objcmethodfamilyattr_familykind
| ObjCOwnership of string
| ObjCRuntimeName of string
| OpenCLAccess of Clang__.Clang__bindings.clang_ext_openclaccess_spelling
| OpenCLConstantAddressSpace of Clang__.Clang__bindings.clang_ext_openclconstantaddressspace_spelling
| OpenCLGenericAddressSpace of Clang__.Clang__bindings.clang_ext_openclgenericaddressspace_spelling
| OpenCLGlobalAddressSpace of Clang__.Clang__bindings.clang_ext_openclglobaladdressspace_spelling
| OpenCLIntelReqdSubGroupSize of int
| OpenCLLocalAddressSpace of Clang__.Clang__bindings.clang_ext_opencllocaladdressspace_spelling
| OpenCLPrivateAddressSpace of Clang__.Clang__bindings.clang_ext_openclprivateaddressspace_spelling
| OpenCLUnrollHint of int
| Owner of 'qual_type
| Ownership of {
spelling : Clang__.Clang__bindings.clang_ext_ownership_spelling;
module_ : string;
args : int list;
}
| ParamTypestate of Clang__.Clang__bindings.clang_ext_paramtypestateattr_consumedstate
| PassObjectSize of {
spelling : Clang__.Clang__bindings.clang_ext_passobjectsize_spelling;
type_ : int;
}
| PatchableFunctionEntry of {
count : int;
offset : int;
}
| Pcs of Clang__.Clang__bindings.clang_ext_pcsattr_pcstype
| Pointer of 'qual_type
| PragmaClangBSSSection of string
| PragmaClangDataSection of string
| PragmaClangRelroSection of string
| PragmaClangRodataSection of string
| PragmaClangTextSection of string
| PtGuardedBy of 'expr
| RISCVInterrupt of Clang__.Clang__bindings.clang_ext_riscvinterruptattr_interrupttype
| ReleaseCapability of {
spelling : Clang__.Clang__bindings.clang_ext_releasecapability_spelling;
args : 'expr list;
}
| ReleaseHandle of string
| ReqdWorkGroupSize of {
x_dim : int;
y_dim : int;
z_dim : int;
}
| RequiresCapability of {
spelling : Clang__.Clang__bindings.clang_ext_requirescapability_spelling;
args : 'expr list;
}
| Restrict of Clang__.Clang__bindings.clang_ext_restrict_spelling
| ReturnTypestate of Clang__.Clang__bindings.clang_ext_returntypestateattr_consumedstate
| Section of {
spelling : Clang__.Clang__bindings.clang_ext_section_spelling;
name : string;
}
| Sentinel of {
sentinel : int;
null_pos : int;
}
| SetTypestate of Clang__.Clang__bindings.clang_ext_settypestateattr_consumedstate
| SharedTrylockFunction of {
success_value : 'expr;
args : 'expr list;
}
| Suppress of string list
| TLSModel of string
| Target of string
| TestTypestate of Clang__.Clang__bindings.clang_ext_testtypestateattr_consumedstate
| TryAcquireCapability of {
spelling : Clang__.Clang__bindings.clang_ext_tryacquirecapability_spelling;
success_value : 'expr;
args : 'expr list;
}
| TypeTagForDatatype of {
argument_kind : string;
matching_ctype : 'qual_type;
layout_compatible : bool;
must_be_null : bool;
}
| TypeVisibility of Clang__.Clang__bindings.clang_ext_typevisibilityattr_visibilitytype
| Unavailable of string
| Unused of Clang__.Clang__bindings.clang_ext_unused_spelling
| UseHandle of string
| Uuid of string
| VecTypeHint of 'qual_type
| Visibility of Clang__.Clang__bindings.clang_ext_visibilityattr_visibilitytype
| WarnUnusedResult of {
spelling : Clang__.Clang__bindings.clang_ext_warnunusedresult_spelling;
message : string;
}
| WeakRef of string
| WebAssemblyExportName of string
| WebAssemblyImportModule of string
| WebAssemblyImportName of string
| WorkGroupSizeHint of {
x_dim : int;
y_dim : int;
z_dim : int;
}
| XRayInstrument of Clang__.Clang__bindings.clang_ext_xrayinstrument_spelling
| XRayLogArgs of int
| Other of Clang__.Clang__bindings.clang_ext_attrkind
val convert : Clang__.Clang__bindings.cxcursor -> (Clang__.Clang__bindings.cxcursor -> 'a) -> (Clang__.Clang__bindings.clang_ext_typeloc -> 'b) -> (Clang__.Clang__bindings.clang_ext_declarationname -> 'c) -> ('a'b'c) t