From 3a5c261275f99c6612dfe601b006ec19804abf66 Mon Sep 17 00:00:00 2001
From: Nikos Gorogiannis OPTIONS
null.
--noescaping-function-list ++string
+ +Useful for the check +CXX_REF_CAPTURED_IN_BLOCK. It declares a list of functions +that take blocks as arguments that are no escaping but we +cannot annotate them accordingly.
+ + +--objc-block-execution-macro +string
+ +Macro for executing Objective-C +blocks safely.
+ +--no-parameter-not-null-checked
Deactivates: @@ -500,6 +516,15 @@
Activates: Also log messages to stdout and stderr (Conversely: --no-print-logs)
+ +--procs-to-analyze-index +file
+ +Specify the file containing an +Sexp representing a list of pairs of procedures and +specializations to analyze. Only works with the restart +scheduler.
+--progress-bar-style { auto | plain | multiline }
@@ -1007,6 +1032,13 @@--annotation-reachability-check-loops
+ +Activates: Highlights callsites +in the trace that are nested in some loop. (Conversely: +--no-annotation-reachability-check-loops)
+ +--annotation-reachability-custom-models json
@@ -1039,6 +1071,16 @@--no-annotation-reachability-minimize-sinks
+ +Deactivates: do not report +paths where a prefix is also a source to sink path. For +example if there is a source() -> sink1() -> sink2() +path then only source() -> sink1() will be reported. +(Conversely: +--annotation-reachability-minimize-sinks)
+ +--annotation-reachability-minimize-sources
Activates: do not report paths @@ -1461,16 +1503,6 @@
Maximum number of summary specialization by procedure.
- ---no-pulse-taint-check-history
- -Deactivates: Check values -histories for taint events before reporting a taint issue. -This is a temporary flag while the taint analysis -transitions from being mainly attribute-based to being -history-based. (Conversely: ---pulse-taint-check-history)
---pulse-taint-config +path
@@ -1498,6 +1530,14 @@--no-pulse-taint-follow-field-accesses
+ +Deactivates: Specify if taint +analysis should follow field accesses when propagating +taints. (Conversely: +--pulse-taint-follow-field-accesses)
+ +--pulse-taint-opaque-files +path
diff --git a/website/static/man/next/infer.1.html b/website/static/man/next/infer.1.html index 56c6ab08577..2178fd7e7cb 100644 --- a/website/static/man/next/infer.1.html +++ b/website/static/man/next/infer.1.html @@ -151,6 +151,14 @@See also
+infer-analyze(1).
+--annotation-reachability-check-loops
Activates: Highlights callsites +in the trace that are nested in some loop. (Conversely: +--no-annotation-reachability-check-loops)
+See also
infer-analyze(1).
--annotation-reachability-custom-models json
See also
+infer-analyze(1).
+--no-annotation-reachability-minimize-sinks
Deactivates: do not report +paths where a prefix is also a source to sink path. For +example if there is a source() -> sink1() -> sink2() +path then only source() -> sink1() will be reported. +(Conversely: +--annotation-reachability-minimize-sinks)
+See also
infer-analyze(1).
--annotation-reachability-minimize-sources
See also
infer-analyze(1), infer-capture(1), and
infer-run(1).
+--noescaping-function-list +string
Useful for the check +CXX_REF_CAPTURED_IN_BLOCK. It declares a list of functions +that take blocks as arguments that are no escaping but we +cannot annotate them accordingly.
+ +See also
+infer-analyze(1).
+--objc-block-execution-macro string
Macro for executing Objective-C +blocks safely.
+ +See also
+infer-analyze(1).
--objc-synthesize-dealloc
Activates: If enabled, the @@ -2103,6 +2138,15 @@
See also infer-debug(1).
+--procs-to-analyze-index file
Specify the file containing an +Sexp representing a list of pairs of procedures and +specializations to analyze. Only works with the restart +scheduler.
+ +See also
+infer-analyze(1).
--no-progress-bar,-P
Deactivates: Show a progress @@ -2435,17 +2479,6 @@
Maximum number of summary specialization by procedure.
-See also
-infer-analyze(1).
---no-pulse-taint-check-history
Deactivates: Check values -histories for taint events before reporting a taint issue. -This is a temporary flag while the taint analysis -transitions from being mainly attribute-based to being -history-based. (Conversely: ---pulse-taint-check-history)
-See also
infer-analyze(1).
--pulse-taint-config +path
See also
+infer-analyze(1).
+--no-pulse-taint-follow-field-accesses
Deactivates: Specify if taint +analysis should follow field accesses when propagating +taints. (Conversely: +--pulse-taint-follow-field-accesses)
+See also
infer-analyze(1).
--pulse-taint-opaque-files +path
odlei_dict_method : pointer option;
}
type predefined_expr_type = Clang_ast_t.predefined_expr_type
type property_attribute = Clang_ast_t.property_attribute
type property_implementation = Clang_ast_t.property_implementation
type record_decl_info = Clang_ast_t.record_decl_info = {
rdi_definition_ptr : pointer;
rdi_is_module_private : bool;
rdi_is_complete_definition : bool;
rdi_is_dependent_type : bool;
}
type selector = Clang_ast_t.selector
type obj_c_subscript_ref_expr_info = Clang_ast_t.obj_c_subscript_ref_expr_info =
{
osrei_kind : obj_c_subscript_kind;
osrei_getter : selector option;
osrei_setter : selector option;
}
type objc_boxed_expr_info = Clang_ast_t.objc_boxed_expr_info = {
obei_boxing_method : selector option;
}
type source_file = Clang_ast_t.source_file
type source_location = Clang_ast_t.source_location = {
mutable sl_file : source_file option;
mutable sl_line : int option;
mutable sl_column : int option;
sl_is_macro : bool;
mutable sl_macro_file : source_file option;
mutable sl_macro_line : int option;
}
type source_range = Clang_ast_t.source_range
type attribute_info = Clang_ast_t.attribute_info = {
ai_pointer : pointer;
ai_source_range : source_range;
}
type attr_tuple = Clang_ast_t.attr_tuple
type comment_info = Clang_ast_t.comment_info = {
ci_parent_pointer : pointer;
ci_source_range : source_range;
}
type specifier_kind = Clang_ast_t.specifier_kind
type tag_kind = Clang_ast_t.tag_kind
type type_ptr = Clang_ast_t.type_ptr
type qual_type = Clang_ast_t.qual_type = {
qt_type_ptr : type_ptr;
qt_is_const : bool;
qt_is_restrict : bool;
qt_is_volatile : bool;
}
type array_type_info = Clang_ast_t.array_type_info = {
arti_element_type : qual_type;
arti_stride : int option;
}
type cxx_delete_expr_info = Clang_ast_t.cxx_delete_expr_info = {
xdei_is_array : bool;
xdei_destroyed_type : qual_type;
}
type decl_ref = Clang_ast_t.decl_ref = {
dr_kind : decl_kind;
dr_decl_pointer : pointer;
dr_name : named_decl_info option;
dr_qual_type : qual_type option;
}
type cxx_construct_expr_info = Clang_ast_t.cxx_construct_expr_info = {
xcei_decl_ref : decl_ref;
xcei_is_elidable : bool;
xcei_requires_zero_initialization : bool;
xcei_is_copy_constructor : bool;
}
type cxx_ctor_initializer_subject = Clang_ast_t.cxx_ctor_initializer_subject
type expr_with_cleanups_info = Clang_ast_t.expr_with_cleanups_info = {
ewci_decl_refs : decl_ref list;
}
type cxx_delete_expr_info = Clang_ast_t.cxx_delete_expr_info = {
xdei_is_array : bool;
xdei_destroyed_type : qual_type;
}
type decl_ref = Clang_ast_t.decl_ref = {
dr_kind : decl_kind;
dr_decl_pointer : pointer;
dr_name : named_decl_info option;
dr_qual_type : qual_type option;
}
type cxx_construct_expr_info = Clang_ast_t.cxx_construct_expr_info = {
xcei_decl_ref : decl_ref;
xcei_is_elidable : bool;
xcei_requires_zero_initialization : bool;
xcei_is_copy_constructor : bool;
}
type cxx_ctor_initializer_subject = Clang_ast_t.cxx_ctor_initializer_subject
type expr_with_cleanups_info = Clang_ast_t.expr_with_cleanups_info = {
ewci_decl_refs : decl_ref list;
}
type materialize_temporary_expr_info =
Clang_ast_t.materialize_temporary_expr_info =
{
mtei_decl_ref : decl_ref option;
}
type member_expr_info = Clang_ast_t.member_expr_info = {
mei_is_arrow : bool;
mei_performs_virtual_dispatch : bool;
mei_name : named_decl_info;
mei_decl_ref : decl_ref;
}
type namespace_decl_info = Clang_ast_t.namespace_decl_info = {
ndi_is_inline : bool;
ndi_original_namespace : decl_ref option;
}
type nested_name_specifier_loc = Clang_ast_t.nested_name_specifier_loc = {
nnsl_kind : specifier_kind;
nnsl_ref : decl_ref option;
}
type namespace_alias_decl_info = Clang_ast_t.namespace_alias_decl_info = {
nadi_namespace_loc : source_location;
nadi_target_name_loc : source_location;
nadi_nested_name_specifier_locs : nested_name_specifier_loc list;
nadi_namespace : decl_ref;
}
type obj_c_category_decl_info = Clang_ast_t.obj_c_category_decl_info = {
odi_class_interface : decl_ref option;
odi_implementation : decl_ref option;
odi_protocols : decl_ref list;
}
type obj_c_compatible_alias_decl_info =
@@ -15,7 +15,7 @@
{
opidi_implementation : property_implementation;
opidi_property_decl : decl_ref option;
opidi_ivar_decl : decl_ref option;
}
type obj_c_protocol_decl_info = Clang_ast_t.obj_c_protocol_decl_info = {
opcdi_protocols : decl_ref list;
}
type objc_encode_expr_info = Clang_ast_t.objc_encode_expr_info = {
oeei_qual_type : qual_type;
oeei_raw : string;
}
type overload_expr_info = Clang_ast_t.overload_expr_info = {
oei_decls : decl_ref list;
oei_name : declaration_name;
}
type property_ref_kind = Clang_ast_t.property_ref_kind
type obj_c_property_ref_expr_info = Clang_ast_t.obj_c_property_ref_expr_info = {
oprei_kind : property_ref_kind;
oprei_is_super_receiver : bool;
oprei_is_messaging_getter : bool;
oprei_is_messaging_setter : bool;
}
type receiver_kind = Clang_ast_t.receiver_kind
type obj_c_message_expr_info = Clang_ast_t.obj_c_message_expr_info = {
omei_selector : string;
omei_is_definition_found : bool;
omei_decl_pointer : pointer option;
omei_receiver_kind : receiver_kind;
}
type c_type = Clang_ast_t.c_type =
| NoneType of type_info
| AdjustedType of type_info * qual_type
| DecayedType of type_info * qual_type
| ConstantArrayType of type_info * array_type_info * int
| DependentSizedArrayType of type_info * array_type_info
| IncompleteArrayType of type_info * array_type_info
| VariableArrayType of type_info * array_type_info * pointer
| AtomicType of type_info * qual_type
| AttributedType of type_info * attr_type_info
| BTFTagAttributedType of type_info
| BitIntType of type_info
| BlockPointerType of type_info * qual_type
| BuiltinType of type_info * builtin_type_kind
| ComplexType of type_info
| DecltypeType of type_info * qual_type
| AutoType of type_info
| DeducedTemplateSpecializationType of type_info
| DependentAddressSpaceType of type_info
| DependentBitIntType of type_info
| DependentNameType of type_info
| DependentSizedExtVectorType of type_info
| DependentTemplateSpecializationType of type_info
| DependentVectorType of type_info
| ElaboratedType of type_info
| FunctionNoProtoType of type_info * function_type_info
| FunctionProtoType of type_info * function_type_info * params_type_info
| InjectedClassNameType of type_info
| MacroQualifiedType of type_info
| ConstantMatrixType of type_info
| DependentSizedMatrixType of type_info
| MemberPointerType of type_info * qual_type
| ObjCObjectPointerType of type_info * qual_type
| ObjCObjectType of type_info * objc_object_type_info
| ObjCInterfaceType of type_info * pointer
| ObjCTypeParamType of type_info
| PackExpansionType of type_info
| ParenType of type_info * qual_type
| PipeType of type_info
| PointerType of type_info * qual_type
| LValueReferenceType of type_info * qual_type
| RValueReferenceType of type_info * qual_type
| SubstTemplateTypeParmPackType of type_info
| SubstTemplateTypeParmType of type_info
| EnumType of type_info * pointer
| RecordType of type_info * pointer
| TemplateSpecializationType of type_info
| TemplateTypeParmType of type_info
| TypeOfExprType of type_info
| TypeOfType of type_info
| TypedefType of type_info * typedef_type_info
| UnaryTransformType of type_info
| UnresolvedUsingType of type_info
| UsingType of type_info
| VectorType of type_info
| ExtVectorType of type_info
type translation_unit_decl_info = Clang_ast_t.translation_unit_decl_info = {
tudi_input_path : source_file;
tudi_input_kind : input_kind;
tudi_integer_type_widths : integer_type_widths;
tudi_is_objc_arc_on : bool;
tudi_types : c_type list;
}
type unary_expr_or_type_trait_kind = Clang_ast_t.unary_expr_or_type_trait_kind
type unary_expr_or_type_trait_expr_info =
Clang_ast_t.unary_expr_or_type_trait_expr_info =
{
uttei_kind : unary_expr_or_type_trait_kind;
uttei_qual_type : qual_type;
}
type unary_operator_kind = Clang_ast_t.unary_operator_kind
type unary_operator_info = Clang_ast_t.unary_operator_info = {
uoi_kind : unary_operator_kind;
uoi_is_postfix : bool;
}
type unresolved_lookup_expr_info = Clang_ast_t.unresolved_lookup_expr_info = {
ulei_requires_ADL : bool;
ulei_is_overloaded : bool;
ulei_naming_class : decl_ref option;
}
type using_directive_decl_info = Clang_ast_t.using_directive_decl_info = {
uddi_using_location : source_location;
uddi_namespace_key_location : source_location;
uddi_nested_name_specifier_locs : nested_name_specifier_loc list;
uddi_nominated_namespace : decl_ref option;
}
type value_kind = Clang_ast_t.value_kind
type expr_info = Clang_ast_t.expr_info = {
ei_qual_type : qual_type;
ei_value_kind : value_kind;
ei_object_kind : object_kind;
}
type availability_attr_info = Clang_ast_t.availability_attr_info = {
aai_platform : string option;
aai_introduced : version_tuple;
}
type visibility_attr = Clang_ast_t.visibility_attr =
type attribute = Clang_ast_t.attribute
type template_instantiation_arg_info =
- Clang_ast_t.template_instantiation_arg_info
type comment = Clang_ast_t.comment =
| VerbatimBlockLineComment of comment_info * comment list
| TextComment of comment_info * comment list
| InlineCommandComment of comment_info * comment list
| HTMLStartTagComment of comment_info * comment list
| HTMLEndTagComment of comment_info * comment list
| FullComment of comment_info * comment list
| ParagraphComment of comment_info * comment list
| BlockCommandComment of comment_info * comment list
| VerbatimLineComment of comment_info * comment list
| VerbatimBlockComment of comment_info * comment list
| TParamCommandComment of comment_info * comment list
| ParamCommandComment of comment_info * comment list
type template_specialization_info = Clang_ast_t.template_specialization_info = {
tsi_template_decl : pointer;
tsi_specialization_args : template_instantiation_arg_info list;
}
type decl_info = Clang_ast_t.decl_info = {
di_pointer : pointer;
di_parent_pointer : pointer option;
di_source_range : source_range;
di_owning_module : string option;
di_is_implicit : bool;
di_is_used : bool;
di_is_this_declaration_referenced : bool;
di_is_invalid_decl : bool;
di_attributes : attribute list;
di_full_comment : comment option;
di_access : access_specifier;
}
type block_captured_variable = Clang_ast_t.block_captured_variable = {
bcv_is_by_ref : bool;
bcv_is_nested : bool;
bcv_variable : decl_ref option;
bcv_copy_expr : stmt option;
}
and block_decl_info = Clang_ast_t.block_decl_info = {
bdi_parameters : decl list;
bdi_is_variadic : bool;
bdi_captures_cxx_this : bool;
bdi_captured_variables : block_captured_variable list;
bdi_body : stmt option;
bdi_mangled_name : string;
}
and cxx_ctor_initializer = Clang_ast_t.cxx_ctor_initializer = {
xci_subject : cxx_ctor_initializer_subject;
xci_source_range : source_range;
xci_init_expr : stmt option;
}
and cxx_method_decl_info = Clang_ast_t.cxx_method_decl_info = {
xmdi_is_virtual : bool;
xmdi_is_static : bool;
xmdi_is_const : bool;
xmdi_is_copy_assignment : bool;
xmdi_is_copy_constructor : bool;
xmdi_is_move_constructor : bool;
xmdi_cxx_ctor_initializers : cxx_ctor_initializer list;
xmdi_overriden_methods : decl_ref list;
}
and cxx_record_decl_info = Clang_ast_t.cxx_record_decl_info = {
xrdi_bases : type_ptr list;
xrdi_vbases : type_ptr list;
xrdi_transitive_vbases : type_ptr list;
xrdi_is_pod : bool;
xrdi_is_trivially_copyable : bool;
xrdi_destructor : decl_ref option;
xrdi_lambda_call_operator : decl_ref option;
xrdi_lambda_captures : lambda_capture_info list;
}
and decl = Clang_ast_t.decl =
| TranslationUnitDecl of decl_info
+ Clang_ast_t.template_instantiation_arg_info
type comment = Clang_ast_t.comment =
| VerbatimBlockLineComment of comment_info * comment list
| TextComment of comment_info * comment list
| InlineCommandComment of comment_info * comment list
| HTMLStartTagComment of comment_info * comment list
| HTMLEndTagComment of comment_info * comment list
| FullComment of comment_info * comment list
| ParagraphComment of comment_info * comment list
| BlockCommandComment of comment_info * comment list
| VerbatimLineComment of comment_info * comment list
| VerbatimBlockComment of comment_info * comment list
| TParamCommandComment of comment_info * comment list
| ParamCommandComment of comment_info * comment list
type template_specialization_info = Clang_ast_t.template_specialization_info = {
tsi_template_decl : pointer;
tsi_specialization_args : template_instantiation_arg_info list;
}
type decl_info = Clang_ast_t.decl_info = {
di_pointer : pointer;
di_parent_pointer : pointer option;
di_source_range : source_range;
di_owning_module : string option;
di_is_implicit : bool;
di_is_used : bool;
di_is_this_declaration_referenced : bool;
di_is_invalid_decl : bool;
di_attributes : attribute list;
di_full_comment : comment option;
di_access : access_specifier;
}
type binding_decl_info = Clang_ast_t.binding_decl_info = {
binding_var : var_decl_info option;
bound_decl_type : qual_type option;
}
and block_captured_variable = Clang_ast_t.block_captured_variable = {
bcv_is_by_ref : bool;
bcv_is_nested : bool;
bcv_variable : decl_ref option;
bcv_copy_expr : stmt option;
}
and block_decl_info = Clang_ast_t.block_decl_info = {
bdi_parameters : decl list;
bdi_is_variadic : bool;
bdi_captures_cxx_this : bool;
bdi_captured_variables : block_captured_variable list;
bdi_body : stmt option;
bdi_mangled_name : string;
}
and cxx_ctor_initializer = Clang_ast_t.cxx_ctor_initializer = {
xci_subject : cxx_ctor_initializer_subject;
xci_source_range : source_range;
xci_init_expr : stmt option;
}
and cxx_method_decl_info = Clang_ast_t.cxx_method_decl_info = {
xmdi_is_virtual : bool;
xmdi_is_static : bool;
xmdi_is_const : bool;
xmdi_is_copy_assignment : bool;
xmdi_is_copy_constructor : bool;
xmdi_is_move_constructor : bool;
xmdi_cxx_ctor_initializers : cxx_ctor_initializer list;
xmdi_overriden_methods : decl_ref list;
}
and cxx_record_decl_info = Clang_ast_t.cxx_record_decl_info = {
xrdi_bases : type_ptr list;
xrdi_vbases : type_ptr list;
xrdi_transitive_vbases : type_ptr list;
xrdi_is_pod : bool;
xrdi_is_trivially_copyable : bool;
xrdi_destructor : decl_ref option;
xrdi_lambda_call_operator : decl_ref option;
xrdi_lambda_captures : lambda_capture_info list;
}
and decl = Clang_ast_t.decl =
| TranslationUnitDecl of decl_info
* decl list
* decl_context_info
* translation_unit_decl_info
| RequiresExprBodyDecl of decl_info
| LinkageSpecDecl of decl_info * decl list * decl_context_info
| ExternCContextDecl of decl_info
| ExportDecl of decl_info
| CapturedDecl of decl_info * decl list * decl_context_info
| BlockDecl of decl_info * block_decl_info
| TopLevelStmtDecl of decl_info
| StaticAssertDecl of decl_info
| PragmaDetectMismatchDecl of decl_info
| PragmaCommentDecl of decl_info
| ObjCPropertyImplDecl of decl_info * obj_c_property_impl_decl_info
| OMPThreadPrivateDecl of decl_info
| OMPRequiresDecl of decl_info
| OMPAllocateDecl of decl_info
| ObjCMethodDecl of decl_info * named_decl_info * obj_c_method_decl_info
| ObjCProtocolDecl of decl_info
@@ -83,7 +83,7 @@
* obj_c_ivar_decl_info
| ObjCAtDefsFieldDecl of decl_info
* named_decl_info
* qual_type
- * field_decl_info
| BindingDecl of decl_info * named_decl_info * qual_type * holding_var_decl_info
| UsingShadowDecl of decl_info * named_decl_info
| ConstructorUsingShadowDecl of decl_info * named_decl_info
| UsingPackDecl of decl_info * named_decl_info
| UsingDirectiveDecl of decl_info * named_decl_info * using_directive_decl_info
| UnresolvedUsingIfExistsDecl of decl_info * named_decl_info
| RecordDecl of decl_info
+ * field_decl_info
| BindingDecl of decl_info * named_decl_info * qual_type * binding_decl_info
| UsingShadowDecl of decl_info * named_decl_info
| ConstructorUsingShadowDecl of decl_info * named_decl_info
| UsingPackDecl of decl_info * named_decl_info
| UsingDirectiveDecl of decl_info * named_decl_info * using_directive_decl_info
| UnresolvedUsingIfExistsDecl of decl_info * named_decl_info
| RecordDecl of decl_info
* named_decl_info
* type_ptr
* decl list
@@ -124,7 +124,7 @@
* tag_kind
* enum_decl_info
| UnresolvedUsingTypenameDecl of decl_info * named_decl_info * type_ptr
| TypedefDecl of decl_info * named_decl_info * type_ptr * typedef_decl_info
| TypeAliasDecl of decl_info * named_decl_info * type_ptr
| ObjCTypeParamDecl of decl_info * named_decl_info * type_ptr
| TemplateTypeParmDecl of decl_info * named_decl_info * type_ptr
| TemplateTemplateParmDecl of decl_info * named_decl_info
| VarTemplateDecl of decl_info * named_decl_info
| TypeAliasTemplateDecl of decl_info * named_decl_info
| FunctionTemplateDecl of decl_info * named_decl_info * template_decl_info
| ClassTemplateDecl of decl_info * named_decl_info * template_decl_info
| ConceptDecl of decl_info * named_decl_info
| BuiltinTemplateDecl of decl_info * named_decl_info
| ObjCPropertyDecl of decl_info * named_decl_info * obj_c_property_decl_info
| ObjCCompatibleAliasDecl of decl_info
* named_decl_info
- * obj_c_compatible_alias_decl_info
| NamespaceAliasDecl of decl_info * named_decl_info * namespace_alias_decl_info
| LabelDecl of decl_info * named_decl_info
| UsingEnumDecl of decl_info * named_decl_info
| UsingDecl of decl_info * named_decl_info
| LifetimeExtendedTemporaryDecl of decl_info
| ImportDecl of decl_info * string
| ImplicitConceptSpecializationDecl of decl_info
| FriendTemplateDecl of decl_info
| FriendDecl of decl_info * friend_info
| FileScopeAsmDecl of decl_info
| EmptyDecl of decl_info
| AccessSpecDecl of decl_info
and field_decl_info = Clang_ast_t.field_decl_info = {
fldi_is_mutable : bool;
fldi_is_module_private : bool;
fldi_init_expr : stmt option;
fldi_bit_width_expr : stmt option;
}
and friend_info = Clang_ast_t.friend_info
and function_decl_info = Clang_ast_t.function_decl_info = {
fdi_mangled_name : string option;
fdi_is_cpp : bool;
fdi_is_inline : bool;
fdi_is_module_private : bool;
fdi_is_pure : bool;
fdi_is_deleted : bool;
fdi_is_no_return : bool;
fdi_is_constexpr : bool;
fdi_is_variadic : bool;
fdi_is_static : bool;
fdi_parameters : decl list;
fdi_decl_ptr_with_body : pointer option;
fdi_body : stmt option;
fdi_template_specialization : template_specialization_info option;
fdi_point_of_instantiation : source_location option;
}
and holding_var_decl_info = Clang_ast_t.holding_var_decl_info = {
hvdi_binding_var : var_decl_info option;
}
and if_stmt_info = Clang_ast_t.if_stmt_info = {
isi_init : pointer option;
isi_cond_var : stmt option;
isi_cond : pointer;
isi_then : pointer;
isi_else : (pointer * source_location) option;
}
and lambda_capture_info = Clang_ast_t.lambda_capture_info = {
lci_capture_kind : lambda_capture_kind;
lci_capture_this : bool;
lci_capture_variable : bool;
lci_capture_VLAtype : bool;
lci_init_captured_vardecl : decl option;
lci_captured_var : decl_ref option;
lci_is_implicit : bool;
lci_location : source_range;
lci_is_pack_expansion : bool;
}
and obj_c_implementation_decl_info = Clang_ast_t.obj_c_implementation_decl_info =
+ * obj_c_compatible_alias_decl_info
| NamespaceAliasDecl of decl_info * named_decl_info * namespace_alias_decl_info
| LabelDecl of decl_info * named_decl_info
| UsingEnumDecl of decl_info * named_decl_info
| UsingDecl of decl_info * named_decl_info
| LifetimeExtendedTemporaryDecl of decl_info
| ImportDecl of decl_info * string
| ImplicitConceptSpecializationDecl of decl_info
| FriendTemplateDecl of decl_info
| FriendDecl of decl_info * friend_info
| FileScopeAsmDecl of decl_info
| EmptyDecl of decl_info
| AccessSpecDecl of decl_info
and field_decl_info = Clang_ast_t.field_decl_info = {
fldi_is_mutable : bool;
fldi_is_module_private : bool;
fldi_init_expr : stmt option;
fldi_bit_width_expr : stmt option;
}
and friend_info = Clang_ast_t.friend_info
and function_decl_info = Clang_ast_t.function_decl_info = {
fdi_mangled_name : string option;
fdi_is_cpp : bool;
fdi_is_inline : bool;
fdi_is_module_private : bool;
fdi_is_pure : bool;
fdi_is_deleted : bool;
fdi_is_no_return : bool;
fdi_is_constexpr : bool;
fdi_is_variadic : bool;
fdi_is_static : bool;
fdi_parameters : decl list;
fdi_decl_ptr_with_body : pointer option;
fdi_body : stmt option;
fdi_template_specialization : template_specialization_info option;
fdi_point_of_instantiation : source_location option;
}
and if_stmt_info = Clang_ast_t.if_stmt_info = {
isi_init : pointer option;
isi_cond_var : stmt option;
isi_cond : pointer;
isi_then : pointer;
isi_else : (pointer * source_location) option;
}
and lambda_capture_info = Clang_ast_t.lambda_capture_info = {
lci_capture_kind : lambda_capture_kind;
lci_capture_this : bool;
lci_capture_variable : bool;
lci_capture_VLAtype : bool;
lci_init_captured_vardecl : decl option;
lci_captured_var : decl_ref option;
lci_is_implicit : bool;
lci_location : source_range;
lci_is_pack_expansion : bool;
}
and obj_c_implementation_decl_info = Clang_ast_t.obj_c_implementation_decl_info =
{
oidi_super : decl_ref option;
oidi_class_interface : decl_ref option;
oidi_ivar_initializers : cxx_ctor_initializer list;
}
and obj_c_message_expr_kind = Clang_ast_t.obj_c_message_expr_kind
and obj_c_method_decl_info = Clang_ast_t.obj_c_method_decl_info = {
omdi_is_instance_method : bool;
omdi_result_type : qual_type;
omdi_is_property_accessor : bool;
omdi_property_decl : decl_ref option;
omdi_parameters : decl list;
omdi_implicit_parameters : decl list;
omdi_is_variadic : bool;
omdi_is_overriding : bool;
omdi_is_optional : bool;
omdi_body : stmt option;
omdi_mangled_name : string;
}
and stmt = Clang_ast_t.stmt =
| WhileStmt of stmt_info * stmt list
| LabelStmt of stmt_info * stmt list * string
| VAArgExpr of stmt_info * stmt list * expr_info
| UnaryOperator of stmt_info * stmt list * expr_info * unary_operator_info
| UnaryExprOrTypeTraitExpr of stmt_info
* stmt list
* expr_info
@@ -1012,7 +1012,10 @@
template_specialization_info
Input a tagged biniou value of type template_specialization_info
.
val template_specialization_info_of_string :
?pos:int ->
string ->
- template_specialization_info
Deserialize a biniou value of type template_specialization_info
.
Tag used by the writers for type decl_info
. Readers may support more than just this tag.
val write_untagged_decl_info : Bi_outbuf.t -> decl_info -> unit
Output an untagged biniou value of type decl_info
.
val string_of_decl_info : ?len:int -> decl_info -> string
Serialize a value of type decl_info
into a biniou string.
val get_decl_info_reader : Bi_io.node_tag -> Bi_inbuf.t -> decl_info
Return a function that reads an untagged biniou value of type decl_info
.
val decl_info_of_string : ?pos:int -> string -> decl_info
Deserialize a biniou value of type decl_info
.
Tag used by the writers for type block_captured_variable
. Readers may support more than just this tag.
val write_untagged_block_captured_variable :
+ template_specialization_info
Deserialize a biniou value of type template_specialization_info
.
Tag used by the writers for type decl_info
. Readers may support more than just this tag.
val write_untagged_decl_info : Bi_outbuf.t -> decl_info -> unit
Output an untagged biniou value of type decl_info
.
val string_of_decl_info : ?len:int -> decl_info -> string
Serialize a value of type decl_info
into a biniou string.
val get_decl_info_reader : Bi_io.node_tag -> Bi_inbuf.t -> decl_info
Return a function that reads an untagged biniou value of type decl_info
.
val decl_info_of_string : ?pos:int -> string -> decl_info
Deserialize a biniou value of type decl_info
.
Tag used by the writers for type binding_decl_info
. Readers may support more than just this tag.
val write_untagged_binding_decl_info : Bi_outbuf.t -> binding_decl_info -> unit
Output an untagged biniou value of type binding_decl_info
.
val write_binding_decl_info : Bi_outbuf.t -> binding_decl_info -> unit
Output a biniou value of type binding_decl_info
.
val string_of_binding_decl_info : ?len:int -> binding_decl_info -> string
Serialize a value of type binding_decl_info
into a biniou string.
val get_binding_decl_info_reader :
+ Bi_io.node_tag ->
+ Bi_inbuf.t ->
+ binding_decl_info
Return a function that reads an untagged biniou value of type binding_decl_info
.
val read_binding_decl_info : Bi_inbuf.t -> binding_decl_info
Input a tagged biniou value of type binding_decl_info
.
val binding_decl_info_of_string : ?pos:int -> string -> binding_decl_info
Deserialize a biniou value of type binding_decl_info
.
Tag used by the writers for type block_captured_variable
. Readers may support more than just this tag.
val write_untagged_block_captured_variable :
Bi_outbuf.t ->
block_captured_variable ->
unit
Output an untagged biniou value of type block_captured_variable
.
val write_block_captured_variable :
@@ -1117,19 +1120,7 @@
generic_selection_info
Return a function that reads an untagged biniou value of type generic_selection_info
.
val read_generic_selection_info : Bi_inbuf.t -> generic_selection_info
Input a tagged biniou value of type generic_selection_info
.
val generic_selection_info_of_string :
?pos:int ->
string ->
- generic_selection_info
Deserialize a biniou value of type generic_selection_info
.
Tag used by the writers for type holding_var_decl_info
. Readers may support more than just this tag.
val write_untagged_holding_var_decl_info :
- Bi_outbuf.t ->
- holding_var_decl_info ->
- unit
Output an untagged biniou value of type holding_var_decl_info
.
val write_holding_var_decl_info : Bi_outbuf.t -> holding_var_decl_info -> unit
Output a biniou value of type holding_var_decl_info
.
val string_of_holding_var_decl_info :
- ?len:int ->
- holding_var_decl_info ->
- string
Serialize a value of type holding_var_decl_info
into a biniou string.
val get_holding_var_decl_info_reader :
- Bi_io.node_tag ->
- Bi_inbuf.t ->
- holding_var_decl_info
Return a function that reads an untagged biniou value of type holding_var_decl_info
.
val read_holding_var_decl_info : Bi_inbuf.t -> holding_var_decl_info
Input a tagged biniou value of type holding_var_decl_info
.
val holding_var_decl_info_of_string :
- ?pos:int ->
- string ->
- holding_var_decl_info
Deserialize a biniou value of type holding_var_decl_info
.
Tag used by the writers for type if_stmt_info
. Readers may support more than just this tag.
val write_untagged_if_stmt_info : Bi_outbuf.t -> if_stmt_info -> unit
Output an untagged biniou value of type if_stmt_info
.
val write_if_stmt_info : Bi_outbuf.t -> if_stmt_info -> unit
Output a biniou value of type if_stmt_info
.
val string_of_if_stmt_info : ?len:int -> if_stmt_info -> string
Serialize a value of type if_stmt_info
into a biniou string.
val get_if_stmt_info_reader : Bi_io.node_tag -> Bi_inbuf.t -> if_stmt_info
Return a function that reads an untagged biniou value of type if_stmt_info
.
val read_if_stmt_info : Bi_inbuf.t -> if_stmt_info
Input a tagged biniou value of type if_stmt_info
.
val if_stmt_info_of_string : ?pos:int -> string -> if_stmt_info
Deserialize a biniou value of type if_stmt_info
.
Tag used by the writers for type lambda_capture_info
. Readers may support more than just this tag.
val write_untagged_lambda_capture_info :
+ generic_selection_info
Deserialize a biniou value of type generic_selection_info
.
Tag used by the writers for type if_stmt_info
. Readers may support more than just this tag.
val write_untagged_if_stmt_info : Bi_outbuf.t -> if_stmt_info -> unit
Output an untagged biniou value of type if_stmt_info
.
val write_if_stmt_info : Bi_outbuf.t -> if_stmt_info -> unit
Output a biniou value of type if_stmt_info
.
val string_of_if_stmt_info : ?len:int -> if_stmt_info -> string
Serialize a value of type if_stmt_info
into a biniou string.
val get_if_stmt_info_reader : Bi_io.node_tag -> Bi_inbuf.t -> if_stmt_info
Return a function that reads an untagged biniou value of type if_stmt_info
.
val read_if_stmt_info : Bi_inbuf.t -> if_stmt_info
Input a tagged biniou value of type if_stmt_info
.
val if_stmt_info_of_string : ?pos:int -> string -> if_stmt_info
Deserialize a biniou value of type if_stmt_info
.
Tag used by the writers for type lambda_capture_info
. Readers may support more than just this tag.
val write_untagged_lambda_capture_info :
Bi_outbuf.t ->
lambda_capture_info ->
unit
Output an untagged biniou value of type lambda_capture_info
.
val write_lambda_capture_info : Bi_outbuf.t -> lambda_capture_info -> unit
Output a biniou value of type lambda_capture_info
.
val string_of_lambda_capture_info : ?len:int -> lambda_capture_info -> string
Serialize a value of type lambda_capture_info
into a biniou string.
val get_lambda_capture_info_reader :
diff --git a/website/static/odoc/next/infer/ATDGenerated/Clang_ast_j/index.html b/website/static/odoc/next/infer/ATDGenerated/Clang_ast_j/index.html
index 07dd380e7dd..16e57fb806b 100644
--- a/website/static/odoc/next/infer/ATDGenerated/Clang_ast_j/index.html
+++ b/website/static/odoc/next/infer/ATDGenerated/Clang_ast_j/index.html
@@ -6,7 +6,7 @@
Clang_ast_t.obj_c_dictionary_literal_expr_info =
{
odlei_dict_method : pointer option;
}
type predefined_expr_type = Clang_ast_t.predefined_expr_type
type property_attribute = Clang_ast_t.property_attribute
type property_implementation = Clang_ast_t.property_implementation
type record_decl_info = Clang_ast_t.record_decl_info = {
rdi_definition_ptr : pointer;
rdi_is_module_private : bool;
rdi_is_complete_definition : bool;
rdi_is_dependent_type : bool;
}
type selector = Clang_ast_t.selector
type obj_c_subscript_ref_expr_info = Clang_ast_t.obj_c_subscript_ref_expr_info =
{
osrei_kind : obj_c_subscript_kind;
osrei_getter : selector option;
osrei_setter : selector option;
}
type objc_boxed_expr_info = Clang_ast_t.objc_boxed_expr_info = {
obei_boxing_method : selector option;
}
type source_file = Clang_ast_t.source_file
type source_location = Clang_ast_t.source_location = {
mutable sl_file : source_file option;
mutable sl_line : int option;
mutable sl_column : int option;
sl_is_macro : bool;
mutable sl_macro_file : source_file option;
mutable sl_macro_line : int option;
}
type source_range = Clang_ast_t.source_range
type attribute_info = Clang_ast_t.attribute_info = {
ai_pointer : pointer;
ai_source_range : source_range;
}
type attr_tuple = Clang_ast_t.attr_tuple
type comment_info = Clang_ast_t.comment_info = {
ci_parent_pointer : pointer;
ci_source_range : source_range;
}
type specifier_kind = Clang_ast_t.specifier_kind
type tag_kind = Clang_ast_t.tag_kind
type type_ptr = Clang_ast_t.type_ptr
type qual_type = Clang_ast_t.qual_type = {
qt_type_ptr : type_ptr;
qt_is_const : bool;
qt_is_restrict : bool;
qt_is_volatile : bool;
}
type array_type_info = Clang_ast_t.array_type_info = {
arti_element_type : qual_type;
arti_stride : int option;
}
type cxx_delete_expr_info = Clang_ast_t.cxx_delete_expr_info = {
xdei_is_array : bool;
xdei_destroyed_type : qual_type;
}
type decl_ref = Clang_ast_t.decl_ref = {
dr_kind : decl_kind;
dr_decl_pointer : pointer;
dr_name : named_decl_info option;
dr_qual_type : qual_type option;
}
type cxx_construct_expr_info = Clang_ast_t.cxx_construct_expr_info = {
xcei_decl_ref : decl_ref;
xcei_is_elidable : bool;
xcei_requires_zero_initialization : bool;
xcei_is_copy_constructor : bool;
}
type cxx_ctor_initializer_subject = Clang_ast_t.cxx_ctor_initializer_subject
type expr_with_cleanups_info = Clang_ast_t.expr_with_cleanups_info = {
ewci_decl_refs : decl_ref list;
}
type cxx_delete_expr_info = Clang_ast_t.cxx_delete_expr_info = {
xdei_is_array : bool;
xdei_destroyed_type : qual_type;
}
type decl_ref = Clang_ast_t.decl_ref = {
dr_kind : decl_kind;
dr_decl_pointer : pointer;
dr_name : named_decl_info option;
dr_qual_type : qual_type option;
}
type cxx_construct_expr_info = Clang_ast_t.cxx_construct_expr_info = {
xcei_decl_ref : decl_ref;
xcei_is_elidable : bool;
xcei_requires_zero_initialization : bool;
xcei_is_copy_constructor : bool;
}
type cxx_ctor_initializer_subject = Clang_ast_t.cxx_ctor_initializer_subject
type expr_with_cleanups_info = Clang_ast_t.expr_with_cleanups_info = {
ewci_decl_refs : decl_ref list;
}
type materialize_temporary_expr_info =
Clang_ast_t.materialize_temporary_expr_info =
{
mtei_decl_ref : decl_ref option;
}
type member_expr_info = Clang_ast_t.member_expr_info = {
mei_is_arrow : bool;
mei_performs_virtual_dispatch : bool;
mei_name : named_decl_info;
mei_decl_ref : decl_ref;
}
type namespace_decl_info = Clang_ast_t.namespace_decl_info = {
ndi_is_inline : bool;
ndi_original_namespace : decl_ref option;
}
type nested_name_specifier_loc = Clang_ast_t.nested_name_specifier_loc = {
nnsl_kind : specifier_kind;
nnsl_ref : decl_ref option;
}
type namespace_alias_decl_info = Clang_ast_t.namespace_alias_decl_info = {
nadi_namespace_loc : source_location;
nadi_target_name_loc : source_location;
nadi_nested_name_specifier_locs : nested_name_specifier_loc list;
nadi_namespace : decl_ref;
}
type obj_c_category_decl_info = Clang_ast_t.obj_c_category_decl_info = {
odi_class_interface : decl_ref option;
odi_implementation : decl_ref option;
odi_protocols : decl_ref list;
}
type obj_c_compatible_alias_decl_info =
@@ -15,7 +15,7 @@
{
opidi_implementation : property_implementation;
opidi_property_decl : decl_ref option;
opidi_ivar_decl : decl_ref option;
}
type obj_c_protocol_decl_info = Clang_ast_t.obj_c_protocol_decl_info = {
opcdi_protocols : decl_ref list;
}
type objc_encode_expr_info = Clang_ast_t.objc_encode_expr_info = {
oeei_qual_type : qual_type;
oeei_raw : string;
}
type overload_expr_info = Clang_ast_t.overload_expr_info = {
oei_decls : decl_ref list;
oei_name : declaration_name;
}
type property_ref_kind = Clang_ast_t.property_ref_kind
type obj_c_property_ref_expr_info = Clang_ast_t.obj_c_property_ref_expr_info = {
oprei_kind : property_ref_kind;
oprei_is_super_receiver : bool;
oprei_is_messaging_getter : bool;
oprei_is_messaging_setter : bool;
}
type receiver_kind = Clang_ast_t.receiver_kind
type obj_c_message_expr_info = Clang_ast_t.obj_c_message_expr_info = {
omei_selector : string;
omei_is_definition_found : bool;
omei_decl_pointer : pointer option;
omei_receiver_kind : receiver_kind;
}
type c_type = Clang_ast_t.c_type =
| NoneType of type_info
| AdjustedType of type_info * qual_type
| DecayedType of type_info * qual_type
| ConstantArrayType of type_info * array_type_info * int
| DependentSizedArrayType of type_info * array_type_info
| IncompleteArrayType of type_info * array_type_info
| VariableArrayType of type_info * array_type_info * pointer
| AtomicType of type_info * qual_type
| AttributedType of type_info * attr_type_info
| BTFTagAttributedType of type_info
| BitIntType of type_info
| BlockPointerType of type_info * qual_type
| BuiltinType of type_info * builtin_type_kind
| ComplexType of type_info
| DecltypeType of type_info * qual_type
| AutoType of type_info
| DeducedTemplateSpecializationType of type_info
| DependentAddressSpaceType of type_info
| DependentBitIntType of type_info
| DependentNameType of type_info
| DependentSizedExtVectorType of type_info
| DependentTemplateSpecializationType of type_info
| DependentVectorType of type_info
| ElaboratedType of type_info
| FunctionNoProtoType of type_info * function_type_info
| FunctionProtoType of type_info * function_type_info * params_type_info
| InjectedClassNameType of type_info
| MacroQualifiedType of type_info
| ConstantMatrixType of type_info
| DependentSizedMatrixType of type_info
| MemberPointerType of type_info * qual_type
| ObjCObjectPointerType of type_info * qual_type
| ObjCObjectType of type_info * objc_object_type_info
| ObjCInterfaceType of type_info * pointer
| ObjCTypeParamType of type_info
| PackExpansionType of type_info
| ParenType of type_info * qual_type
| PipeType of type_info
| PointerType of type_info * qual_type
| LValueReferenceType of type_info * qual_type
| RValueReferenceType of type_info * qual_type
| SubstTemplateTypeParmPackType of type_info
| SubstTemplateTypeParmType of type_info
| EnumType of type_info * pointer
| RecordType of type_info * pointer
| TemplateSpecializationType of type_info
| TemplateTypeParmType of type_info
| TypeOfExprType of type_info
| TypeOfType of type_info
| TypedefType of type_info * typedef_type_info
| UnaryTransformType of type_info
| UnresolvedUsingType of type_info
| UsingType of type_info
| VectorType of type_info
| ExtVectorType of type_info
type translation_unit_decl_info = Clang_ast_t.translation_unit_decl_info = {
tudi_input_path : source_file;
tudi_input_kind : input_kind;
tudi_integer_type_widths : integer_type_widths;
tudi_is_objc_arc_on : bool;
tudi_types : c_type list;
}
type unary_expr_or_type_trait_kind = Clang_ast_t.unary_expr_or_type_trait_kind
type unary_expr_or_type_trait_expr_info =
Clang_ast_t.unary_expr_or_type_trait_expr_info =
{
uttei_kind : unary_expr_or_type_trait_kind;
uttei_qual_type : qual_type;
}
type unary_operator_kind = Clang_ast_t.unary_operator_kind
type unary_operator_info = Clang_ast_t.unary_operator_info = {
uoi_kind : unary_operator_kind;
uoi_is_postfix : bool;
}
type unresolved_lookup_expr_info = Clang_ast_t.unresolved_lookup_expr_info = {
ulei_requires_ADL : bool;
ulei_is_overloaded : bool;
ulei_naming_class : decl_ref option;
}
type using_directive_decl_info = Clang_ast_t.using_directive_decl_info = {
uddi_using_location : source_location;
uddi_namespace_key_location : source_location;
uddi_nested_name_specifier_locs : nested_name_specifier_loc list;
uddi_nominated_namespace : decl_ref option;
}
type value_kind = Clang_ast_t.value_kind
type expr_info = Clang_ast_t.expr_info = {
ei_qual_type : qual_type;
ei_value_kind : value_kind;
ei_object_kind : object_kind;
}
type availability_attr_info = Clang_ast_t.availability_attr_info = {
aai_platform : string option;
aai_introduced : version_tuple;
}
type visibility_attr = Clang_ast_t.visibility_attr =
type attribute = Clang_ast_t.attribute
type template_instantiation_arg_info =
- Clang_ast_t.template_instantiation_arg_info
type comment = Clang_ast_t.comment =
| VerbatimBlockLineComment of comment_info * comment list
| TextComment of comment_info * comment list
| InlineCommandComment of comment_info * comment list
| HTMLStartTagComment of comment_info * comment list
| HTMLEndTagComment of comment_info * comment list
| FullComment of comment_info * comment list
| ParagraphComment of comment_info * comment list
| BlockCommandComment of comment_info * comment list
| VerbatimLineComment of comment_info * comment list
| VerbatimBlockComment of comment_info * comment list
| TParamCommandComment of comment_info * comment list
| ParamCommandComment of comment_info * comment list
type template_specialization_info = Clang_ast_t.template_specialization_info = {
tsi_template_decl : pointer;
tsi_specialization_args : template_instantiation_arg_info list;
}
type decl_info = Clang_ast_t.decl_info = {
di_pointer : pointer;
di_parent_pointer : pointer option;
di_source_range : source_range;
di_owning_module : string option;
di_is_implicit : bool;
di_is_used : bool;
di_is_this_declaration_referenced : bool;
di_is_invalid_decl : bool;
di_attributes : attribute list;
di_full_comment : comment option;
di_access : access_specifier;
}
type block_captured_variable = Clang_ast_t.block_captured_variable = {
bcv_is_by_ref : bool;
bcv_is_nested : bool;
bcv_variable : decl_ref option;
bcv_copy_expr : stmt option;
}
and block_decl_info = Clang_ast_t.block_decl_info = {
bdi_parameters : decl list;
bdi_is_variadic : bool;
bdi_captures_cxx_this : bool;
bdi_captured_variables : block_captured_variable list;
bdi_body : stmt option;
bdi_mangled_name : string;
}
and cxx_ctor_initializer = Clang_ast_t.cxx_ctor_initializer = {
xci_subject : cxx_ctor_initializer_subject;
xci_source_range : source_range;
xci_init_expr : stmt option;
}
and cxx_method_decl_info = Clang_ast_t.cxx_method_decl_info = {
xmdi_is_virtual : bool;
xmdi_is_static : bool;
xmdi_is_const : bool;
xmdi_is_copy_assignment : bool;
xmdi_is_copy_constructor : bool;
xmdi_is_move_constructor : bool;
xmdi_cxx_ctor_initializers : cxx_ctor_initializer list;
xmdi_overriden_methods : decl_ref list;
}
and cxx_record_decl_info = Clang_ast_t.cxx_record_decl_info = {
xrdi_bases : type_ptr list;
xrdi_vbases : type_ptr list;
xrdi_transitive_vbases : type_ptr list;
xrdi_is_pod : bool;
xrdi_is_trivially_copyable : bool;
xrdi_destructor : decl_ref option;
xrdi_lambda_call_operator : decl_ref option;
xrdi_lambda_captures : lambda_capture_info list;
}
and decl = Clang_ast_t.decl =
| TranslationUnitDecl of decl_info
+ Clang_ast_t.template_instantiation_arg_info
type comment = Clang_ast_t.comment =
| VerbatimBlockLineComment of comment_info * comment list
| TextComment of comment_info * comment list
| InlineCommandComment of comment_info * comment list
| HTMLStartTagComment of comment_info * comment list
| HTMLEndTagComment of comment_info * comment list
| FullComment of comment_info * comment list
| ParagraphComment of comment_info * comment list
| BlockCommandComment of comment_info * comment list
| VerbatimLineComment of comment_info * comment list
| VerbatimBlockComment of comment_info * comment list
| TParamCommandComment of comment_info * comment list
| ParamCommandComment of comment_info * comment list
type template_specialization_info = Clang_ast_t.template_specialization_info = {
tsi_template_decl : pointer;
tsi_specialization_args : template_instantiation_arg_info list;
}
type decl_info = Clang_ast_t.decl_info = {
di_pointer : pointer;
di_parent_pointer : pointer option;
di_source_range : source_range;
di_owning_module : string option;
di_is_implicit : bool;
di_is_used : bool;
di_is_this_declaration_referenced : bool;
di_is_invalid_decl : bool;
di_attributes : attribute list;
di_full_comment : comment option;
di_access : access_specifier;
}
type binding_decl_info = Clang_ast_t.binding_decl_info = {
binding_var : var_decl_info option;
bound_decl_type : qual_type option;
}
and block_captured_variable = Clang_ast_t.block_captured_variable = {
bcv_is_by_ref : bool;
bcv_is_nested : bool;
bcv_variable : decl_ref option;
bcv_copy_expr : stmt option;
}
and block_decl_info = Clang_ast_t.block_decl_info = {
bdi_parameters : decl list;
bdi_is_variadic : bool;
bdi_captures_cxx_this : bool;
bdi_captured_variables : block_captured_variable list;
bdi_body : stmt option;
bdi_mangled_name : string;
}
and cxx_ctor_initializer = Clang_ast_t.cxx_ctor_initializer = {
xci_subject : cxx_ctor_initializer_subject;
xci_source_range : source_range;
xci_init_expr : stmt option;
}
and cxx_method_decl_info = Clang_ast_t.cxx_method_decl_info = {
xmdi_is_virtual : bool;
xmdi_is_static : bool;
xmdi_is_const : bool;
xmdi_is_copy_assignment : bool;
xmdi_is_copy_constructor : bool;
xmdi_is_move_constructor : bool;
xmdi_cxx_ctor_initializers : cxx_ctor_initializer list;
xmdi_overriden_methods : decl_ref list;
}
and cxx_record_decl_info = Clang_ast_t.cxx_record_decl_info = {
xrdi_bases : type_ptr list;
xrdi_vbases : type_ptr list;
xrdi_transitive_vbases : type_ptr list;
xrdi_is_pod : bool;
xrdi_is_trivially_copyable : bool;
xrdi_destructor : decl_ref option;
xrdi_lambda_call_operator : decl_ref option;
xrdi_lambda_captures : lambda_capture_info list;
}
and decl = Clang_ast_t.decl =
| TranslationUnitDecl of decl_info
* decl list
* decl_context_info
* translation_unit_decl_info
| RequiresExprBodyDecl of decl_info
| LinkageSpecDecl of decl_info * decl list * decl_context_info
| ExternCContextDecl of decl_info
| ExportDecl of decl_info
| CapturedDecl of decl_info * decl list * decl_context_info
| BlockDecl of decl_info * block_decl_info
| TopLevelStmtDecl of decl_info
| StaticAssertDecl of decl_info
| PragmaDetectMismatchDecl of decl_info
| PragmaCommentDecl of decl_info
| ObjCPropertyImplDecl of decl_info * obj_c_property_impl_decl_info
| OMPThreadPrivateDecl of decl_info
| OMPRequiresDecl of decl_info
| OMPAllocateDecl of decl_info
| ObjCMethodDecl of decl_info * named_decl_info * obj_c_method_decl_info
| ObjCProtocolDecl of decl_info
@@ -83,7 +83,7 @@
* obj_c_ivar_decl_info
| ObjCAtDefsFieldDecl of decl_info
* named_decl_info
* qual_type
- * field_decl_info
| BindingDecl of decl_info * named_decl_info * qual_type * holding_var_decl_info
| UsingShadowDecl of decl_info * named_decl_info
| ConstructorUsingShadowDecl of decl_info * named_decl_info
| UsingPackDecl of decl_info * named_decl_info
| UsingDirectiveDecl of decl_info * named_decl_info * using_directive_decl_info
| UnresolvedUsingIfExistsDecl of decl_info * named_decl_info
| RecordDecl of decl_info
+ * field_decl_info
| BindingDecl of decl_info * named_decl_info * qual_type * binding_decl_info
| UsingShadowDecl of decl_info * named_decl_info
| ConstructorUsingShadowDecl of decl_info * named_decl_info
| UsingPackDecl of decl_info * named_decl_info
| UsingDirectiveDecl of decl_info * named_decl_info * using_directive_decl_info
| UnresolvedUsingIfExistsDecl of decl_info * named_decl_info
| RecordDecl of decl_info
* named_decl_info
* type_ptr
* decl list
@@ -124,7 +124,7 @@
* tag_kind
* enum_decl_info
| UnresolvedUsingTypenameDecl of decl_info * named_decl_info * type_ptr
| TypedefDecl of decl_info * named_decl_info * type_ptr * typedef_decl_info
| TypeAliasDecl of decl_info * named_decl_info * type_ptr
| ObjCTypeParamDecl of decl_info * named_decl_info * type_ptr
| TemplateTypeParmDecl of decl_info * named_decl_info * type_ptr
| TemplateTemplateParmDecl of decl_info * named_decl_info
| VarTemplateDecl of decl_info * named_decl_info
| TypeAliasTemplateDecl of decl_info * named_decl_info
| FunctionTemplateDecl of decl_info * named_decl_info * template_decl_info
| ClassTemplateDecl of decl_info * named_decl_info * template_decl_info
| ConceptDecl of decl_info * named_decl_info
| BuiltinTemplateDecl of decl_info * named_decl_info
| ObjCPropertyDecl of decl_info * named_decl_info * obj_c_property_decl_info
| ObjCCompatibleAliasDecl of decl_info
* named_decl_info
- * obj_c_compatible_alias_decl_info
| NamespaceAliasDecl of decl_info * named_decl_info * namespace_alias_decl_info
| LabelDecl of decl_info * named_decl_info
| UsingEnumDecl of decl_info * named_decl_info
| UsingDecl of decl_info * named_decl_info
| LifetimeExtendedTemporaryDecl of decl_info
| ImportDecl of decl_info * string
| ImplicitConceptSpecializationDecl of decl_info
| FriendTemplateDecl of decl_info
| FriendDecl of decl_info * friend_info
| FileScopeAsmDecl of decl_info
| EmptyDecl of decl_info
| AccessSpecDecl of decl_info
and field_decl_info = Clang_ast_t.field_decl_info = {
fldi_is_mutable : bool;
fldi_is_module_private : bool;
fldi_init_expr : stmt option;
fldi_bit_width_expr : stmt option;
}
and friend_info = Clang_ast_t.friend_info
and function_decl_info = Clang_ast_t.function_decl_info = {
fdi_mangled_name : string option;
fdi_is_cpp : bool;
fdi_is_inline : bool;
fdi_is_module_private : bool;
fdi_is_pure : bool;
fdi_is_deleted : bool;
fdi_is_no_return : bool;
fdi_is_constexpr : bool;
fdi_is_variadic : bool;
fdi_is_static : bool;
fdi_parameters : decl list;
fdi_decl_ptr_with_body : pointer option;
fdi_body : stmt option;
fdi_template_specialization : template_specialization_info option;
fdi_point_of_instantiation : source_location option;
}
and holding_var_decl_info = Clang_ast_t.holding_var_decl_info = {
hvdi_binding_var : var_decl_info option;
}
and if_stmt_info = Clang_ast_t.if_stmt_info = {
isi_init : pointer option;
isi_cond_var : stmt option;
isi_cond : pointer;
isi_then : pointer;
isi_else : (pointer * source_location) option;
}
and lambda_capture_info = Clang_ast_t.lambda_capture_info = {
lci_capture_kind : lambda_capture_kind;
lci_capture_this : bool;
lci_capture_variable : bool;
lci_capture_VLAtype : bool;
lci_init_captured_vardecl : decl option;
lci_captured_var : decl_ref option;
lci_is_implicit : bool;
lci_location : source_range;
lci_is_pack_expansion : bool;
}
and obj_c_implementation_decl_info = Clang_ast_t.obj_c_implementation_decl_info =
+ * obj_c_compatible_alias_decl_info
| NamespaceAliasDecl of decl_info * named_decl_info * namespace_alias_decl_info
| LabelDecl of decl_info * named_decl_info
| UsingEnumDecl of decl_info * named_decl_info
| UsingDecl of decl_info * named_decl_info
| LifetimeExtendedTemporaryDecl of decl_info
| ImportDecl of decl_info * string
| ImplicitConceptSpecializationDecl of decl_info
| FriendTemplateDecl of decl_info
| FriendDecl of decl_info * friend_info
| FileScopeAsmDecl of decl_info
| EmptyDecl of decl_info
| AccessSpecDecl of decl_info
and field_decl_info = Clang_ast_t.field_decl_info = {
fldi_is_mutable : bool;
fldi_is_module_private : bool;
fldi_init_expr : stmt option;
fldi_bit_width_expr : stmt option;
}
and friend_info = Clang_ast_t.friend_info
and function_decl_info = Clang_ast_t.function_decl_info = {
fdi_mangled_name : string option;
fdi_is_cpp : bool;
fdi_is_inline : bool;
fdi_is_module_private : bool;
fdi_is_pure : bool;
fdi_is_deleted : bool;
fdi_is_no_return : bool;
fdi_is_constexpr : bool;
fdi_is_variadic : bool;
fdi_is_static : bool;
fdi_parameters : decl list;
fdi_decl_ptr_with_body : pointer option;
fdi_body : stmt option;
fdi_template_specialization : template_specialization_info option;
fdi_point_of_instantiation : source_location option;
}
and if_stmt_info = Clang_ast_t.if_stmt_info = {
isi_init : pointer option;
isi_cond_var : stmt option;
isi_cond : pointer;
isi_then : pointer;
isi_else : (pointer * source_location) option;
}
and lambda_capture_info = Clang_ast_t.lambda_capture_info = {
lci_capture_kind : lambda_capture_kind;
lci_capture_this : bool;
lci_capture_variable : bool;
lci_capture_VLAtype : bool;
lci_init_captured_vardecl : decl option;
lci_captured_var : decl_ref option;
lci_is_implicit : bool;
lci_location : source_range;
lci_is_pack_expansion : bool;
}
and obj_c_implementation_decl_info = Clang_ast_t.obj_c_implementation_decl_info =
{
oidi_super : decl_ref option;
oidi_class_interface : decl_ref option;
oidi_ivar_initializers : cxx_ctor_initializer list;
}
and obj_c_message_expr_kind = Clang_ast_t.obj_c_message_expr_kind
and obj_c_method_decl_info = Clang_ast_t.obj_c_method_decl_info = {
omdi_is_instance_method : bool;
omdi_result_type : qual_type;
omdi_is_property_accessor : bool;
omdi_property_decl : decl_ref option;
omdi_parameters : decl list;
omdi_implicit_parameters : decl list;
omdi_is_variadic : bool;
omdi_is_overriding : bool;
omdi_is_optional : bool;
omdi_body : stmt option;
omdi_mangled_name : string;
}
and stmt = Clang_ast_t.stmt =
| WhileStmt of stmt_info * stmt list
| LabelStmt of stmt_info * stmt list * string
| VAArgExpr of stmt_info * stmt list * expr_info
| UnaryOperator of stmt_info * stmt list * expr_info * unary_operator_info
| UnaryExprOrTypeTraitExpr of stmt_info
* stmt list
* expr_info
@@ -826,7 +826,10 @@
template_specialization_info
Deserialize JSON data of type template_specialization_info
.
val string_of_decl_info : ?len:int -> decl_info -> string
Serialize a value of type decl_info
into a JSON string.
val read_decl_info :
Yojson.Safe.lexer_state ->
Stdlib.Lexing.lexbuf ->
- decl_info
Input JSON data of type decl_info
.
val write_binding_decl_info : Stdlib.Buffer.t -> binding_decl_info -> unit
Output a JSON value of type binding_decl_info
.
val string_of_binding_decl_info : ?len:int -> binding_decl_info -> string
Serialize a value of type binding_decl_info
into a JSON string.
val read_binding_decl_info :
+ Yojson.Safe.lexer_state ->
+ Stdlib.Lexing.lexbuf ->
+ binding_decl_info
Input JSON data of type binding_decl_info
.
val binding_decl_info_of_string : string -> binding_decl_info
Deserialize JSON data of type binding_decl_info
.
val write_block_captured_variable :
Stdlib.Buffer.t ->
block_captured_variable ->
unit
Output a JSON value of type block_captured_variable
.
Serialize a value of type generic_selection_info
into a JSON string.
val read_generic_selection_info :
Yojson.Safe.lexer_state ->
Stdlib.Lexing.lexbuf ->
- generic_selection_info
Input JSON data of type generic_selection_info
.
val generic_selection_info_of_string : string -> generic_selection_info
Deserialize JSON data of type generic_selection_info
.
val write_holding_var_decl_info :
- Stdlib.Buffer.t ->
- holding_var_decl_info ->
- unit
Output a JSON value of type holding_var_decl_info
.
val string_of_holding_var_decl_info :
- ?len:int ->
- holding_var_decl_info ->
- string
Serialize a value of type holding_var_decl_info
into a JSON string.
val read_holding_var_decl_info :
- Yojson.Safe.lexer_state ->
- Stdlib.Lexing.lexbuf ->
- holding_var_decl_info
Input JSON data of type holding_var_decl_info
.
val holding_var_decl_info_of_string : string -> holding_var_decl_info
Deserialize JSON data of type holding_var_decl_info
.
val write_if_stmt_info : Stdlib.Buffer.t -> if_stmt_info -> unit
Output a JSON value of type if_stmt_info
.
val string_of_if_stmt_info : ?len:int -> if_stmt_info -> string
Serialize a value of type if_stmt_info
into a JSON string.
val read_if_stmt_info :
+ generic_selection_info
Input JSON data of type generic_selection_info
.
val generic_selection_info_of_string : string -> generic_selection_info
Deserialize JSON data of type generic_selection_info
.
val write_if_stmt_info : Stdlib.Buffer.t -> if_stmt_info -> unit
Output a JSON value of type if_stmt_info
.
val string_of_if_stmt_info : ?len:int -> if_stmt_info -> string
Serialize a value of type if_stmt_info
into a JSON string.
val read_if_stmt_info :
Yojson.Safe.lexer_state ->
Stdlib.Lexing.lexbuf ->
if_stmt_info
Input JSON data of type if_stmt_info
.
val if_stmt_info_of_string : string -> if_stmt_info
Deserialize JSON data of type if_stmt_info
.
val write_lambda_capture_info : Stdlib.Buffer.t -> lambda_capture_info -> unit
Output a JSON value of type lambda_capture_info
.
val string_of_lambda_capture_info : ?len:int -> lambda_capture_info -> string
Serialize a value of type lambda_capture_info
into a JSON string.
val read_lambda_capture_info :
diff --git a/website/static/odoc/next/infer/ATDGenerated/Clang_ast_proj/index.html b/website/static/odoc/next/infer/ATDGenerated/Clang_ast_proj/index.html
index f459e4648a8..7f603ec3e96 100644
--- a/website/static/odoc/next/infer/ATDGenerated/Clang_ast_proj/index.html
+++ b/website/static/odoc/next/infer/ATDGenerated/Clang_ast_proj/index.html
@@ -37,7 +37,7 @@
* Clang_ast_t.named_decl_info
* Clang_ast_t.qual_type
* Clang_ast_t.var_decl_info)
- option
val string_of_binop_kind : Clang_ast_t.binary_operator_kind -> string
val string_of_cast_kind : Clang_ast_t.cast_kind -> string
val string_of_unop_kind : Clang_ast_t.unary_operator_kind -> string
val is_sve_decl : Clang_ast_t.decl -> bool
val is_sve_type_kind : Clang_ast_t.builtin_type_kind -> bool
val string_of_binop_kind : Clang_ast_t.binary_operator_kind -> string
val string_of_cast_kind : Clang_ast_t.cast_kind -> string
val string_of_unop_kind : Clang_ast_t.unary_operator_kind -> string
val update_cxx_construct_expr_tuple :
((Clang_ast_t.stmt_info
* Clang_ast_t.stmt list
* Clang_ast_t.expr_info
diff --git a/website/static/odoc/next/infer/ATDGenerated/Clang_ast_t/index.html b/website/static/odoc/next/infer/ATDGenerated/Clang_ast_t/index.html
index 2300a8c3a26..525f63688f6 100644
--- a/website/static/odoc/next/infer/ATDGenerated/Clang_ast_t/index.html
+++ b/website/static/odoc/next/infer/ATDGenerated/Clang_ast_t/index.html
@@ -1,5 +1,5 @@
-Clang_ast_t (infer.ATDGenerated.Clang_ast_t) Module ATDGenerated.Clang_ast_t
type atomic_expr_kind = [
| `AO__c11_atomic_init
| `AO__c11_atomic_load
| `AO__c11_atomic_store
| `AO__c11_atomic_exchange
| `AO__c11_atomic_compare_exchange_strong
| `AO__c11_atomic_compare_exchange_weak
| `AO__c11_atomic_fetch_add
| `AO__c11_atomic_fetch_sub
| `AO__c11_atomic_fetch_and
| `AO__c11_atomic_fetch_or
| `AO__c11_atomic_fetch_xor
| `AO__c11_atomic_fetch_nand
| `AO__c11_atomic_fetch_max
| `AO__c11_atomic_fetch_min
| `AO__atomic_load
| `AO__atomic_load_n
| `AO__atomic_store
| `AO__atomic_store_n
| `AO__atomic_exchange
| `AO__atomic_exchange_n
| `AO__atomic_compare_exchange
| `AO__atomic_compare_exchange_n
| `AO__atomic_fetch_add
| `AO__atomic_fetch_sub
| `AO__atomic_fetch_and
| `AO__atomic_fetch_or
| `AO__atomic_fetch_xor
| `AO__atomic_fetch_nand
| `AO__atomic_add_fetch
| `AO__atomic_sub_fetch
| `AO__atomic_and_fetch
| `AO__atomic_or_fetch
| `AO__atomic_xor_fetch
| `AO__atomic_max_fetch
| `AO__atomic_min_fetch
| `AO__atomic_nand_fetch
| `AO__scoped_atomic_load
| `AO__scoped_atomic_load_n
| `AO__scoped_atomic_store
| `AO__scoped_atomic_store_n
| `AO__scoped_atomic_exchange
| `AO__scoped_atomic_exchange_n
| `AO__scoped_atomic_compare_exchange
| `AO__scoped_atomic_compare_exchange_n
| `AO__scoped_atomic_fetch_add
| `AO__scoped_atomic_fetch_sub
| `AO__scoped_atomic_fetch_and
| `AO__scoped_atomic_fetch_or
| `AO__scoped_atomic_fetch_xor
| `AO__scoped_atomic_fetch_nand
| `AO__scoped_atomic_add_fetch
| `AO__scoped_atomic_sub_fetch
| `AO__scoped_atomic_and_fetch
| `AO__scoped_atomic_or_fetch
| `AO__scoped_atomic_xor_fetch
| `AO__scoped_atomic_max_fetch
| `AO__scoped_atomic_min_fetch
| `AO__scoped_atomic_nand_fetch
| `AO__scoped_atomic_fetch_min
| `AO__scoped_atomic_fetch_max
| `AO__opencl_atomic_init
| `AO__opencl_atomic_load
| `AO__opencl_atomic_store
| `AO__opencl_atomic_exchange
| `AO__opencl_atomic_compare_exchange_strong
| `AO__opencl_atomic_compare_exchange_weak
| `AO__opencl_atomic_fetch_add
| `AO__opencl_atomic_fetch_sub
| `AO__opencl_atomic_fetch_and
| `AO__opencl_atomic_fetch_or
| `AO__opencl_atomic_fetch_xor
| `AO__opencl_atomic_fetch_min
| `AO__opencl_atomic_fetch_max
| `AO__atomic_fetch_min
| `AO__atomic_fetch_max
| `AO__hip_atomic_load
| `AO__hip_atomic_store
| `AO__hip_atomic_compare_exchange_weak
| `AO__hip_atomic_compare_exchange_strong
| `AO__hip_atomic_exchange
| `AO__hip_atomic_fetch_add
| `AO__hip_atomic_fetch_sub
| `AO__hip_atomic_fetch_and
| `AO__hip_atomic_fetch_or
| `AO__hip_atomic_fetch_xor
| `AO__hip_atomic_fetch_min
| `AO__hip_atomic_fetch_max
]
type attribute_kind =
| AddressSpaceAttrKind
| AnnotateTypeAttrKind
| ArmInAttrKind
| ArmInOutAttrKind
| ArmMveStrictPolymorphismAttrKind
| ArmOutAttrKind
| ArmPreservesAttrKind
| ArmStreamingAttrKind
| ArmStreamingCompatibleAttrKind
| BTFTypeTagAttrKind
| CmseNSCallAttrKind
| HLSLParamModifierAttrKind
| NoDerefAttrKind
| ObjCGCAttrKind
| ObjCInertUnsafeUnretainedAttrKind
| ObjCKindOfAttrKind
| OpenCLConstantAddressSpaceAttrKind
| OpenCLGenericAddressSpaceAttrKind
| OpenCLGlobalAddressSpaceAttrKind
| OpenCLGlobalDeviceAddressSpaceAttrKind
| OpenCLGlobalHostAddressSpaceAttrKind
| OpenCLLocalAddressSpaceAttrKind
| OpenCLPrivateAddressSpaceAttrKind
| Ptr32AttrKind
| Ptr64AttrKind
| SPtrAttrKind
| TypeNonNullAttrKind
| TypeNullUnspecifiedAttrKind
| TypeNullableAttrKind
| TypeNullableResultAttrKind
| UPtrAttrKind
| WebAssemblyFuncrefAttrKind
| CodeAlignAttrKind
| FallThroughAttrKind
| LikelyAttrKind
| MustTailAttrKind
| OpenCLUnrollHintAttrKind
| UnlikelyAttrKind
| AlwaysInlineAttrKind
| NoInlineAttrKind
| NoMergeAttrKind
| SuppressAttrKind
| AArch64SVEPcsAttrKind
| AArch64VectorPcsAttrKind
| AMDGPUKernelCallAttrKind
| AcquireHandleAttrKind
| AnyX86NoCfCheckAttrKind
| CDeclAttrKind
| FastCallAttrKind
| IntelOclBiccAttrKind
| LifetimeBoundAttrKind
| M68kRTDAttrKind
| MSABIAttrKind
| NSReturnsRetainedAttrKind
| ObjCOwnershipAttrKind
| PascalAttrKind
| PcsAttrKind
| PreserveAllAttrKind
| PreserveMostAttrKind
| RegCallAttrKind
| StdCallAttrKind
| SwiftAsyncCallAttrKind
| SwiftCallAttrKind
| SysVABIAttrKind
| ThisCallAttrKind
| VectorCallAttrKind
| SwiftAsyncContextAttrKind
| SwiftContextAttrKind
| SwiftErrorResultAttrKind
| SwiftIndirectResultAttrKind
| AnnotateAttrKind
| CFConsumedAttrKind
| CarriesDependencyAttrKind
| NSConsumedAttrKind
| NonNullAttrKind
| OSConsumedAttrKind
| PassObjectSizeAttrKind
| ReleaseHandleAttrKind
| UseHandleAttrKind
| HLSLSV_DispatchThreadIDAttrKind
| HLSLSV_GroupIndexAttrKind
| AMDGPUFlatWorkGroupSizeAttrKind
| AMDGPUNumSGPRAttrKind
| AMDGPUNumVGPRAttrKind
| AMDGPUWavesPerEUAttrKind
| ARMInterruptAttrKind
| AVRInterruptAttrKind
| AVRSignalAttrKind
| AcquireCapabilityAttrKind
| AcquiredAfterAttrKind
| AcquiredBeforeAttrKind
| AlignMac68kAttrKind
| AlignNaturalAttrKind
| AlignedAttrKind
| AllocAlignAttrKind
| AllocSizeAttrKind
| AlwaysDestroyAttrKind
| AnalyzerNoReturnAttrKind
| AnyX86InterruptAttrKind
| AnyX86NoCallerSavedRegistersAttrKind
| ArgumentWithTypeTagAttrKind
| ArmBuiltinAliasAttrKind
| ArmLocallyStreamingAttrKind
| ArmNewAttrKind
| ArtificialAttrKind
| AsmLabelAttrKind
| AssertCapabilityAttrKind
| AssertExclusiveLockAttrKind
| AssumeAlignedAttrKind
| AssumptionAttrKind
| AvailabilityAttrKind
| AvailableOnlyInDefaultEvalMethodAttrKind
| BPFPreserveAccessIndexAttrKind
| BPFPreserveStaticOffsetAttrKind
| BTFDeclTagAttrKind
| BlocksAttrKind
| BuiltinAttrKind
| C11NoReturnAttrKind
| CFAuditedTransferAttrKind
| CFGuardAttrKind
| CFICanonicalJumpTableAttrKind
| CFReturnsNotRetainedAttrKind
| CFReturnsRetainedAttrKind
| CFUnknownTransferAttrKind
| CPUDispatchAttrKind
| CPUSpecificAttrKind
| CUDAConstantAttrKind
| CUDADeviceAttrKind
| CUDADeviceBuiltinSurfaceTypeAttrKind
| CUDADeviceBuiltinTextureTypeAttrKind
| CUDAGlobalAttrKind
| CUDAHostAttrKind
| CUDAInvalidTargetAttrKind
| CUDALaunchBoundsAttrKind
| CXX11NoReturnAttrKind
| CallableWhenAttrKind
| CallbackAttrKind
| CapabilityAttrKind
| CapturedRecordAttrKind
| CleanupAttrKind
| CmseNSEntryAttrKind
| CodeModelAttrKind
| CodeSegAttrKind
| ColdAttrKind
| CommonAttrKind
| ConstAttrKind
| ConstInitAttrKind
| ConstructorAttrKind
| ConsumableAttrKind
| ConsumableAutoCastAttrKind
| ConsumableSetOnReadAttrKind
| ConvergentAttrKind
| CoroDisableLifetimeBoundAttrKind
| CoroLifetimeBoundAttrKind
| CoroOnlyDestroyWhenCompleteAttrKind
| CoroReturnTypeAttrKind
| CoroWrapperAttrKind
| CountedByAttrKind
| DLLExportAttrKind
| DLLExportStaticLocalAttrKind
| DLLImportAttrKind
| DLLImportStaticLocalAttrKind
| DeprecatedAttrKind
| DestructorAttrKind
| DiagnoseAsBuiltinAttrKind
| DiagnoseIfAttrKind
| DisableSanitizerInstrumentationAttrKind
| DisableTailCallsAttrKind
| EmptyBasesAttrKind
| EnableIfAttrKind
| EnforceTCBAttrKind
| EnforceTCBLeafAttrKind
| EnumExtensibilityAttrKind
| ErrorAttrKind
| ExcludeFromExplicitInstantiationAttrKind
| ExclusiveTrylockFunctionAttrKind
| ExternalSourceSymbolAttrKind
| FinalAttrKind
| FlagEnumAttrKind
| FlattenAttrKind
| FormatAttrKind
| FormatArgAttrKind
| FunctionReturnThunksAttrKind
| GNUInlineAttrKind
| GuardedByAttrKind
| GuardedVarAttrKind
| HIPManagedAttrKind
| HLSLNumThreadsAttrKind
| HLSLResourceAttrKind
| HLSLResourceBindingAttrKind
| HLSLShaderAttrKind
| HotAttrKind
| IBActionAttrKind
| IBOutletAttrKind
| IBOutletCollectionAttrKind
| InitPriorityAttrKind
| InternalLinkageAttrKind
| LTOVisibilityPublicAttrKind
| LayoutVersionAttrKind
| LeafAttrKind
| LockReturnedAttrKind
| LocksExcludedAttrKind
| M68kInterruptAttrKind
| MIGServerRoutineAttrKind
| MSAllocatorAttrKind
| MSConstexprAttrKind
| MSInheritanceAttrKind
| MSNoVTableAttrKind
| MSP430InterruptAttrKind
| MSStructAttrKind
| MSVtorDispAttrKind
| MaxFieldAlignmentAttrKind
| MayAliasAttrKind
| MaybeUndefAttrKind
| MicroMipsAttrKind
| MinSizeAttrKind
| MinVectorWidthAttrKind
| Mips16AttrKind
| MipsInterruptAttrKind
| MipsLongCallAttrKind
| MipsShortCallAttrKind
| NSConsumesSelfAttrKind
| NSErrorDomainAttrKind
| NSReturnsAutoreleasedAttrKind
| NSReturnsNotRetainedAttrKind
| NVPTXKernelAttrKind
| NakedAttrKind
| NoAliasAttrKind
| NoCommonAttrKind
| NoDebugAttrKind
| NoDestroyAttrKind
| NoDuplicateAttrKind
| NoInstrumentFunctionAttrKind
| NoMicroMipsAttrKind
| NoMips16AttrKind
| NoProfileFunctionAttrKind
| NoRandomizeLayoutAttrKind
| NoReturnAttrKind
| NoSanitizeAttrKind
| NoSpeculativeLoadHardeningAttrKind
| NoSplitStackAttrKind
| NoStackProtectorAttrKind
| NoThreadSafetyAnalysisAttrKind
| NoThrowAttrKind
| NoUniqueAddressAttrKind
| NoUwtableAttrKind
| NotTailCalledAttrKind
| OMPAllocateDeclAttrKind
| OMPCaptureNoInitAttrKind
| OMPDeclareTargetDeclAttrKind
| OMPDeclareVariantAttrKind
| OMPThreadPrivateDeclAttrKind
| OSConsumesThisAttrKind
| OSReturnsNotRetainedAttrKind
| OSReturnsRetainedAttrKind
| OSReturnsRetainedOnNonZeroAttrKind
| OSReturnsRetainedOnZeroAttrKind
| ObjCBridgeAttrKind
| ObjCBridgeMutableAttrKind
| ObjCBridgeRelatedAttrKind
| ObjCExceptionAttrKind
| ObjCExplicitProtocolImplAttrKind
| ObjCExternallyRetainedAttrKind
| ObjCIndependentClassAttrKind
| ObjCMethodFamilyAttrKind
| ObjCNSObjectAttrKind
| ObjCPreciseLifetimeAttrKind
| ObjCRequiresPropertyDefsAttrKind
| ObjCRequiresSuperAttrKind
| ObjCReturnsInnerPointerAttrKind
| ObjCRootClassAttrKind
| ObjCSubclassingRestrictedAttrKind
| OpenCLIntelReqdSubGroupSizeAttrKind
| OpenCLKernelAttrKind
| OptimizeNoneAttrKind
| OverrideAttrKind
| OwnerAttrKind
| OwnershipAttrKind
| PackedAttrKind
| ParamTypestateAttrKind
| PatchableFunctionEntryAttrKind
| PointerAttrKind
| PragmaClangBSSSectionAttrKind
| PragmaClangDataSectionAttrKind
| PragmaClangRelroSectionAttrKind
| PragmaClangRodataSectionAttrKind
| PragmaClangTextSectionAttrKind
| PreferredNameAttrKind
| PreferredTypeAttrKind
| PtGuardedByAttrKind
| PtGuardedVarAttrKind
| PureAttrKind
| RISCVInterruptAttrKind
| RandomizeLayoutAttrKind
| ReadOnlyPlacementAttrKind
| ReinitializesAttrKind
| ReleaseCapabilityAttrKind
| ReqdWorkGroupSizeAttrKind
| RequiresCapabilityAttrKind
| RestrictAttrKind
| RetainAttrKind
| ReturnTypestateAttrKind
| ReturnsNonNullAttrKind
| ReturnsTwiceAttrKind
| SYCLKernelAttrKind
| SYCLSpecialClassAttrKind
| ScopedLockableAttrKind
| SectionAttrKind
| SelectAnyAttrKind
| SentinelAttrKind
| SetTypestateAttrKind
| SpeculativeLoadHardeningAttrKind
| StandaloneDebugAttrKind
| StrictFPAttrKind
| StrictGuardStackCheckAttrKind
| SwiftAsyncAttrKind
| SwiftAsyncErrorAttrKind
| SwiftAsyncNameAttrKind
| SwiftAttrAttrKind
| SwiftBridgeAttrKind
| SwiftBridgedTypedefAttrKind
| SwiftErrorAttrKind
| SwiftImportAsNonGenericAttrKind
| SwiftImportPropertyAsAccessorsAttrKind
| SwiftNameAttrKind
| SwiftNewTypeAttrKind
| SwiftPrivateAttrKind
| TLSModelAttrKind
| TargetAttrKind
| TargetClonesAttrKind
| TargetVersionAttrKind
| TestTypestateAttrKind
| TransparentUnionAttrKind
| TrivialABIAttrKind
| TryAcquireCapabilityAttrKind
| TypeTagForDatatypeAttrKind
| TypeVisibilityAttrKind
| UninitializedAttrKind
| UnsafeBufferUsageAttrKind
| UnusedAttrKind
| UsedAttrKind
| UsingIfExistsAttrKind
| UuidAttrKind
| VecReturnAttrKind
| VecTypeHintAttrKind
| VisibilityAttrKind
| WarnUnusedAttrKind
| WarnUnusedResultAttrKind
| WeakAttrKind
| WeakImportAttrKind
| WeakRefAttrKind
| WebAssemblyExportNameAttrKind
| WebAssemblyImportModuleAttrKind
| WebAssemblyImportNameAttrKind
| WorkGroupSizeHintAttrKind
| X86ForceAlignArgPointerAttrKind
| XRayInstrumentAttrKind
| XRayLogArgsAttrKind
| ZeroCallUsedRegsAttrKind
| AbiTagAttrKind
| AliasAttrKind
| AlignValueAttrKind
| BuiltinAliasAttrKind
| CalledOnceAttrKind
| IFuncAttrKind
| InitSegAttrKind
| LoaderUninitializedAttrKind
| LoopHintAttrKind
| ModeAttrKind
| NoBuiltinAttrKind
| NoEscapeAttrKind
| OMPCaptureKindAttrKind
| OMPDeclareSimdDeclAttrKind
| OMPReferencedVarAttrKind
| ObjCBoxableAttrKind
| ObjCClassStubAttrKind
| ObjCDesignatedInitializerAttrKind
| ObjCDirectAttrKind
| ObjCDirectMembersAttrKind
| ObjCNonLazyClassAttrKind
| ObjCNonRuntimeProtocolAttrKind
| ObjCRuntimeNameAttrKind
| ObjCRuntimeVisibleAttrKind
| OpenCLAccessAttrKind
| OverloadableAttrKind
| RenderScriptKernelAttrKind
| SwiftObjCMembersAttrKind
| SwiftVersionedAdditionAttrKind
| SwiftVersionedRemovalAttrKind
| ThreadAttrKind
type builtin_type_kind = [
| `Void
| `Bool
| `Char_U
| `UChar
| `WChar_U
| `Char8
| `Char16
| `Char32
| `UShort
| `UInt
| `ULong
| `ULongLong
| `UInt128
| `Char_S
| `SChar
| `WChar_S
| `Short
| `Int
| `Long
| `LongLong
| `Int128
| `ShortAccum
| `Accum
| `LongAccum
| `UShortAccum
| `UAccum
| `ULongAccum
| `ShortFract
| `Fract
| `LongFract
| `UShortFract
| `UFract
| `ULongFract
| `SatShortAccum
| `SatAccum
| `SatLongAccum
| `SatUShortAccum
| `SatUAccum
| `SatULongAccum
| `SatShortFract
| `SatFract
| `SatLongFract
| `SatUShortFract
| `SatUFract
| `SatULongFract
| `Half
| `Float
| `Double
| `LongDouble
| `Float16
| `BFloat16
| `Float128
| `Ibm128
| `NullPtr
| `ObjCId
| `ObjCClass
| `ObjCSel
| `OCLSampler
| `OCLEvent
| `OCLClkEvent
| `OCLQueue
| `OCLReserveID
| `Dependent
| `Overload
| `BoundMember
| `PseudoObject
| `UnknownAny
| `BuiltinFn
| `ARCUnbridgedCast
| `IncompleteMatrixIdx
| `OMPArraySection
| `OMPArrayShaping
| `OMPIterator
| `SveInt8
| `SveInt16
| `SveInt32
| `SveInt64
| `SveUint8
| `SveUint16
| `SveUint32
| `SveUint64
| `SveFloat16
| `SveFloat32
| `SveFloat64
| `SveBFloat16
| `SveInt8x2
| `SveInt16x2
| `SveInt32x2
| `SveInt64x2
| `SveUint8x2
| `SveUint16x2
| `SveUint32x2
| `SveUint64x2
| `SveFloat16x2
| `SveFloat32x2
| `SveFloat64x2
| `SveBFloat16x2
| `SveInt8x3
| `SveInt16x3
| `SveInt32x3
| `SveInt64x3
| `SveUint8x3
| `SveUint16x3
| `SveUint32x3
| `SveUint64x3
| `SveFloat16x3
| `SveFloat32x3
| `SveFloat64x3
| `SveBFloat16x3
| `SveInt8x4
| `SveInt16x4
| `SveInt32x4
| `SveInt64x4
| `SveUint8x4
| `SveUint16x4
| `SveUint32x4
| `SveUint64x4
| `SveFloat16x4
| `SveFloat32x4
| `SveFloat64x4
| `SveBFloat16x4
| `SveBool
| `SveBoolx2
| `SveBoolx4
| `SveCount
]
type cast_kind = [
| `Dependent
| `BitCast
| `LValueBitCast
| `LValueToRValueBitCast
| `LValueToRValue
| `NoOp
| `BaseToDerived
| `DerivedToBase
| `UncheckedDerivedToBase
| `Dynamic
| `ToUnion
| `ArrayToPointerDecay
| `FunctionToPointerDecay
| `NullToPointer
| `NullToMemberPointer
| `BaseToDerivedMemberPointer
| `DerivedToBaseMemberPointer
| `MemberPointerToBoolean
| `ReinterpretMemberPointer
| `UserDefinedConversion
| `ConstructorConversion
| `IntegralToPointer
| `PointerToIntegral
| `PointerToBoolean
| `ToVoid
| `MatrixCast
| `VectorSplat
| `IntegralCast
| `IntegralToBoolean
| `IntegralToFloating
| `FloatingToFixedPoint
| `FixedPointToFloating
| `FixedPointCast
| `FixedPointToIntegral
| `IntegralToFixedPoint
| `FixedPointToBoolean
| `FloatingToIntegral
| `FloatingToBoolean
| `BooleanToSignedIntegral
| `FloatingCast
| `CPointerToObjCPointerCast
| `BlockPointerToObjCPointerCast
| `AnyPointerToBlockPointerCast
| `ObjCObjectLValueCast
| `FloatingRealToComplex
| `FloatingComplexToReal
| `FloatingComplexToBoolean
| `FloatingComplexCast
| `FloatingComplexToIntegralComplex
| `IntegralRealToComplex
| `IntegralComplexToReal
| `IntegralComplexToBoolean
| `IntegralComplexCast
| `IntegralComplexToFloatingComplex
| `ARCProduceObject
| `ARCConsumeObject
| `ARCReclaimReturnedObject
| `ARCExtendBlockObject
| `AtomicToNonAtomic
| `NonAtomicToAtomic
| `CopyAndAutoreleaseBlockObject
| `BuiltinFnToFnPtr
| `ZeroToOCLOpaqueType
| `AddressSpaceConversion
| `IntToOCLSampler
]
type decl_kind = [
| `TranslationUnit
| `RequiresExprBody
| `LinkageSpec
| `ExternCContext
| `Export
| `Captured
| `Block
| `TopLevelStmt
| `StaticAssert
| `PragmaDetectMismatch
| `PragmaComment
| `ObjCPropertyImpl
| `OMPThreadPrivate
| `OMPRequires
| `OMPAllocate
| `Named
| `ObjCMethod
| `ObjCContainer
| `ObjCProtocol
| `ObjCInterface
| `ObjCImpl
| `ObjCImplementation
| `ObjCCategoryImpl
| `ObjCCategory
| `Namespace
| `HLSLBuffer
| `Value
| `OMPDeclareReduction
| `OMPDeclareMapper
| `UnresolvedUsingValue
| `UnnamedGlobalConstant
| `TemplateParamObject
| `MSGuid
| `IndirectField
| `EnumConstant
| `Declarator
| `Function
| `CXXMethod
| `CXXDestructor
| `CXXConversion
| `CXXConstructor
| `CXXDeductionGuide
| `Var
| `VarTemplateSpecialization
| `VarTemplatePartialSpecialization
| `ParmVar
| `OMPCapturedExpr
| `ImplicitParam
| `Decomposition
| `NonTypeTemplateParm
| `MSProperty
| `Field
| `ObjCIvar
| `ObjCAtDefsField
| `Binding
| `UsingShadow
| `ConstructorUsingShadow
| `UsingPack
| `UsingDirective
| `UnresolvedUsingIfExists
| `Type
| `Tag
| `Record
| `CXXRecord
| `ClassTemplateSpecialization
| `ClassTemplatePartialSpecialization
| `Enum
| `UnresolvedUsingTypename
| `TypedefName
| `Typedef
| `TypeAlias
| `ObjCTypeParam
| `TemplateTypeParm
| `Template
| `TemplateTemplateParm
| `RedeclarableTemplate
| `VarTemplate
| `TypeAliasTemplate
| `FunctionTemplate
| `ClassTemplate
| `Concept
| `BuiltinTemplate
| `ObjCProperty
| `ObjCCompatibleAlias
| `NamespaceAlias
| `Label
| `BaseUsing
| `UsingEnum
| `Using
| `LifetimeExtendedTemporary
| `Import
| `ImplicitConceptSpecialization
| `FriendTemplate
| `Friend
| `FileScopeAsm
| `Empty
| `AccessSpec
]
type cxx_temporary = pointer
type record_decl_info = {
rdi_definition_ptr : pointer;
rdi_is_module_private : bool;
rdi_is_complete_definition : bool;
rdi_is_dependent_type : bool;
}
type obj_c_subscript_ref_expr_info = {
osrei_kind : obj_c_subscript_kind;
osrei_getter : selector option;
osrei_setter : selector option;
}
type source_location = {
mutable sl_file : source_file option;
mutable sl_line : int option;
mutable sl_column : int option;
sl_is_macro : bool;
mutable sl_macro_file : source_file option;
mutable sl_macro_line : int option;
}
type source_range = source_location * source_location
type attr_tuple = attribute_info
type type_ptr = Clang_ast_types.TypePtr.t
type qual_type = {
qt_type_ptr : type_ptr;
qt_is_const : bool;
qt_is_restrict : bool;
qt_is_volatile : bool;
}
type decl_ref = {
dr_kind : decl_kind;
dr_decl_pointer : pointer;
dr_name : named_decl_info option;
dr_qual_type : qual_type option;
}
type cxx_construct_expr_info = {
xcei_decl_ref : decl_ref;
xcei_is_elidable : bool;
xcei_requires_zero_initialization : bool;
xcei_is_copy_constructor : bool;
}
type member_expr_info = {
mei_is_arrow : bool;
mei_performs_virtual_dispatch : bool;
mei_name : named_decl_info;
mei_decl_ref : decl_ref;
}
type namespace_alias_decl_info = {
nadi_namespace_loc : source_location;
nadi_target_name_loc : source_location;
nadi_nested_name_specifier_locs : nested_name_specifier_loc list;
nadi_namespace : decl_ref;
}
type obj_c_property_decl_info = {
opdi_qual_type : qual_type;
opdi_getter_method : decl_ref option;
opdi_setter_method : decl_ref option;
opdi_ivar_decl : decl_ref option;
opdi_property_control : obj_c_property_control;
opdi_property_attributes : property_attribute list;
}
type obj_c_property_impl_decl_info = {
opidi_implementation : property_implementation;
opidi_property_decl : decl_ref option;
opidi_ivar_decl : decl_ref option;
}
type obj_c_property_ref_expr_info = {
oprei_kind : property_ref_kind;
oprei_is_super_receiver : bool;
oprei_is_messaging_getter : bool;
oprei_is_messaging_setter : bool;
}
type obj_c_message_expr_info = {
omei_selector : string;
omei_is_definition_found : bool;
omei_decl_pointer : pointer option;
omei_receiver_kind : receiver_kind;
}
type c_type =
| NoneType of type_info
| AdjustedType of type_info * qual_type
| DecayedType of type_info * qual_type
| ConstantArrayType of type_info * array_type_info * int
| DependentSizedArrayType of type_info * array_type_info
| IncompleteArrayType of type_info * array_type_info
| VariableArrayType of type_info * array_type_info * pointer
| AtomicType of type_info * qual_type
| AttributedType of type_info * attr_type_info
| BTFTagAttributedType of type_info
| BitIntType of type_info
| BlockPointerType of type_info * qual_type
| BuiltinType of type_info * builtin_type_kind
| ComplexType of type_info
| DecltypeType of type_info * qual_type
| AutoType of type_info
| DeducedTemplateSpecializationType of type_info
| DependentAddressSpaceType of type_info
| DependentBitIntType of type_info
| DependentNameType of type_info
| DependentSizedExtVectorType of type_info
| DependentTemplateSpecializationType of type_info
| DependentVectorType of type_info
| ElaboratedType of type_info
| FunctionNoProtoType of type_info * function_type_info
| FunctionProtoType of type_info * function_type_info * params_type_info
| InjectedClassNameType of type_info
| MacroQualifiedType of type_info
| ConstantMatrixType of type_info
| DependentSizedMatrixType of type_info
| MemberPointerType of type_info * qual_type
| ObjCObjectPointerType of type_info * qual_type
| ObjCObjectType of type_info * objc_object_type_info
| ObjCInterfaceType of type_info * pointer
| ObjCTypeParamType of type_info
| PackExpansionType of type_info
| ParenType of type_info * qual_type
| PipeType of type_info
| PointerType of type_info * qual_type
| LValueReferenceType of type_info * qual_type
| RValueReferenceType of type_info * qual_type
| SubstTemplateTypeParmPackType of type_info
| SubstTemplateTypeParmType of type_info
| EnumType of type_info * pointer
| RecordType of type_info * pointer
| TemplateSpecializationType of type_info
| TemplateTypeParmType of type_info
| TypeOfExprType of type_info
| TypeOfType of type_info
| TypedefType of type_info * typedef_type_info
| UnaryTransformType of type_info
| UnresolvedUsingType of type_info
| UsingType of type_info
| VectorType of type_info
| ExtVectorType of type_info
type translation_unit_decl_info = {
tudi_input_path : source_file;
tudi_input_kind : input_kind;
tudi_integer_type_widths : integer_type_widths;
tudi_is_objc_arc_on : bool;
tudi_types : c_type list;
}
type unary_expr_or_type_trait_expr_info = {
uttei_kind : unary_expr_or_type_trait_kind;
uttei_qual_type : qual_type;
}
type unresolved_lookup_expr_info = {
ulei_requires_ADL : bool;
ulei_is_overloaded : bool;
ulei_naming_class : decl_ref option;
}
type using_directive_decl_info = {
uddi_using_location : source_location;
uddi_namespace_key_location : source_location;
uddi_nested_name_specifier_locs : nested_name_specifier_loc list;
uddi_nominated_namespace : decl_ref option;
}
type expr_info = {
ei_qual_type : qual_type;
ei_value_kind : value_kind;
ei_object_kind : object_kind;
}
type attribute = [
| `AddressSpaceAttr of attribute_info
| `AnnotateTypeAttr of attribute_info
| `ArmInAttr of attribute_info
| `ArmInOutAttr of attribute_info
| `ArmMveStrictPolymorphismAttr of attribute_info
| `ArmOutAttr of attribute_info
| `ArmPreservesAttr of attribute_info
| `ArmStreamingAttr of attribute_info
| `ArmStreamingCompatibleAttr of attribute_info
| `BTFTypeTagAttr of attribute_info
| `CmseNSCallAttr of attribute_info
| `HLSLParamModifierAttr of attribute_info
| `NoDerefAttr of attribute_info
| `ObjCGCAttr of attribute_info
| `ObjCInertUnsafeUnretainedAttr of attribute_info
| `ObjCKindOfAttr of attribute_info
| `OpenCLConstantAddressSpaceAttr of attribute_info
| `OpenCLGenericAddressSpaceAttr of attribute_info
| `OpenCLGlobalAddressSpaceAttr of attribute_info
| `OpenCLGlobalDeviceAddressSpaceAttr of attribute_info
| `OpenCLGlobalHostAddressSpaceAttr of attribute_info
| `OpenCLLocalAddressSpaceAttr of attribute_info
| `OpenCLPrivateAddressSpaceAttr of attribute_info
| `Ptr32Attr of attribute_info
| `Ptr64Attr of attribute_info
| `SPtrAttr of attribute_info
| `TypeNonNullAttr of attribute_info
| `TypeNullUnspecifiedAttr of attribute_info
| `TypeNullableAttr of attribute_info
| `TypeNullableResultAttr of attribute_info
| `UPtrAttr of attribute_info
| `WebAssemblyFuncrefAttr of attribute_info
| `CodeAlignAttr of attribute_info
| `FallThroughAttr of attribute_info
| `LikelyAttr of attribute_info
| `MustTailAttr of attribute_info
| `OpenCLUnrollHintAttr of attribute_info
| `UnlikelyAttr of attribute_info
| `AlwaysInlineAttr of attribute_info
| `NoInlineAttr of attribute_info
| `NoMergeAttr of attribute_info
| `SuppressAttr of attribute_info
| `AArch64SVEPcsAttr of attribute_info
| `AArch64VectorPcsAttr of attribute_info
| `AMDGPUKernelCallAttr of attribute_info
| `AcquireHandleAttr of attribute_info
| `AnyX86NoCfCheckAttr of attribute_info
| `CDeclAttr of attribute_info
| `FastCallAttr of attribute_info
| `IntelOclBiccAttr of attribute_info
| `LifetimeBoundAttr of attribute_info
| `M68kRTDAttr of attribute_info
| `MSABIAttr of attribute_info
| `NSReturnsRetainedAttr of attribute_info
| `ObjCOwnershipAttr of attribute_info
| `PascalAttr of attribute_info
| `PcsAttr of attribute_info
| `PreserveAllAttr of attribute_info
| `PreserveMostAttr of attribute_info
| `RegCallAttr of attribute_info
| `StdCallAttr of attribute_info
| `SwiftAsyncCallAttr of attribute_info
| `SwiftCallAttr of attribute_info
| `SysVABIAttr of attribute_info
| `ThisCallAttr of attribute_info
| `VectorCallAttr of attribute_info
| `SwiftAsyncContextAttr of attribute_info
| `SwiftContextAttr of attribute_info
| `SwiftErrorResultAttr of attribute_info
| `SwiftIndirectResultAttr of attribute_info
| `AnnotateAttr of attr_tuple * string
| `CFConsumedAttr of attribute_info
| `CarriesDependencyAttr of attribute_info
| `NSConsumedAttr of attribute_info
| `NonNullAttr of attribute_info
| `OSConsumedAttr of attribute_info
| `PassObjectSizeAttr of attribute_info
| `ReleaseHandleAttr of attribute_info
| `UseHandleAttr of attribute_info
| `HLSLSV_DispatchThreadIDAttr of attribute_info
| `HLSLSV_GroupIndexAttr of attribute_info
| `AMDGPUFlatWorkGroupSizeAttr of attribute_info
| `AMDGPUNumSGPRAttr of attribute_info
| `AMDGPUNumVGPRAttr of attribute_info
| `AMDGPUWavesPerEUAttr of attribute_info
| `ARMInterruptAttr of attribute_info
| `AVRInterruptAttr of attribute_info
| `AVRSignalAttr of attribute_info
| `AcquireCapabilityAttr of attribute_info
| `AcquiredAfterAttr of attribute_info
| `AcquiredBeforeAttr of attribute_info
| `AlignMac68kAttr of attribute_info
| `AlignNaturalAttr of attribute_info
| `AlignedAttr of attribute_info
| `AllocAlignAttr of attribute_info
| `AllocSizeAttr of attribute_info
| `AlwaysDestroyAttr of attribute_info
| `AnalyzerNoReturnAttr of attribute_info
| `AnyX86InterruptAttr of attribute_info
| `AnyX86NoCallerSavedRegistersAttr of attribute_info
| `ArgumentWithTypeTagAttr of attribute_info
| `ArmBuiltinAliasAttr of attribute_info
| `ArmLocallyStreamingAttr of attribute_info
| `ArmNewAttr of attribute_info
| `ArtificialAttr of attribute_info
| `AsmLabelAttr of attribute_info
| `AssertCapabilityAttr of attribute_info
| `AssertExclusiveLockAttr of attribute_info
| `AssumeAlignedAttr of attribute_info
| `AssumptionAttr of attribute_info
| `AvailabilityAttr of attr_tuple * availability_attr_info
| `AvailableOnlyInDefaultEvalMethodAttr of attribute_info
| `BPFPreserveAccessIndexAttr of attribute_info
| `BPFPreserveStaticOffsetAttr of attribute_info
| `BTFDeclTagAttr of attribute_info
| `BlocksAttr of attribute_info
| `BuiltinAttr of attribute_info
| `C11NoReturnAttr of attribute_info
| `CFAuditedTransferAttr of attribute_info
| `CFGuardAttr of attribute_info
| `CFICanonicalJumpTableAttr of attribute_info
| `CFReturnsNotRetainedAttr of attribute_info
| `CFReturnsRetainedAttr of attribute_info
| `CFUnknownTransferAttr of attribute_info
| `CPUDispatchAttr of attribute_info
| `CPUSpecificAttr of attribute_info
| `CUDAConstantAttr of attribute_info
| `CUDADeviceAttr of attribute_info
| `CUDADeviceBuiltinSurfaceTypeAttr of attribute_info
| `CUDADeviceBuiltinTextureTypeAttr of attribute_info
| `CUDAGlobalAttr of attribute_info
| `CUDAHostAttr of attribute_info
| `CUDAInvalidTargetAttr of attribute_info
| `CUDALaunchBoundsAttr of attribute_info
| `CXX11NoReturnAttr of attribute_info
| `CallableWhenAttr of attribute_info
| `CallbackAttr of attribute_info
| `CapabilityAttr of attribute_info
| `CapturedRecordAttr of attribute_info
| `CleanupAttr of attribute_info
| `CmseNSEntryAttr of attribute_info
| `CodeModelAttr of attribute_info
| `CodeSegAttr of attribute_info
| `ColdAttr of attribute_info
| `CommonAttr of attribute_info
| `ConstAttr of attribute_info
| `ConstInitAttr of attribute_info
| `ConstructorAttr of attribute_info
| `ConsumableAttr of attribute_info
| `ConsumableAutoCastAttr of attribute_info
| `ConsumableSetOnReadAttr of attribute_info
| `ConvergentAttr of attribute_info
| `CoroDisableLifetimeBoundAttr of attribute_info
| `CoroLifetimeBoundAttr of attribute_info
| `CoroOnlyDestroyWhenCompleteAttr of attribute_info
| `CoroReturnTypeAttr of attribute_info
| `CoroWrapperAttr of attribute_info
| `CountedByAttr of attribute_info
| `DLLExportAttr of attribute_info
| `DLLExportStaticLocalAttr of attribute_info
| `DLLImportAttr of attribute_info
| `DLLImportStaticLocalAttr of attribute_info
| `DeprecatedAttr of attribute_info
| `DestructorAttr of attribute_info
| `DiagnoseAsBuiltinAttr of attribute_info
| `DiagnoseIfAttr of attribute_info
| `DisableSanitizerInstrumentationAttr of attribute_info
| `DisableTailCallsAttr of attribute_info
| `EmptyBasesAttr of attribute_info
| `EnableIfAttr of attribute_info
| `EnforceTCBAttr of attribute_info
| `EnforceTCBLeafAttr of attribute_info
| `EnumExtensibilityAttr of attribute_info
| `ErrorAttr of attribute_info
| `ExcludeFromExplicitInstantiationAttr of attribute_info
| `ExclusiveTrylockFunctionAttr of attribute_info
| `ExternalSourceSymbolAttr of attribute_info
| `FinalAttr of attribute_info
| `FlagEnumAttr of attribute_info
| `FlattenAttr of attribute_info
| `FormatAttr of attribute_info
| `FormatArgAttr of attribute_info
| `FunctionReturnThunksAttr of attribute_info
| `GNUInlineAttr of attribute_info
| `GuardedByAttr of attribute_info
| `GuardedVarAttr of attribute_info
| `HIPManagedAttr of attribute_info
| `HLSLNumThreadsAttr of attribute_info
| `HLSLResourceAttr of attribute_info
| `HLSLResourceBindingAttr of attribute_info
| `HLSLShaderAttr of attribute_info
| `HotAttr of attribute_info
| `IBActionAttr of attribute_info
| `IBOutletAttr of attribute_info
| `IBOutletCollectionAttr of attribute_info
| `InitPriorityAttr of attribute_info
| `InternalLinkageAttr of attribute_info
| `LTOVisibilityPublicAttr of attribute_info
| `LayoutVersionAttr of attribute_info
| `LeafAttr of attribute_info
| `LockReturnedAttr of attribute_info
| `LocksExcludedAttr of attribute_info
| `M68kInterruptAttr of attribute_info
| `MIGServerRoutineAttr of attribute_info
| `MSAllocatorAttr of attribute_info
| `MSConstexprAttr of attribute_info
| `MSInheritanceAttr of attribute_info
| `MSNoVTableAttr of attribute_info
| `MSP430InterruptAttr of attribute_info
| `MSStructAttr of attribute_info
| `MSVtorDispAttr of attribute_info
| `MaxFieldAlignmentAttr of attribute_info
| `MayAliasAttr of attribute_info
| `MaybeUndefAttr of attribute_info
| `MicroMipsAttr of attribute_info
| `MinSizeAttr of attribute_info
| `MinVectorWidthAttr of attribute_info
| `Mips16Attr of attribute_info
| `MipsInterruptAttr of attribute_info
| `MipsLongCallAttr of attribute_info
| `MipsShortCallAttr of attribute_info
| `NSConsumesSelfAttr of attribute_info
| `NSErrorDomainAttr of attribute_info
| `NSReturnsAutoreleasedAttr of attribute_info
| `NSReturnsNotRetainedAttr of attribute_info
| `NVPTXKernelAttr of attribute_info
| `NakedAttr of attribute_info
| `NoAliasAttr of attribute_info
| `NoCommonAttr of attribute_info
| `NoDebugAttr of attribute_info
| `NoDestroyAttr of attribute_info
| `NoDuplicateAttr of attribute_info
| `NoInstrumentFunctionAttr of attribute_info
| `NoMicroMipsAttr of attribute_info
| `NoMips16Attr of attribute_info
| `NoProfileFunctionAttr of attribute_info
| `NoRandomizeLayoutAttr of attribute_info
| `NoReturnAttr of attribute_info
| `NoSanitizeAttr of attribute_info
| `NoSpeculativeLoadHardeningAttr of attribute_info
| `NoSplitStackAttr of attribute_info
| `NoStackProtectorAttr of attribute_info
| `NoThreadSafetyAnalysisAttr of attribute_info
| `NoThrowAttr of attribute_info
| `NoUniqueAddressAttr of attribute_info
| `NoUwtableAttr of attribute_info
| `NotTailCalledAttr of attribute_info
| `OMPAllocateDeclAttr of attribute_info
| `OMPCaptureNoInitAttr of attribute_info
| `OMPDeclareTargetDeclAttr of attribute_info
| `OMPDeclareVariantAttr of attribute_info
| `OMPThreadPrivateDeclAttr of attribute_info
| `OSConsumesThisAttr of attribute_info
| `OSReturnsNotRetainedAttr of attribute_info
| `OSReturnsRetainedAttr of attribute_info
| `OSReturnsRetainedOnNonZeroAttr of attribute_info
| `OSReturnsRetainedOnZeroAttr of attribute_info
| `ObjCBridgeAttr of attribute_info
| `ObjCBridgeMutableAttr of attribute_info
| `ObjCBridgeRelatedAttr of attribute_info
| `ObjCExceptionAttr of attribute_info
| `ObjCExplicitProtocolImplAttr of attribute_info
| `ObjCExternallyRetainedAttr of attribute_info
| `ObjCIndependentClassAttr of attribute_info
| `ObjCMethodFamilyAttr of attribute_info
| `ObjCNSObjectAttr of attribute_info
| `ObjCPreciseLifetimeAttr of attribute_info
| `ObjCRequiresPropertyDefsAttr of attribute_info
| `ObjCRequiresSuperAttr of attribute_info
| `ObjCReturnsInnerPointerAttr of attribute_info
| `ObjCRootClassAttr of attribute_info
| `ObjCSubclassingRestrictedAttr of attribute_info
| `OpenCLIntelReqdSubGroupSizeAttr of attribute_info
| `OpenCLKernelAttr of attribute_info
| `OptimizeNoneAttr of attribute_info
| `OverrideAttr of attribute_info
| `OwnerAttr of attribute_info
| `OwnershipAttr of attribute_info
| `PackedAttr of attribute_info
| `ParamTypestateAttr of attribute_info
| `PatchableFunctionEntryAttr of attribute_info
| `PointerAttr of attribute_info
| `PragmaClangBSSSectionAttr of attribute_info
| `PragmaClangDataSectionAttr of attribute_info
| `PragmaClangRelroSectionAttr of attribute_info
| `PragmaClangRodataSectionAttr of attribute_info
| `PragmaClangTextSectionAttr of attribute_info
| `PreferredNameAttr of attribute_info
| `PreferredTypeAttr of attribute_info
| `PtGuardedByAttr of attribute_info
| `PtGuardedVarAttr of attribute_info
| `PureAttr of attribute_info
| `RISCVInterruptAttr of attribute_info
| `RandomizeLayoutAttr of attribute_info
| `ReadOnlyPlacementAttr of attribute_info
| `ReinitializesAttr of attribute_info
| `ReleaseCapabilityAttr of attribute_info
| `ReqdWorkGroupSizeAttr of attribute_info
| `RequiresCapabilityAttr of attribute_info
| `RestrictAttr of attribute_info
| `RetainAttr of attribute_info
| `ReturnTypestateAttr of attribute_info
| `ReturnsNonNullAttr of attribute_info
| `ReturnsTwiceAttr of attribute_info
| `SYCLKernelAttr of attribute_info
| `SYCLSpecialClassAttr of attribute_info
| `ScopedLockableAttr of attribute_info
| `SectionAttr of attribute_info
| `SelectAnyAttr of attribute_info
| `SentinelAttr of attr_tuple * sentinel_attr_info
| `SetTypestateAttr of attribute_info
| `SpeculativeLoadHardeningAttr of attribute_info
| `StandaloneDebugAttr of attribute_info
| `StrictFPAttr of attribute_info
| `StrictGuardStackCheckAttr of attribute_info
| `SwiftAsyncAttr of attribute_info
| `SwiftAsyncErrorAttr of attribute_info
| `SwiftAsyncNameAttr of attribute_info
| `SwiftAttrAttr of attribute_info
| `SwiftBridgeAttr of attribute_info
| `SwiftBridgedTypedefAttr of attribute_info
| `SwiftErrorAttr of attribute_info
| `SwiftImportAsNonGenericAttr of attribute_info
| `SwiftImportPropertyAsAccessorsAttr of attribute_info
| `SwiftNameAttr of attribute_info
| `SwiftNewTypeAttr of attribute_info
| `SwiftPrivateAttr of attribute_info
| `TLSModelAttr of attribute_info
| `TargetAttr of attribute_info
| `TargetClonesAttr of attribute_info
| `TargetVersionAttr of attribute_info
| `TestTypestateAttr of attribute_info
| `TransparentUnionAttr of attribute_info
| `TrivialABIAttr of attribute_info
| `TryAcquireCapabilityAttr of attribute_info
| `TypeTagForDatatypeAttr of attribute_info
| `TypeVisibilityAttr of attribute_info
| `UninitializedAttr of attribute_info
| `UnsafeBufferUsageAttr of attribute_info
| `UnusedAttr of attribute_info
| `UsedAttr of attribute_info
| `UsingIfExistsAttr of attribute_info
| `UuidAttr of attribute_info
| `VecReturnAttr of attribute_info
| `VecTypeHintAttr of attribute_info
| `VisibilityAttr of attr_tuple * visibility_attr
| `WarnUnusedAttr of attribute_info
| `WarnUnusedResultAttr of attribute_info
| `WeakAttr of attribute_info
| `WeakImportAttr of attribute_info
| `WeakRefAttr of attribute_info
| `WebAssemblyExportNameAttr of attribute_info
| `WebAssemblyImportModuleAttr of attribute_info
| `WebAssemblyImportNameAttr of attribute_info
| `WorkGroupSizeHintAttr of attribute_info
| `X86ForceAlignArgPointerAttr of attribute_info
| `XRayInstrumentAttr of attribute_info
| `XRayLogArgsAttr of attribute_info
| `ZeroCallUsedRegsAttr of attribute_info
| `AbiTagAttr of attribute_info
| `AliasAttr of attribute_info
| `AlignValueAttr of attribute_info
| `BuiltinAliasAttr of attribute_info
| `CalledOnceAttr of attribute_info
| `IFuncAttr of attribute_info
| `InitSegAttr of attribute_info
| `LoaderUninitializedAttr of attribute_info
| `LoopHintAttr of attribute_info
| `ModeAttr of attribute_info
| `NoBuiltinAttr of attribute_info
| `NoEscapeAttr of attribute_info
| `OMPCaptureKindAttr of attribute_info
| `OMPDeclareSimdDeclAttr of attribute_info
| `OMPReferencedVarAttr of attribute_info
| `ObjCBoxableAttr of attribute_info
| `ObjCClassStubAttr of attribute_info
| `ObjCDesignatedInitializerAttr of attribute_info
| `ObjCDirectAttr of attribute_info
| `ObjCDirectMembersAttr of attribute_info
| `ObjCNonLazyClassAttr of attribute_info
| `ObjCNonRuntimeProtocolAttr of attribute_info
| `ObjCRuntimeNameAttr of attribute_info
| `ObjCRuntimeVisibleAttr of attribute_info
| `OpenCLAccessAttr of attribute_info
| `OverloadableAttr of attribute_info
| `RenderScriptKernelAttr of attribute_info
| `SwiftObjCMembersAttr of attribute_info
| `SwiftVersionedAdditionAttr of attribute_info
| `SwiftVersionedRemovalAttr of attribute_info
| `ThreadAttr of attribute_info
]
type template_instantiation_arg_info = [
| `Null
| `Type of qual_type
| `Declaration of pointer
| `NullPtr
| `Integral of string
| `Template
| `TemplateExpansion
| `Expression
| `Pack of template_instantiation_arg_info list
]
type comment =
| VerbatimBlockLineComment of comment_info * comment list
| TextComment of comment_info * comment list
| InlineCommandComment of comment_info * comment list
| HTMLStartTagComment of comment_info * comment list
| HTMLEndTagComment of comment_info * comment list
| FullComment of comment_info * comment list
| ParagraphComment of comment_info * comment list
| BlockCommandComment of comment_info * comment list
| VerbatimLineComment of comment_info * comment list
| VerbatimBlockComment of comment_info * comment list
| TParamCommandComment of comment_info * comment list
| ParamCommandComment of comment_info * comment list
type template_specialization_info = {
tsi_template_decl : pointer;
tsi_specialization_args : template_instantiation_arg_info list;
}
type decl_info = {
di_pointer : pointer;
di_parent_pointer : pointer option;
di_source_range : source_range;
di_owning_module : string option;
di_is_implicit : bool;
di_is_used : bool;
di_is_this_declaration_referenced : bool;
di_is_invalid_decl : bool;
di_attributes : attribute list;
di_full_comment : comment option;
di_access : access_specifier;
}
and block_decl_info = {
bdi_parameters : decl list;
bdi_is_variadic : bool;
bdi_captures_cxx_this : bool;
bdi_captured_variables : block_captured_variable list;
bdi_body : stmt option;
bdi_mangled_name : string;
}
and cxx_ctor_initializer = {
xci_subject : cxx_ctor_initializer_subject;
xci_source_range : source_range;
xci_init_expr : stmt option;
}
and cxx_method_decl_info = {
xmdi_is_virtual : bool;
xmdi_is_static : bool;
xmdi_is_const : bool;
xmdi_is_copy_assignment : bool;
xmdi_is_copy_constructor : bool;
xmdi_is_move_constructor : bool;
xmdi_cxx_ctor_initializers : cxx_ctor_initializer list;
xmdi_overriden_methods : decl_ref list;
}
and cxx_record_decl_info = {
xrdi_bases : type_ptr list;
xrdi_vbases : type_ptr list;
xrdi_transitive_vbases : type_ptr list;
xrdi_is_pod : bool;
xrdi_is_trivially_copyable : bool;
xrdi_destructor : decl_ref option;
xrdi_lambda_call_operator : decl_ref option;
xrdi_lambda_captures : lambda_capture_info list;
}
and decl =
| TranslationUnitDecl of decl_info
+Clang_ast_t (infer.ATDGenerated.Clang_ast_t) Module ATDGenerated.Clang_ast_t
type atomic_expr_kind = [
| `AO__c11_atomic_init
| `AO__c11_atomic_load
| `AO__c11_atomic_store
| `AO__c11_atomic_exchange
| `AO__c11_atomic_compare_exchange_strong
| `AO__c11_atomic_compare_exchange_weak
| `AO__c11_atomic_fetch_add
| `AO__c11_atomic_fetch_sub
| `AO__c11_atomic_fetch_and
| `AO__c11_atomic_fetch_or
| `AO__c11_atomic_fetch_xor
| `AO__c11_atomic_fetch_nand
| `AO__c11_atomic_fetch_max
| `AO__c11_atomic_fetch_min
| `AO__atomic_load
| `AO__atomic_load_n
| `AO__atomic_store
| `AO__atomic_store_n
| `AO__atomic_exchange
| `AO__atomic_exchange_n
| `AO__atomic_compare_exchange
| `AO__atomic_compare_exchange_n
| `AO__atomic_fetch_add
| `AO__atomic_fetch_sub
| `AO__atomic_fetch_and
| `AO__atomic_fetch_or
| `AO__atomic_fetch_xor
| `AO__atomic_fetch_nand
| `AO__atomic_add_fetch
| `AO__atomic_sub_fetch
| `AO__atomic_and_fetch
| `AO__atomic_or_fetch
| `AO__atomic_xor_fetch
| `AO__atomic_max_fetch
| `AO__atomic_min_fetch
| `AO__atomic_nand_fetch
| `AO__scoped_atomic_load
| `AO__scoped_atomic_load_n
| `AO__scoped_atomic_store
| `AO__scoped_atomic_store_n
| `AO__scoped_atomic_exchange
| `AO__scoped_atomic_exchange_n
| `AO__scoped_atomic_compare_exchange
| `AO__scoped_atomic_compare_exchange_n
| `AO__scoped_atomic_fetch_add
| `AO__scoped_atomic_fetch_sub
| `AO__scoped_atomic_fetch_and
| `AO__scoped_atomic_fetch_or
| `AO__scoped_atomic_fetch_xor
| `AO__scoped_atomic_fetch_nand
| `AO__scoped_atomic_add_fetch
| `AO__scoped_atomic_sub_fetch
| `AO__scoped_atomic_and_fetch
| `AO__scoped_atomic_or_fetch
| `AO__scoped_atomic_xor_fetch
| `AO__scoped_atomic_max_fetch
| `AO__scoped_atomic_min_fetch
| `AO__scoped_atomic_nand_fetch
| `AO__scoped_atomic_fetch_min
| `AO__scoped_atomic_fetch_max
| `AO__opencl_atomic_init
| `AO__opencl_atomic_load
| `AO__opencl_atomic_store
| `AO__opencl_atomic_exchange
| `AO__opencl_atomic_compare_exchange_strong
| `AO__opencl_atomic_compare_exchange_weak
| `AO__opencl_atomic_fetch_add
| `AO__opencl_atomic_fetch_sub
| `AO__opencl_atomic_fetch_and
| `AO__opencl_atomic_fetch_or
| `AO__opencl_atomic_fetch_xor
| `AO__opencl_atomic_fetch_min
| `AO__opencl_atomic_fetch_max
| `AO__atomic_fetch_min
| `AO__atomic_fetch_max
| `AO__hip_atomic_load
| `AO__hip_atomic_store
| `AO__hip_atomic_compare_exchange_weak
| `AO__hip_atomic_compare_exchange_strong
| `AO__hip_atomic_exchange
| `AO__hip_atomic_fetch_add
| `AO__hip_atomic_fetch_sub
| `AO__hip_atomic_fetch_and
| `AO__hip_atomic_fetch_or
| `AO__hip_atomic_fetch_xor
| `AO__hip_atomic_fetch_min
| `AO__hip_atomic_fetch_max
]
type attribute_kind =
| AddressSpaceAttrKind
| AnnotateTypeAttrKind
| ArmInAttrKind
| ArmInOutAttrKind
| ArmMveStrictPolymorphismAttrKind
| ArmOutAttrKind
| ArmPreservesAttrKind
| ArmStreamingAttrKind
| ArmStreamingCompatibleAttrKind
| BTFTypeTagAttrKind
| CmseNSCallAttrKind
| HLSLParamModifierAttrKind
| NoDerefAttrKind
| ObjCGCAttrKind
| ObjCInertUnsafeUnretainedAttrKind
| ObjCKindOfAttrKind
| OpenCLConstantAddressSpaceAttrKind
| OpenCLGenericAddressSpaceAttrKind
| OpenCLGlobalAddressSpaceAttrKind
| OpenCLGlobalDeviceAddressSpaceAttrKind
| OpenCLGlobalHostAddressSpaceAttrKind
| OpenCLLocalAddressSpaceAttrKind
| OpenCLPrivateAddressSpaceAttrKind
| Ptr32AttrKind
| Ptr64AttrKind
| SPtrAttrKind
| TypeNonNullAttrKind
| TypeNullUnspecifiedAttrKind
| TypeNullableAttrKind
| TypeNullableResultAttrKind
| UPtrAttrKind
| WebAssemblyFuncrefAttrKind
| CodeAlignAttrKind
| FallThroughAttrKind
| LikelyAttrKind
| MustTailAttrKind
| OpenCLUnrollHintAttrKind
| UnlikelyAttrKind
| AlwaysInlineAttrKind
| NoInlineAttrKind
| NoMergeAttrKind
| SuppressAttrKind
| AArch64SVEPcsAttrKind
| AArch64VectorPcsAttrKind
| AMDGPUKernelCallAttrKind
| AcquireHandleAttrKind
| AnyX86NoCfCheckAttrKind
| CDeclAttrKind
| FastCallAttrKind
| IntelOclBiccAttrKind
| LifetimeBoundAttrKind
| M68kRTDAttrKind
| MSABIAttrKind
| NSReturnsRetainedAttrKind
| ObjCOwnershipAttrKind
| PascalAttrKind
| PcsAttrKind
| PreserveAllAttrKind
| PreserveMostAttrKind
| RegCallAttrKind
| StdCallAttrKind
| SwiftAsyncCallAttrKind
| SwiftCallAttrKind
| SysVABIAttrKind
| ThisCallAttrKind
| VectorCallAttrKind
| SwiftAsyncContextAttrKind
| SwiftContextAttrKind
| SwiftErrorResultAttrKind
| SwiftIndirectResultAttrKind
| AnnotateAttrKind
| CFConsumedAttrKind
| CarriesDependencyAttrKind
| NSConsumedAttrKind
| NonNullAttrKind
| OSConsumedAttrKind
| PassObjectSizeAttrKind
| ReleaseHandleAttrKind
| UseHandleAttrKind
| HLSLSV_DispatchThreadIDAttrKind
| HLSLSV_GroupIndexAttrKind
| AMDGPUFlatWorkGroupSizeAttrKind
| AMDGPUNumSGPRAttrKind
| AMDGPUNumVGPRAttrKind
| AMDGPUWavesPerEUAttrKind
| ARMInterruptAttrKind
| AVRInterruptAttrKind
| AVRSignalAttrKind
| AcquireCapabilityAttrKind
| AcquiredAfterAttrKind
| AcquiredBeforeAttrKind
| AlignMac68kAttrKind
| AlignNaturalAttrKind
| AlignedAttrKind
| AllocAlignAttrKind
| AllocSizeAttrKind
| AlwaysDestroyAttrKind
| AnalyzerNoReturnAttrKind
| AnyX86InterruptAttrKind
| AnyX86NoCallerSavedRegistersAttrKind
| ArgumentWithTypeTagAttrKind
| ArmBuiltinAliasAttrKind
| ArmLocallyStreamingAttrKind
| ArmNewAttrKind
| ArtificialAttrKind
| AsmLabelAttrKind
| AssertCapabilityAttrKind
| AssertExclusiveLockAttrKind
| AssumeAlignedAttrKind
| AssumptionAttrKind
| AvailabilityAttrKind
| AvailableOnlyInDefaultEvalMethodAttrKind
| BPFPreserveAccessIndexAttrKind
| BPFPreserveStaticOffsetAttrKind
| BTFDeclTagAttrKind
| BlocksAttrKind
| BuiltinAttrKind
| C11NoReturnAttrKind
| CFAuditedTransferAttrKind
| CFGuardAttrKind
| CFICanonicalJumpTableAttrKind
| CFReturnsNotRetainedAttrKind
| CFReturnsRetainedAttrKind
| CFUnknownTransferAttrKind
| CPUDispatchAttrKind
| CPUSpecificAttrKind
| CUDAConstantAttrKind
| CUDADeviceAttrKind
| CUDADeviceBuiltinSurfaceTypeAttrKind
| CUDADeviceBuiltinTextureTypeAttrKind
| CUDAGlobalAttrKind
| CUDAHostAttrKind
| CUDAInvalidTargetAttrKind
| CUDALaunchBoundsAttrKind
| CXX11NoReturnAttrKind
| CallableWhenAttrKind
| CallbackAttrKind
| CapabilityAttrKind
| CapturedRecordAttrKind
| CleanupAttrKind
| CmseNSEntryAttrKind
| CodeModelAttrKind
| CodeSegAttrKind
| ColdAttrKind
| CommonAttrKind
| ConstAttrKind
| ConstInitAttrKind
| ConstructorAttrKind
| ConsumableAttrKind
| ConsumableAutoCastAttrKind
| ConsumableSetOnReadAttrKind
| ConvergentAttrKind
| CoroDisableLifetimeBoundAttrKind
| CoroLifetimeBoundAttrKind
| CoroOnlyDestroyWhenCompleteAttrKind
| CoroReturnTypeAttrKind
| CoroWrapperAttrKind
| CountedByAttrKind
| DLLExportAttrKind
| DLLExportStaticLocalAttrKind
| DLLImportAttrKind
| DLLImportStaticLocalAttrKind
| DeprecatedAttrKind
| DestructorAttrKind
| DiagnoseAsBuiltinAttrKind
| DiagnoseIfAttrKind
| DisableSanitizerInstrumentationAttrKind
| DisableTailCallsAttrKind
| EmptyBasesAttrKind
| EnableIfAttrKind
| EnforceTCBAttrKind
| EnforceTCBLeafAttrKind
| EnumExtensibilityAttrKind
| ErrorAttrKind
| ExcludeFromExplicitInstantiationAttrKind
| ExclusiveTrylockFunctionAttrKind
| ExternalSourceSymbolAttrKind
| FinalAttrKind
| FlagEnumAttrKind
| FlattenAttrKind
| FormatAttrKind
| FormatArgAttrKind
| FunctionReturnThunksAttrKind
| GNUInlineAttrKind
| GuardedByAttrKind
| GuardedVarAttrKind
| HIPManagedAttrKind
| HLSLNumThreadsAttrKind
| HLSLResourceAttrKind
| HLSLResourceBindingAttrKind
| HLSLShaderAttrKind
| HotAttrKind
| IBActionAttrKind
| IBOutletAttrKind
| IBOutletCollectionAttrKind
| InitPriorityAttrKind
| InternalLinkageAttrKind
| LTOVisibilityPublicAttrKind
| LayoutVersionAttrKind
| LeafAttrKind
| LockReturnedAttrKind
| LocksExcludedAttrKind
| M68kInterruptAttrKind
| MIGServerRoutineAttrKind
| MSAllocatorAttrKind
| MSConstexprAttrKind
| MSInheritanceAttrKind
| MSNoVTableAttrKind
| MSP430InterruptAttrKind
| MSStructAttrKind
| MSVtorDispAttrKind
| MaxFieldAlignmentAttrKind
| MayAliasAttrKind
| MaybeUndefAttrKind
| MicroMipsAttrKind
| MinSizeAttrKind
| MinVectorWidthAttrKind
| Mips16AttrKind
| MipsInterruptAttrKind
| MipsLongCallAttrKind
| MipsShortCallAttrKind
| NSConsumesSelfAttrKind
| NSErrorDomainAttrKind
| NSReturnsAutoreleasedAttrKind
| NSReturnsNotRetainedAttrKind
| NVPTXKernelAttrKind
| NakedAttrKind
| NoAliasAttrKind
| NoCommonAttrKind
| NoDebugAttrKind
| NoDestroyAttrKind
| NoDuplicateAttrKind
| NoInstrumentFunctionAttrKind
| NoMicroMipsAttrKind
| NoMips16AttrKind
| NoProfileFunctionAttrKind
| NoRandomizeLayoutAttrKind
| NoReturnAttrKind
| NoSanitizeAttrKind
| NoSpeculativeLoadHardeningAttrKind
| NoSplitStackAttrKind
| NoStackProtectorAttrKind
| NoThreadSafetyAnalysisAttrKind
| NoThrowAttrKind
| NoUniqueAddressAttrKind
| NoUwtableAttrKind
| NotTailCalledAttrKind
| OMPAllocateDeclAttrKind
| OMPCaptureNoInitAttrKind
| OMPDeclareTargetDeclAttrKind
| OMPDeclareVariantAttrKind
| OMPThreadPrivateDeclAttrKind
| OSConsumesThisAttrKind
| OSReturnsNotRetainedAttrKind
| OSReturnsRetainedAttrKind
| OSReturnsRetainedOnNonZeroAttrKind
| OSReturnsRetainedOnZeroAttrKind
| ObjCBridgeAttrKind
| ObjCBridgeMutableAttrKind
| ObjCBridgeRelatedAttrKind
| ObjCExceptionAttrKind
| ObjCExplicitProtocolImplAttrKind
| ObjCExternallyRetainedAttrKind
| ObjCIndependentClassAttrKind
| ObjCMethodFamilyAttrKind
| ObjCNSObjectAttrKind
| ObjCPreciseLifetimeAttrKind
| ObjCRequiresPropertyDefsAttrKind
| ObjCRequiresSuperAttrKind
| ObjCReturnsInnerPointerAttrKind
| ObjCRootClassAttrKind
| ObjCSubclassingRestrictedAttrKind
| OpenCLIntelReqdSubGroupSizeAttrKind
| OpenCLKernelAttrKind
| OptimizeNoneAttrKind
| OverrideAttrKind
| OwnerAttrKind
| OwnershipAttrKind
| PackedAttrKind
| ParamTypestateAttrKind
| PatchableFunctionEntryAttrKind
| PointerAttrKind
| PragmaClangBSSSectionAttrKind
| PragmaClangDataSectionAttrKind
| PragmaClangRelroSectionAttrKind
| PragmaClangRodataSectionAttrKind
| PragmaClangTextSectionAttrKind
| PreferredNameAttrKind
| PreferredTypeAttrKind
| PtGuardedByAttrKind
| PtGuardedVarAttrKind
| PureAttrKind
| RISCVInterruptAttrKind
| RandomizeLayoutAttrKind
| ReadOnlyPlacementAttrKind
| ReinitializesAttrKind
| ReleaseCapabilityAttrKind
| ReqdWorkGroupSizeAttrKind
| RequiresCapabilityAttrKind
| RestrictAttrKind
| RetainAttrKind
| ReturnTypestateAttrKind
| ReturnsNonNullAttrKind
| ReturnsTwiceAttrKind
| SYCLKernelAttrKind
| SYCLSpecialClassAttrKind
| ScopedLockableAttrKind
| SectionAttrKind
| SelectAnyAttrKind
| SentinelAttrKind
| SetTypestateAttrKind
| SpeculativeLoadHardeningAttrKind
| StandaloneDebugAttrKind
| StrictFPAttrKind
| StrictGuardStackCheckAttrKind
| SwiftAsyncAttrKind
| SwiftAsyncErrorAttrKind
| SwiftAsyncNameAttrKind
| SwiftAttrAttrKind
| SwiftBridgeAttrKind
| SwiftBridgedTypedefAttrKind
| SwiftErrorAttrKind
| SwiftImportAsNonGenericAttrKind
| SwiftImportPropertyAsAccessorsAttrKind
| SwiftNameAttrKind
| SwiftNewTypeAttrKind
| SwiftPrivateAttrKind
| TLSModelAttrKind
| TargetAttrKind
| TargetClonesAttrKind
| TargetVersionAttrKind
| TestTypestateAttrKind
| TransparentUnionAttrKind
| TrivialABIAttrKind
| TryAcquireCapabilityAttrKind
| TypeTagForDatatypeAttrKind
| TypeVisibilityAttrKind
| UninitializedAttrKind
| UnsafeBufferUsageAttrKind
| UnusedAttrKind
| UsedAttrKind
| UsingIfExistsAttrKind
| UuidAttrKind
| VecReturnAttrKind
| VecTypeHintAttrKind
| VisibilityAttrKind
| WarnUnusedAttrKind
| WarnUnusedResultAttrKind
| WeakAttrKind
| WeakImportAttrKind
| WeakRefAttrKind
| WebAssemblyExportNameAttrKind
| WebAssemblyImportModuleAttrKind
| WebAssemblyImportNameAttrKind
| WorkGroupSizeHintAttrKind
| X86ForceAlignArgPointerAttrKind
| XRayInstrumentAttrKind
| XRayLogArgsAttrKind
| ZeroCallUsedRegsAttrKind
| AbiTagAttrKind
| AliasAttrKind
| AlignValueAttrKind
| BuiltinAliasAttrKind
| CalledOnceAttrKind
| IFuncAttrKind
| InitSegAttrKind
| LoaderUninitializedAttrKind
| LoopHintAttrKind
| ModeAttrKind
| NoBuiltinAttrKind
| NoEscapeAttrKind
| OMPCaptureKindAttrKind
| OMPDeclareSimdDeclAttrKind
| OMPReferencedVarAttrKind
| ObjCBoxableAttrKind
| ObjCClassStubAttrKind
| ObjCDesignatedInitializerAttrKind
| ObjCDirectAttrKind
| ObjCDirectMembersAttrKind
| ObjCNonLazyClassAttrKind
| ObjCNonRuntimeProtocolAttrKind
| ObjCRuntimeNameAttrKind
| ObjCRuntimeVisibleAttrKind
| OpenCLAccessAttrKind
| OverloadableAttrKind
| RenderScriptKernelAttrKind
| SwiftObjCMembersAttrKind
| SwiftVersionedAdditionAttrKind
| SwiftVersionedRemovalAttrKind
| ThreadAttrKind
type builtin_type_kind = [
| `Void
| `Bool
| `Char_U
| `UChar
| `WChar_U
| `Char8
| `Char16
| `Char32
| `UShort
| `UInt
| `ULong
| `ULongLong
| `UInt128
| `Char_S
| `SChar
| `WChar_S
| `Short
| `Int
| `Long
| `LongLong
| `Int128
| `ShortAccum
| `Accum
| `LongAccum
| `UShortAccum
| `UAccum
| `ULongAccum
| `ShortFract
| `Fract
| `LongFract
| `UShortFract
| `UFract
| `ULongFract
| `SatShortAccum
| `SatAccum
| `SatLongAccum
| `SatUShortAccum
| `SatUAccum
| `SatULongAccum
| `SatShortFract
| `SatFract
| `SatLongFract
| `SatUShortFract
| `SatUFract
| `SatULongFract
| `Half
| `Float
| `Double
| `LongDouble
| `Float16
| `BFloat16
| `Float128
| `Ibm128
| `NullPtr
| `ObjCId
| `ObjCClass
| `ObjCSel
| `OCLSampler
| `OCLEvent
| `OCLClkEvent
| `OCLQueue
| `OCLReserveID
| `Dependent
| `Overload
| `BoundMember
| `PseudoObject
| `UnknownAny
| `BuiltinFn
| `ARCUnbridgedCast
| `IncompleteMatrixIdx
| `OMPArraySection
| `OMPArrayShaping
| `OMPIterator
| `SveInt8
| `SveInt16
| `SveInt32
| `SveInt64
| `SveUint8
| `SveUint16
| `SveUint32
| `SveUint64
| `SveFloat16
| `SveFloat32
| `SveFloat64
| `SveBFloat16
| `SveInt8x2
| `SveInt16x2
| `SveInt32x2
| `SveInt64x2
| `SveUint8x2
| `SveUint16x2
| `SveUint32x2
| `SveUint64x2
| `SveFloat16x2
| `SveFloat32x2
| `SveFloat64x2
| `SveBFloat16x2
| `SveInt8x3
| `SveInt16x3
| `SveInt32x3
| `SveInt64x3
| `SveUint8x3
| `SveUint16x3
| `SveUint32x3
| `SveUint64x3
| `SveFloat16x3
| `SveFloat32x3
| `SveFloat64x3
| `SveBFloat16x3
| `SveInt8x4
| `SveInt16x4
| `SveInt32x4
| `SveInt64x4
| `SveUint8x4
| `SveUint16x4
| `SveUint32x4
| `SveUint64x4
| `SveFloat16x4
| `SveFloat32x4
| `SveFloat64x4
| `SveBFloat16x4
| `SveBool
| `SveBoolx2
| `SveBoolx4
| `SveCount
]
type cast_kind = [
| `Dependent
| `BitCast
| `LValueBitCast
| `LValueToRValueBitCast
| `LValueToRValue
| `NoOp
| `BaseToDerived
| `DerivedToBase
| `UncheckedDerivedToBase
| `Dynamic
| `ToUnion
| `ArrayToPointerDecay
| `FunctionToPointerDecay
| `NullToPointer
| `NullToMemberPointer
| `BaseToDerivedMemberPointer
| `DerivedToBaseMemberPointer
| `MemberPointerToBoolean
| `ReinterpretMemberPointer
| `UserDefinedConversion
| `ConstructorConversion
| `IntegralToPointer
| `PointerToIntegral
| `PointerToBoolean
| `ToVoid
| `MatrixCast
| `VectorSplat
| `IntegralCast
| `IntegralToBoolean
| `IntegralToFloating
| `FloatingToFixedPoint
| `FixedPointToFloating
| `FixedPointCast
| `FixedPointToIntegral
| `IntegralToFixedPoint
| `FixedPointToBoolean
| `FloatingToIntegral
| `FloatingToBoolean
| `BooleanToSignedIntegral
| `FloatingCast
| `CPointerToObjCPointerCast
| `BlockPointerToObjCPointerCast
| `AnyPointerToBlockPointerCast
| `ObjCObjectLValueCast
| `FloatingRealToComplex
| `FloatingComplexToReal
| `FloatingComplexToBoolean
| `FloatingComplexCast
| `FloatingComplexToIntegralComplex
| `IntegralRealToComplex
| `IntegralComplexToReal
| `IntegralComplexToBoolean
| `IntegralComplexCast
| `IntegralComplexToFloatingComplex
| `ARCProduceObject
| `ARCConsumeObject
| `ARCReclaimReturnedObject
| `ARCExtendBlockObject
| `AtomicToNonAtomic
| `NonAtomicToAtomic
| `CopyAndAutoreleaseBlockObject
| `BuiltinFnToFnPtr
| `ZeroToOCLOpaqueType
| `AddressSpaceConversion
| `IntToOCLSampler
]
type decl_kind = [
| `TranslationUnit
| `RequiresExprBody
| `LinkageSpec
| `ExternCContext
| `Export
| `Captured
| `Block
| `TopLevelStmt
| `StaticAssert
| `PragmaDetectMismatch
| `PragmaComment
| `ObjCPropertyImpl
| `OMPThreadPrivate
| `OMPRequires
| `OMPAllocate
| `Named
| `ObjCMethod
| `ObjCContainer
| `ObjCProtocol
| `ObjCInterface
| `ObjCImpl
| `ObjCImplementation
| `ObjCCategoryImpl
| `ObjCCategory
| `Namespace
| `HLSLBuffer
| `Value
| `OMPDeclareReduction
| `OMPDeclareMapper
| `UnresolvedUsingValue
| `UnnamedGlobalConstant
| `TemplateParamObject
| `MSGuid
| `IndirectField
| `EnumConstant
| `Declarator
| `Function
| `CXXMethod
| `CXXDestructor
| `CXXConversion
| `CXXConstructor
| `CXXDeductionGuide
| `Var
| `VarTemplateSpecialization
| `VarTemplatePartialSpecialization
| `ParmVar
| `OMPCapturedExpr
| `ImplicitParam
| `Decomposition
| `NonTypeTemplateParm
| `MSProperty
| `Field
| `ObjCIvar
| `ObjCAtDefsField
| `Binding
| `UsingShadow
| `ConstructorUsingShadow
| `UsingPack
| `UsingDirective
| `UnresolvedUsingIfExists
| `Type
| `Tag
| `Record
| `CXXRecord
| `ClassTemplateSpecialization
| `ClassTemplatePartialSpecialization
| `Enum
| `UnresolvedUsingTypename
| `TypedefName
| `Typedef
| `TypeAlias
| `ObjCTypeParam
| `TemplateTypeParm
| `Template
| `TemplateTemplateParm
| `RedeclarableTemplate
| `VarTemplate
| `TypeAliasTemplate
| `FunctionTemplate
| `ClassTemplate
| `Concept
| `BuiltinTemplate
| `ObjCProperty
| `ObjCCompatibleAlias
| `NamespaceAlias
| `Label
| `BaseUsing
| `UsingEnum
| `Using
| `LifetimeExtendedTemporary
| `Import
| `ImplicitConceptSpecialization
| `FriendTemplate
| `Friend
| `FileScopeAsm
| `Empty
| `AccessSpec
]
type cxx_temporary = pointer
type record_decl_info = {
rdi_definition_ptr : pointer;
rdi_is_module_private : bool;
rdi_is_complete_definition : bool;
rdi_is_dependent_type : bool;
}
type obj_c_subscript_ref_expr_info = {
osrei_kind : obj_c_subscript_kind;
osrei_getter : selector option;
osrei_setter : selector option;
}
type source_location = {
mutable sl_file : source_file option;
mutable sl_line : int option;
mutable sl_column : int option;
sl_is_macro : bool;
mutable sl_macro_file : source_file option;
mutable sl_macro_line : int option;
}
type source_range = source_location * source_location
type attr_tuple = attribute_info
type type_ptr = Clang_ast_types.TypePtr.t
type qual_type = {
qt_type_ptr : type_ptr;
qt_is_const : bool;
qt_is_restrict : bool;
qt_is_volatile : bool;
}
type decl_ref = {
dr_kind : decl_kind;
dr_decl_pointer : pointer;
dr_name : named_decl_info option;
dr_qual_type : qual_type option;
}
type cxx_construct_expr_info = {
xcei_decl_ref : decl_ref;
xcei_is_elidable : bool;
xcei_requires_zero_initialization : bool;
xcei_is_copy_constructor : bool;
}
type member_expr_info = {
mei_is_arrow : bool;
mei_performs_virtual_dispatch : bool;
mei_name : named_decl_info;
mei_decl_ref : decl_ref;
}
type namespace_alias_decl_info = {
nadi_namespace_loc : source_location;
nadi_target_name_loc : source_location;
nadi_nested_name_specifier_locs : nested_name_specifier_loc list;
nadi_namespace : decl_ref;
}
type obj_c_property_decl_info = {
opdi_qual_type : qual_type;
opdi_getter_method : decl_ref option;
opdi_setter_method : decl_ref option;
opdi_ivar_decl : decl_ref option;
opdi_property_control : obj_c_property_control;
opdi_property_attributes : property_attribute list;
}
type obj_c_property_impl_decl_info = {
opidi_implementation : property_implementation;
opidi_property_decl : decl_ref option;
opidi_ivar_decl : decl_ref option;
}
type obj_c_property_ref_expr_info = {
oprei_kind : property_ref_kind;
oprei_is_super_receiver : bool;
oprei_is_messaging_getter : bool;
oprei_is_messaging_setter : bool;
}
type obj_c_message_expr_info = {
omei_selector : string;
omei_is_definition_found : bool;
omei_decl_pointer : pointer option;
omei_receiver_kind : receiver_kind;
}
type c_type =
| NoneType of type_info
| AdjustedType of type_info * qual_type
| DecayedType of type_info * qual_type
| ConstantArrayType of type_info * array_type_info * int
| DependentSizedArrayType of type_info * array_type_info
| IncompleteArrayType of type_info * array_type_info
| VariableArrayType of type_info * array_type_info * pointer
| AtomicType of type_info * qual_type
| AttributedType of type_info * attr_type_info
| BTFTagAttributedType of type_info
| BitIntType of type_info
| BlockPointerType of type_info * qual_type
| BuiltinType of type_info * builtin_type_kind
| ComplexType of type_info
| DecltypeType of type_info * qual_type
| AutoType of type_info
| DeducedTemplateSpecializationType of type_info
| DependentAddressSpaceType of type_info
| DependentBitIntType of type_info
| DependentNameType of type_info
| DependentSizedExtVectorType of type_info
| DependentTemplateSpecializationType of type_info
| DependentVectorType of type_info
| ElaboratedType of type_info
| FunctionNoProtoType of type_info * function_type_info
| FunctionProtoType of type_info * function_type_info * params_type_info
| InjectedClassNameType of type_info
| MacroQualifiedType of type_info
| ConstantMatrixType of type_info
| DependentSizedMatrixType of type_info
| MemberPointerType of type_info * qual_type
| ObjCObjectPointerType of type_info * qual_type
| ObjCObjectType of type_info * objc_object_type_info
| ObjCInterfaceType of type_info * pointer
| ObjCTypeParamType of type_info
| PackExpansionType of type_info
| ParenType of type_info * qual_type
| PipeType of type_info
| PointerType of type_info * qual_type
| LValueReferenceType of type_info * qual_type
| RValueReferenceType of type_info * qual_type
| SubstTemplateTypeParmPackType of type_info
| SubstTemplateTypeParmType of type_info
| EnumType of type_info * pointer
| RecordType of type_info * pointer
| TemplateSpecializationType of type_info
| TemplateTypeParmType of type_info
| TypeOfExprType of type_info
| TypeOfType of type_info
| TypedefType of type_info * typedef_type_info
| UnaryTransformType of type_info
| UnresolvedUsingType of type_info
| UsingType of type_info
| VectorType of type_info
| ExtVectorType of type_info
type translation_unit_decl_info = {
tudi_input_path : source_file;
tudi_input_kind : input_kind;
tudi_integer_type_widths : integer_type_widths;
tudi_is_objc_arc_on : bool;
tudi_types : c_type list;
}
type unary_expr_or_type_trait_expr_info = {
uttei_kind : unary_expr_or_type_trait_kind;
uttei_qual_type : qual_type;
}
type unresolved_lookup_expr_info = {
ulei_requires_ADL : bool;
ulei_is_overloaded : bool;
ulei_naming_class : decl_ref option;
}
type using_directive_decl_info = {
uddi_using_location : source_location;
uddi_namespace_key_location : source_location;
uddi_nested_name_specifier_locs : nested_name_specifier_loc list;
uddi_nominated_namespace : decl_ref option;
}
type expr_info = {
ei_qual_type : qual_type;
ei_value_kind : value_kind;
ei_object_kind : object_kind;
}
type attribute = [
| `AddressSpaceAttr of attribute_info
| `AnnotateTypeAttr of attribute_info
| `ArmInAttr of attribute_info
| `ArmInOutAttr of attribute_info
| `ArmMveStrictPolymorphismAttr of attribute_info
| `ArmOutAttr of attribute_info
| `ArmPreservesAttr of attribute_info
| `ArmStreamingAttr of attribute_info
| `ArmStreamingCompatibleAttr of attribute_info
| `BTFTypeTagAttr of attribute_info
| `CmseNSCallAttr of attribute_info
| `HLSLParamModifierAttr of attribute_info
| `NoDerefAttr of attribute_info
| `ObjCGCAttr of attribute_info
| `ObjCInertUnsafeUnretainedAttr of attribute_info
| `ObjCKindOfAttr of attribute_info
| `OpenCLConstantAddressSpaceAttr of attribute_info
| `OpenCLGenericAddressSpaceAttr of attribute_info
| `OpenCLGlobalAddressSpaceAttr of attribute_info
| `OpenCLGlobalDeviceAddressSpaceAttr of attribute_info
| `OpenCLGlobalHostAddressSpaceAttr of attribute_info
| `OpenCLLocalAddressSpaceAttr of attribute_info
| `OpenCLPrivateAddressSpaceAttr of attribute_info
| `Ptr32Attr of attribute_info
| `Ptr64Attr of attribute_info
| `SPtrAttr of attribute_info
| `TypeNonNullAttr of attribute_info
| `TypeNullUnspecifiedAttr of attribute_info
| `TypeNullableAttr of attribute_info
| `TypeNullableResultAttr of attribute_info
| `UPtrAttr of attribute_info
| `WebAssemblyFuncrefAttr of attribute_info
| `CodeAlignAttr of attribute_info
| `FallThroughAttr of attribute_info
| `LikelyAttr of attribute_info
| `MustTailAttr of attribute_info
| `OpenCLUnrollHintAttr of attribute_info
| `UnlikelyAttr of attribute_info
| `AlwaysInlineAttr of attribute_info
| `NoInlineAttr of attribute_info
| `NoMergeAttr of attribute_info
| `SuppressAttr of attribute_info
| `AArch64SVEPcsAttr of attribute_info
| `AArch64VectorPcsAttr of attribute_info
| `AMDGPUKernelCallAttr of attribute_info
| `AcquireHandleAttr of attribute_info
| `AnyX86NoCfCheckAttr of attribute_info
| `CDeclAttr of attribute_info
| `FastCallAttr of attribute_info
| `IntelOclBiccAttr of attribute_info
| `LifetimeBoundAttr of attribute_info
| `M68kRTDAttr of attribute_info
| `MSABIAttr of attribute_info
| `NSReturnsRetainedAttr of attribute_info
| `ObjCOwnershipAttr of attribute_info
| `PascalAttr of attribute_info
| `PcsAttr of attribute_info
| `PreserveAllAttr of attribute_info
| `PreserveMostAttr of attribute_info
| `RegCallAttr of attribute_info
| `StdCallAttr of attribute_info
| `SwiftAsyncCallAttr of attribute_info
| `SwiftCallAttr of attribute_info
| `SysVABIAttr of attribute_info
| `ThisCallAttr of attribute_info
| `VectorCallAttr of attribute_info
| `SwiftAsyncContextAttr of attribute_info
| `SwiftContextAttr of attribute_info
| `SwiftErrorResultAttr of attribute_info
| `SwiftIndirectResultAttr of attribute_info
| `AnnotateAttr of attr_tuple * string
| `CFConsumedAttr of attribute_info
| `CarriesDependencyAttr of attribute_info
| `NSConsumedAttr of attribute_info
| `NonNullAttr of attribute_info
| `OSConsumedAttr of attribute_info
| `PassObjectSizeAttr of attribute_info
| `ReleaseHandleAttr of attribute_info
| `UseHandleAttr of attribute_info
| `HLSLSV_DispatchThreadIDAttr of attribute_info
| `HLSLSV_GroupIndexAttr of attribute_info
| `AMDGPUFlatWorkGroupSizeAttr of attribute_info
| `AMDGPUNumSGPRAttr of attribute_info
| `AMDGPUNumVGPRAttr of attribute_info
| `AMDGPUWavesPerEUAttr of attribute_info
| `ARMInterruptAttr of attribute_info
| `AVRInterruptAttr of attribute_info
| `AVRSignalAttr of attribute_info
| `AcquireCapabilityAttr of attribute_info
| `AcquiredAfterAttr of attribute_info
| `AcquiredBeforeAttr of attribute_info
| `AlignMac68kAttr of attribute_info
| `AlignNaturalAttr of attribute_info
| `AlignedAttr of attribute_info
| `AllocAlignAttr of attribute_info
| `AllocSizeAttr of attribute_info
| `AlwaysDestroyAttr of attribute_info
| `AnalyzerNoReturnAttr of attribute_info
| `AnyX86InterruptAttr of attribute_info
| `AnyX86NoCallerSavedRegistersAttr of attribute_info
| `ArgumentWithTypeTagAttr of attribute_info
| `ArmBuiltinAliasAttr of attribute_info
| `ArmLocallyStreamingAttr of attribute_info
| `ArmNewAttr of attribute_info
| `ArtificialAttr of attribute_info
| `AsmLabelAttr of attribute_info
| `AssertCapabilityAttr of attribute_info
| `AssertExclusiveLockAttr of attribute_info
| `AssumeAlignedAttr of attribute_info
| `AssumptionAttr of attribute_info
| `AvailabilityAttr of attr_tuple * availability_attr_info
| `AvailableOnlyInDefaultEvalMethodAttr of attribute_info
| `BPFPreserveAccessIndexAttr of attribute_info
| `BPFPreserveStaticOffsetAttr of attribute_info
| `BTFDeclTagAttr of attribute_info
| `BlocksAttr of attribute_info
| `BuiltinAttr of attribute_info
| `C11NoReturnAttr of attribute_info
| `CFAuditedTransferAttr of attribute_info
| `CFGuardAttr of attribute_info
| `CFICanonicalJumpTableAttr of attribute_info
| `CFReturnsNotRetainedAttr of attribute_info
| `CFReturnsRetainedAttr of attribute_info
| `CFUnknownTransferAttr of attribute_info
| `CPUDispatchAttr of attribute_info
| `CPUSpecificAttr of attribute_info
| `CUDAConstantAttr of attribute_info
| `CUDADeviceAttr of attribute_info
| `CUDADeviceBuiltinSurfaceTypeAttr of attribute_info
| `CUDADeviceBuiltinTextureTypeAttr of attribute_info
| `CUDAGlobalAttr of attribute_info
| `CUDAHostAttr of attribute_info
| `CUDAInvalidTargetAttr of attribute_info
| `CUDALaunchBoundsAttr of attribute_info
| `CXX11NoReturnAttr of attribute_info
| `CallableWhenAttr of attribute_info
| `CallbackAttr of attribute_info
| `CapabilityAttr of attribute_info
| `CapturedRecordAttr of attribute_info
| `CleanupAttr of attribute_info
| `CmseNSEntryAttr of attribute_info
| `CodeModelAttr of attribute_info
| `CodeSegAttr of attribute_info
| `ColdAttr of attribute_info
| `CommonAttr of attribute_info
| `ConstAttr of attribute_info
| `ConstInitAttr of attribute_info
| `ConstructorAttr of attribute_info
| `ConsumableAttr of attribute_info
| `ConsumableAutoCastAttr of attribute_info
| `ConsumableSetOnReadAttr of attribute_info
| `ConvergentAttr of attribute_info
| `CoroDisableLifetimeBoundAttr of attribute_info
| `CoroLifetimeBoundAttr of attribute_info
| `CoroOnlyDestroyWhenCompleteAttr of attribute_info
| `CoroReturnTypeAttr of attribute_info
| `CoroWrapperAttr of attribute_info
| `CountedByAttr of attribute_info
| `DLLExportAttr of attribute_info
| `DLLExportStaticLocalAttr of attribute_info
| `DLLImportAttr of attribute_info
| `DLLImportStaticLocalAttr of attribute_info
| `DeprecatedAttr of attribute_info
| `DestructorAttr of attribute_info
| `DiagnoseAsBuiltinAttr of attribute_info
| `DiagnoseIfAttr of attribute_info
| `DisableSanitizerInstrumentationAttr of attribute_info
| `DisableTailCallsAttr of attribute_info
| `EmptyBasesAttr of attribute_info
| `EnableIfAttr of attribute_info
| `EnforceTCBAttr of attribute_info
| `EnforceTCBLeafAttr of attribute_info
| `EnumExtensibilityAttr of attribute_info
| `ErrorAttr of attribute_info
| `ExcludeFromExplicitInstantiationAttr of attribute_info
| `ExclusiveTrylockFunctionAttr of attribute_info
| `ExternalSourceSymbolAttr of attribute_info
| `FinalAttr of attribute_info
| `FlagEnumAttr of attribute_info
| `FlattenAttr of attribute_info
| `FormatAttr of attribute_info
| `FormatArgAttr of attribute_info
| `FunctionReturnThunksAttr of attribute_info
| `GNUInlineAttr of attribute_info
| `GuardedByAttr of attribute_info
| `GuardedVarAttr of attribute_info
| `HIPManagedAttr of attribute_info
| `HLSLNumThreadsAttr of attribute_info
| `HLSLResourceAttr of attribute_info
| `HLSLResourceBindingAttr of attribute_info
| `HLSLShaderAttr of attribute_info
| `HotAttr of attribute_info
| `IBActionAttr of attribute_info
| `IBOutletAttr of attribute_info
| `IBOutletCollectionAttr of attribute_info
| `InitPriorityAttr of attribute_info
| `InternalLinkageAttr of attribute_info
| `LTOVisibilityPublicAttr of attribute_info
| `LayoutVersionAttr of attribute_info
| `LeafAttr of attribute_info
| `LockReturnedAttr of attribute_info
| `LocksExcludedAttr of attribute_info
| `M68kInterruptAttr of attribute_info
| `MIGServerRoutineAttr of attribute_info
| `MSAllocatorAttr of attribute_info
| `MSConstexprAttr of attribute_info
| `MSInheritanceAttr of attribute_info
| `MSNoVTableAttr of attribute_info
| `MSP430InterruptAttr of attribute_info
| `MSStructAttr of attribute_info
| `MSVtorDispAttr of attribute_info
| `MaxFieldAlignmentAttr of attribute_info
| `MayAliasAttr of attribute_info
| `MaybeUndefAttr of attribute_info
| `MicroMipsAttr of attribute_info
| `MinSizeAttr of attribute_info
| `MinVectorWidthAttr of attribute_info
| `Mips16Attr of attribute_info
| `MipsInterruptAttr of attribute_info
| `MipsLongCallAttr of attribute_info
| `MipsShortCallAttr of attribute_info
| `NSConsumesSelfAttr of attribute_info
| `NSErrorDomainAttr of attribute_info
| `NSReturnsAutoreleasedAttr of attribute_info
| `NSReturnsNotRetainedAttr of attribute_info
| `NVPTXKernelAttr of attribute_info
| `NakedAttr of attribute_info
| `NoAliasAttr of attribute_info
| `NoCommonAttr of attribute_info
| `NoDebugAttr of attribute_info
| `NoDestroyAttr of attribute_info
| `NoDuplicateAttr of attribute_info
| `NoInstrumentFunctionAttr of attribute_info
| `NoMicroMipsAttr of attribute_info
| `NoMips16Attr of attribute_info
| `NoProfileFunctionAttr of attribute_info
| `NoRandomizeLayoutAttr of attribute_info
| `NoReturnAttr of attribute_info
| `NoSanitizeAttr of attribute_info
| `NoSpeculativeLoadHardeningAttr of attribute_info
| `NoSplitStackAttr of attribute_info
| `NoStackProtectorAttr of attribute_info
| `NoThreadSafetyAnalysisAttr of attribute_info
| `NoThrowAttr of attribute_info
| `NoUniqueAddressAttr of attribute_info
| `NoUwtableAttr of attribute_info
| `NotTailCalledAttr of attribute_info
| `OMPAllocateDeclAttr of attribute_info
| `OMPCaptureNoInitAttr of attribute_info
| `OMPDeclareTargetDeclAttr of attribute_info
| `OMPDeclareVariantAttr of attribute_info
| `OMPThreadPrivateDeclAttr of attribute_info
| `OSConsumesThisAttr of attribute_info
| `OSReturnsNotRetainedAttr of attribute_info
| `OSReturnsRetainedAttr of attribute_info
| `OSReturnsRetainedOnNonZeroAttr of attribute_info
| `OSReturnsRetainedOnZeroAttr of attribute_info
| `ObjCBridgeAttr of attribute_info
| `ObjCBridgeMutableAttr of attribute_info
| `ObjCBridgeRelatedAttr of attribute_info
| `ObjCExceptionAttr of attribute_info
| `ObjCExplicitProtocolImplAttr of attribute_info
| `ObjCExternallyRetainedAttr of attribute_info
| `ObjCIndependentClassAttr of attribute_info
| `ObjCMethodFamilyAttr of attribute_info
| `ObjCNSObjectAttr of attribute_info
| `ObjCPreciseLifetimeAttr of attribute_info
| `ObjCRequiresPropertyDefsAttr of attribute_info
| `ObjCRequiresSuperAttr of attribute_info
| `ObjCReturnsInnerPointerAttr of attribute_info
| `ObjCRootClassAttr of attribute_info
| `ObjCSubclassingRestrictedAttr of attribute_info
| `OpenCLIntelReqdSubGroupSizeAttr of attribute_info
| `OpenCLKernelAttr of attribute_info
| `OptimizeNoneAttr of attribute_info
| `OverrideAttr of attribute_info
| `OwnerAttr of attribute_info
| `OwnershipAttr of attribute_info
| `PackedAttr of attribute_info
| `ParamTypestateAttr of attribute_info
| `PatchableFunctionEntryAttr of attribute_info
| `PointerAttr of attribute_info
| `PragmaClangBSSSectionAttr of attribute_info
| `PragmaClangDataSectionAttr of attribute_info
| `PragmaClangRelroSectionAttr of attribute_info
| `PragmaClangRodataSectionAttr of attribute_info
| `PragmaClangTextSectionAttr of attribute_info
| `PreferredNameAttr of attribute_info
| `PreferredTypeAttr of attribute_info
| `PtGuardedByAttr of attribute_info
| `PtGuardedVarAttr of attribute_info
| `PureAttr of attribute_info
| `RISCVInterruptAttr of attribute_info
| `RandomizeLayoutAttr of attribute_info
| `ReadOnlyPlacementAttr of attribute_info
| `ReinitializesAttr of attribute_info
| `ReleaseCapabilityAttr of attribute_info
| `ReqdWorkGroupSizeAttr of attribute_info
| `RequiresCapabilityAttr of attribute_info
| `RestrictAttr of attribute_info
| `RetainAttr of attribute_info
| `ReturnTypestateAttr of attribute_info
| `ReturnsNonNullAttr of attribute_info
| `ReturnsTwiceAttr of attribute_info
| `SYCLKernelAttr of attribute_info
| `SYCLSpecialClassAttr of attribute_info
| `ScopedLockableAttr of attribute_info
| `SectionAttr of attribute_info
| `SelectAnyAttr of attribute_info
| `SentinelAttr of attr_tuple * sentinel_attr_info
| `SetTypestateAttr of attribute_info
| `SpeculativeLoadHardeningAttr of attribute_info
| `StandaloneDebugAttr of attribute_info
| `StrictFPAttr of attribute_info
| `StrictGuardStackCheckAttr of attribute_info
| `SwiftAsyncAttr of attribute_info
| `SwiftAsyncErrorAttr of attribute_info
| `SwiftAsyncNameAttr of attribute_info
| `SwiftAttrAttr of attribute_info
| `SwiftBridgeAttr of attribute_info
| `SwiftBridgedTypedefAttr of attribute_info
| `SwiftErrorAttr of attribute_info
| `SwiftImportAsNonGenericAttr of attribute_info
| `SwiftImportPropertyAsAccessorsAttr of attribute_info
| `SwiftNameAttr of attribute_info
| `SwiftNewTypeAttr of attribute_info
| `SwiftPrivateAttr of attribute_info
| `TLSModelAttr of attribute_info
| `TargetAttr of attribute_info
| `TargetClonesAttr of attribute_info
| `TargetVersionAttr of attribute_info
| `TestTypestateAttr of attribute_info
| `TransparentUnionAttr of attribute_info
| `TrivialABIAttr of attribute_info
| `TryAcquireCapabilityAttr of attribute_info
| `TypeTagForDatatypeAttr of attribute_info
| `TypeVisibilityAttr of attribute_info
| `UninitializedAttr of attribute_info
| `UnsafeBufferUsageAttr of attribute_info
| `UnusedAttr of attribute_info
| `UsedAttr of attribute_info
| `UsingIfExistsAttr of attribute_info
| `UuidAttr of attribute_info
| `VecReturnAttr of attribute_info
| `VecTypeHintAttr of attribute_info
| `VisibilityAttr of attr_tuple * visibility_attr
| `WarnUnusedAttr of attribute_info
| `WarnUnusedResultAttr of attribute_info
| `WeakAttr of attribute_info
| `WeakImportAttr of attribute_info
| `WeakRefAttr of attribute_info
| `WebAssemblyExportNameAttr of attribute_info
| `WebAssemblyImportModuleAttr of attribute_info
| `WebAssemblyImportNameAttr of attribute_info
| `WorkGroupSizeHintAttr of attribute_info
| `X86ForceAlignArgPointerAttr of attribute_info
| `XRayInstrumentAttr of attribute_info
| `XRayLogArgsAttr of attribute_info
| `ZeroCallUsedRegsAttr of attribute_info
| `AbiTagAttr of attribute_info
| `AliasAttr of attribute_info
| `AlignValueAttr of attribute_info
| `BuiltinAliasAttr of attribute_info
| `CalledOnceAttr of attribute_info
| `IFuncAttr of attribute_info
| `InitSegAttr of attribute_info
| `LoaderUninitializedAttr of attribute_info
| `LoopHintAttr of attribute_info
| `ModeAttr of attribute_info
| `NoBuiltinAttr of attribute_info
| `NoEscapeAttr of attribute_info
| `OMPCaptureKindAttr of attribute_info
| `OMPDeclareSimdDeclAttr of attribute_info
| `OMPReferencedVarAttr of attribute_info
| `ObjCBoxableAttr of attribute_info
| `ObjCClassStubAttr of attribute_info
| `ObjCDesignatedInitializerAttr of attribute_info
| `ObjCDirectAttr of attribute_info
| `ObjCDirectMembersAttr of attribute_info
| `ObjCNonLazyClassAttr of attribute_info
| `ObjCNonRuntimeProtocolAttr of attribute_info
| `ObjCRuntimeNameAttr of attribute_info
| `ObjCRuntimeVisibleAttr of attribute_info
| `OpenCLAccessAttr of attribute_info
| `OverloadableAttr of attribute_info
| `RenderScriptKernelAttr of attribute_info
| `SwiftObjCMembersAttr of attribute_info
| `SwiftVersionedAdditionAttr of attribute_info
| `SwiftVersionedRemovalAttr of attribute_info
| `ThreadAttr of attribute_info
]
type template_instantiation_arg_info = [
| `Null
| `Type of qual_type
| `Declaration of pointer
| `NullPtr
| `Integral of string
| `Template
| `TemplateExpansion
| `Expression
| `Pack of template_instantiation_arg_info list
]
type comment =
| VerbatimBlockLineComment of comment_info * comment list
| TextComment of comment_info * comment list
| InlineCommandComment of comment_info * comment list
| HTMLStartTagComment of comment_info * comment list
| HTMLEndTagComment of comment_info * comment list
| FullComment of comment_info * comment list
| ParagraphComment of comment_info * comment list
| BlockCommandComment of comment_info * comment list
| VerbatimLineComment of comment_info * comment list
| VerbatimBlockComment of comment_info * comment list
| TParamCommandComment of comment_info * comment list
| ParamCommandComment of comment_info * comment list
type template_specialization_info = {
tsi_template_decl : pointer;
tsi_specialization_args : template_instantiation_arg_info list;
}
type decl_info = {
di_pointer : pointer;
di_parent_pointer : pointer option;
di_source_range : source_range;
di_owning_module : string option;
di_is_implicit : bool;
di_is_used : bool;
di_is_this_declaration_referenced : bool;
di_is_invalid_decl : bool;
di_attributes : attribute list;
di_full_comment : comment option;
di_access : access_specifier;
}
and block_decl_info = {
bdi_parameters : decl list;
bdi_is_variadic : bool;
bdi_captures_cxx_this : bool;
bdi_captured_variables : block_captured_variable list;
bdi_body : stmt option;
bdi_mangled_name : string;
}
and cxx_ctor_initializer = {
xci_subject : cxx_ctor_initializer_subject;
xci_source_range : source_range;
xci_init_expr : stmt option;
}
and cxx_method_decl_info = {
xmdi_is_virtual : bool;
xmdi_is_static : bool;
xmdi_is_const : bool;
xmdi_is_copy_assignment : bool;
xmdi_is_copy_constructor : bool;
xmdi_is_move_constructor : bool;
xmdi_cxx_ctor_initializers : cxx_ctor_initializer list;
xmdi_overriden_methods : decl_ref list;
}
and cxx_record_decl_info = {
xrdi_bases : type_ptr list;
xrdi_vbases : type_ptr list;
xrdi_transitive_vbases : type_ptr list;
xrdi_is_pod : bool;
xrdi_is_trivially_copyable : bool;
xrdi_destructor : decl_ref option;
xrdi_lambda_call_operator : decl_ref option;
xrdi_lambda_captures : lambda_capture_info list;
}
and decl =
| TranslationUnitDecl of decl_info
* decl list
* decl_context_info
* translation_unit_decl_info
| RequiresExprBodyDecl of decl_info
| LinkageSpecDecl of decl_info * decl list * decl_context_info
| ExternCContextDecl of decl_info
| ExportDecl of decl_info
| CapturedDecl of decl_info * decl list * decl_context_info
| BlockDecl of decl_info * block_decl_info
| TopLevelStmtDecl of decl_info
| StaticAssertDecl of decl_info
| PragmaDetectMismatchDecl of decl_info
| PragmaCommentDecl of decl_info
| ObjCPropertyImplDecl of decl_info * obj_c_property_impl_decl_info
| OMPThreadPrivateDecl of decl_info
| OMPRequiresDecl of decl_info
| OMPAllocateDecl of decl_info
| ObjCMethodDecl of decl_info * named_decl_info * obj_c_method_decl_info
| ObjCProtocolDecl of decl_info
@@ -67,7 +67,7 @@
* obj_c_ivar_decl_info
| ObjCAtDefsFieldDecl of decl_info
* named_decl_info
* qual_type
- * field_decl_info
| BindingDecl of decl_info * named_decl_info * qual_type * holding_var_decl_info
| UsingShadowDecl of decl_info * named_decl_info
| ConstructorUsingShadowDecl of decl_info * named_decl_info
| UsingPackDecl of decl_info * named_decl_info
| UsingDirectiveDecl of decl_info * named_decl_info * using_directive_decl_info
| UnresolvedUsingIfExistsDecl of decl_info * named_decl_info
| RecordDecl of decl_info
+ * field_decl_info
| BindingDecl of decl_info * named_decl_info * qual_type * binding_decl_info
| UsingShadowDecl of decl_info * named_decl_info
| ConstructorUsingShadowDecl of decl_info * named_decl_info
| UsingPackDecl of decl_info * named_decl_info
| UsingDirectiveDecl of decl_info * named_decl_info * using_directive_decl_info
| UnresolvedUsingIfExistsDecl of decl_info * named_decl_info
| RecordDecl of decl_info
* named_decl_info
* type_ptr
* decl list
@@ -108,7 +108,7 @@
* tag_kind
* enum_decl_info
| UnresolvedUsingTypenameDecl of decl_info * named_decl_info * type_ptr
| TypedefDecl of decl_info * named_decl_info * type_ptr * typedef_decl_info
| TypeAliasDecl of decl_info * named_decl_info * type_ptr
| ObjCTypeParamDecl of decl_info * named_decl_info * type_ptr
| TemplateTypeParmDecl of decl_info * named_decl_info * type_ptr
| TemplateTemplateParmDecl of decl_info * named_decl_info
| VarTemplateDecl of decl_info * named_decl_info
| TypeAliasTemplateDecl of decl_info * named_decl_info
| FunctionTemplateDecl of decl_info * named_decl_info * template_decl_info
| ClassTemplateDecl of decl_info * named_decl_info * template_decl_info
| ConceptDecl of decl_info * named_decl_info
| BuiltinTemplateDecl of decl_info * named_decl_info
| ObjCPropertyDecl of decl_info * named_decl_info * obj_c_property_decl_info
| ObjCCompatibleAliasDecl of decl_info
* named_decl_info
- * obj_c_compatible_alias_decl_info
| NamespaceAliasDecl of decl_info * named_decl_info * namespace_alias_decl_info
| LabelDecl of decl_info * named_decl_info
| UsingEnumDecl of decl_info * named_decl_info
| UsingDecl of decl_info * named_decl_info
| LifetimeExtendedTemporaryDecl of decl_info
| ImportDecl of decl_info * string
| ImplicitConceptSpecializationDecl of decl_info
| FriendTemplateDecl of decl_info
| FriendDecl of decl_info * friend_info
| FileScopeAsmDecl of decl_info
| EmptyDecl of decl_info
| AccessSpecDecl of decl_info
and function_decl_info = {
fdi_mangled_name : string option;
fdi_is_cpp : bool;
fdi_is_inline : bool;
fdi_is_module_private : bool;
fdi_is_pure : bool;
fdi_is_deleted : bool;
fdi_is_no_return : bool;
fdi_is_constexpr : bool;
fdi_is_variadic : bool;
fdi_is_static : bool;
fdi_parameters : decl list;
fdi_decl_ptr_with_body : pointer option;
fdi_body : stmt option;
fdi_template_specialization : template_specialization_info option;
fdi_point_of_instantiation : source_location option;
}
and lambda_capture_info = {
lci_capture_kind : lambda_capture_kind;
lci_capture_this : bool;
lci_capture_variable : bool;
lci_capture_VLAtype : bool;
lci_init_captured_vardecl : decl option;
lci_captured_var : decl_ref option;
lci_is_implicit : bool;
lci_location : source_range;
lci_is_pack_expansion : bool;
}
and obj_c_implementation_decl_info = {
oidi_super : decl_ref option;
oidi_class_interface : decl_ref option;
oidi_ivar_initializers : cxx_ctor_initializer list;
}
and obj_c_method_decl_info = {
omdi_is_instance_method : bool;
omdi_result_type : qual_type;
omdi_is_property_accessor : bool;
omdi_property_decl : decl_ref option;
omdi_parameters : decl list;
omdi_implicit_parameters : decl list;
omdi_is_variadic : bool;
omdi_is_overriding : bool;
omdi_is_optional : bool;
omdi_body : stmt option;
omdi_mangled_name : string;
}
and stmt =
| WhileStmt of stmt_info * stmt list
| LabelStmt of stmt_info * stmt list * string
| VAArgExpr of stmt_info * stmt list * expr_info
| UnaryOperator of stmt_info * stmt list * expr_info * unary_operator_info
| UnaryExprOrTypeTraitExpr of stmt_info
+ * obj_c_compatible_alias_decl_info
| NamespaceAliasDecl of decl_info * named_decl_info * namespace_alias_decl_info
| LabelDecl of decl_info * named_decl_info
| UsingEnumDecl of decl_info * named_decl_info
| UsingDecl of decl_info * named_decl_info
| LifetimeExtendedTemporaryDecl of decl_info
| ImportDecl of decl_info * string
| ImplicitConceptSpecializationDecl of decl_info
| FriendTemplateDecl of decl_info
| FriendDecl of decl_info * friend_info
| FileScopeAsmDecl of decl_info
| EmptyDecl of decl_info
| AccessSpecDecl of decl_info
and function_decl_info = {
fdi_mangled_name : string option;
fdi_is_cpp : bool;
fdi_is_inline : bool;
fdi_is_module_private : bool;
fdi_is_pure : bool;
fdi_is_deleted : bool;
fdi_is_no_return : bool;
fdi_is_constexpr : bool;
fdi_is_variadic : bool;
fdi_is_static : bool;
fdi_parameters : decl list;
fdi_decl_ptr_with_body : pointer option;
fdi_body : stmt option;
fdi_template_specialization : template_specialization_info option;
fdi_point_of_instantiation : source_location option;
}
and lambda_capture_info = {
lci_capture_kind : lambda_capture_kind;
lci_capture_this : bool;
lci_capture_variable : bool;
lci_capture_VLAtype : bool;
lci_init_captured_vardecl : decl option;
lci_captured_var : decl_ref option;
lci_is_implicit : bool;
lci_location : source_range;
lci_is_pack_expansion : bool;
}
and obj_c_implementation_decl_info = {
oidi_super : decl_ref option;
oidi_class_interface : decl_ref option;
oidi_ivar_initializers : cxx_ctor_initializer list;
}
and obj_c_method_decl_info = {
omdi_is_instance_method : bool;
omdi_result_type : qual_type;
omdi_is_property_accessor : bool;
omdi_property_decl : decl_ref option;
omdi_parameters : decl list;
omdi_implicit_parameters : decl list;
omdi_is_variadic : bool;
omdi_is_overriding : bool;
omdi_is_optional : bool;
omdi_body : stmt option;
omdi_mangled_name : string;
}
and stmt =
| WhileStmt of stmt_info * stmt list
| LabelStmt of stmt_info * stmt list * string
| VAArgExpr of stmt_info * stmt list * expr_info
| UnaryOperator of stmt_info * stmt list * expr_info * unary_operator_info
| UnaryExprOrTypeTraitExpr of stmt_info
* stmt list
* expr_info
* unary_expr_or_type_trait_expr_info
| TypoExpr of stmt_info * stmt list * expr_info
| TypeTraitExpr of stmt_info * stmt list * expr_info * type_trait_info
| SubstNonTypeTemplateParmPackExpr of stmt_info * stmt list * expr_info
| SubstNonTypeTemplateParmExpr of stmt_info * stmt list * expr_info
| StringLiteral of stmt_info * stmt list * expr_info * string list
| StmtExpr of stmt_info * stmt list * expr_info
| SourceLocExpr of stmt_info * stmt list * expr_info
| SizeOfPackExpr of stmt_info * stmt list * expr_info
| ShuffleVectorExpr of stmt_info * stmt list * expr_info
| SYCLUniqueStableNameExpr of stmt_info * stmt list * expr_info
| RequiresExpr of stmt_info * stmt list * expr_info
| RecoveryExpr of stmt_info * stmt list * expr_info
| PseudoObjectExpr of stmt_info * stmt list * expr_info
| PredefinedExpr of stmt_info * stmt list * expr_info * predefined_expr_type
| ParenListExpr of stmt_info * stmt list * expr_info
| ParenExpr of stmt_info * stmt list * expr_info
| PackExpansionExpr of stmt_info * stmt list * expr_info
| UnresolvedMemberExpr of stmt_info * stmt list * expr_info * overload_expr_info
| UnresolvedLookupExpr of stmt_info
diff --git a/website/static/odoc/next/infer/ATDGenerated/Clang_ast_v/index.html b/website/static/odoc/next/infer/ATDGenerated/Clang_ast_v/index.html
index a28398dfc90..87609a6c8d9 100644
--- a/website/static/odoc/next/infer/ATDGenerated/Clang_ast_v/index.html
+++ b/website/static/odoc/next/infer/ATDGenerated/Clang_ast_v/index.html
@@ -6,7 +6,7 @@
Clang_ast_t.obj_c_dictionary_literal_expr_info =
{
odlei_dict_method : pointer option;
}
type predefined_expr_type = Clang_ast_t.predefined_expr_type
type property_attribute = Clang_ast_t.property_attribute
type property_implementation = Clang_ast_t.property_implementation
type record_decl_info = Clang_ast_t.record_decl_info = {
rdi_definition_ptr : pointer;
rdi_is_module_private : bool;
rdi_is_complete_definition : bool;
rdi_is_dependent_type : bool;
}
type selector = Clang_ast_t.selector
type obj_c_subscript_ref_expr_info = Clang_ast_t.obj_c_subscript_ref_expr_info =
{
osrei_kind : obj_c_subscript_kind;
osrei_getter : selector option;
osrei_setter : selector option;
}
type objc_boxed_expr_info = Clang_ast_t.objc_boxed_expr_info = {
obei_boxing_method : selector option;
}
type source_file = Clang_ast_t.source_file
type source_location = Clang_ast_t.source_location = {
mutable sl_file : source_file option;
mutable sl_line : int option;
mutable sl_column : int option;
sl_is_macro : bool;
mutable sl_macro_file : source_file option;
mutable sl_macro_line : int option;
}
type source_range = Clang_ast_t.source_range
type attribute_info = Clang_ast_t.attribute_info = {
ai_pointer : pointer;
ai_source_range : source_range;
}
type attr_tuple = Clang_ast_t.attr_tuple
type comment_info = Clang_ast_t.comment_info = {
ci_parent_pointer : pointer;
ci_source_range : source_range;
}
type specifier_kind = Clang_ast_t.specifier_kind
type tag_kind = Clang_ast_t.tag_kind
type type_ptr = Clang_ast_t.type_ptr
type qual_type = Clang_ast_t.qual_type = {
qt_type_ptr : type_ptr;
qt_is_const : bool;
qt_is_restrict : bool;
qt_is_volatile : bool;
}
type array_type_info = Clang_ast_t.array_type_info = {
arti_element_type : qual_type;
arti_stride : int option;
}
type cxx_delete_expr_info = Clang_ast_t.cxx_delete_expr_info = {
xdei_is_array : bool;
xdei_destroyed_type : qual_type;
}
type decl_ref = Clang_ast_t.decl_ref = {
dr_kind : decl_kind;
dr_decl_pointer : pointer;
dr_name : named_decl_info option;
dr_qual_type : qual_type option;
}
type cxx_construct_expr_info = Clang_ast_t.cxx_construct_expr_info = {
xcei_decl_ref : decl_ref;
xcei_is_elidable : bool;
xcei_requires_zero_initialization : bool;
xcei_is_copy_constructor : bool;
}
type cxx_ctor_initializer_subject = Clang_ast_t.cxx_ctor_initializer_subject
type expr_with_cleanups_info = Clang_ast_t.expr_with_cleanups_info = {
ewci_decl_refs : decl_ref list;
}
type cxx_delete_expr_info = Clang_ast_t.cxx_delete_expr_info = {
xdei_is_array : bool;
xdei_destroyed_type : qual_type;
}
type decl_ref = Clang_ast_t.decl_ref = {
dr_kind : decl_kind;
dr_decl_pointer : pointer;
dr_name : named_decl_info option;
dr_qual_type : qual_type option;
}
type cxx_construct_expr_info = Clang_ast_t.cxx_construct_expr_info = {
xcei_decl_ref : decl_ref;
xcei_is_elidable : bool;
xcei_requires_zero_initialization : bool;
xcei_is_copy_constructor : bool;
}
type cxx_ctor_initializer_subject = Clang_ast_t.cxx_ctor_initializer_subject
type expr_with_cleanups_info = Clang_ast_t.expr_with_cleanups_info = {
ewci_decl_refs : decl_ref list;
}
type materialize_temporary_expr_info =
Clang_ast_t.materialize_temporary_expr_info =
{
mtei_decl_ref : decl_ref option;
}
type member_expr_info = Clang_ast_t.member_expr_info = {
mei_is_arrow : bool;
mei_performs_virtual_dispatch : bool;
mei_name : named_decl_info;
mei_decl_ref : decl_ref;
}
type namespace_decl_info = Clang_ast_t.namespace_decl_info = {
ndi_is_inline : bool;
ndi_original_namespace : decl_ref option;
}
type nested_name_specifier_loc = Clang_ast_t.nested_name_specifier_loc = {
nnsl_kind : specifier_kind;
nnsl_ref : decl_ref option;
}
type namespace_alias_decl_info = Clang_ast_t.namespace_alias_decl_info = {
nadi_namespace_loc : source_location;
nadi_target_name_loc : source_location;
nadi_nested_name_specifier_locs : nested_name_specifier_loc list;
nadi_namespace : decl_ref;
}
type obj_c_category_decl_info = Clang_ast_t.obj_c_category_decl_info = {
odi_class_interface : decl_ref option;
odi_implementation : decl_ref option;
odi_protocols : decl_ref list;
}
type obj_c_compatible_alias_decl_info =
@@ -15,7 +15,7 @@
{
opidi_implementation : property_implementation;
opidi_property_decl : decl_ref option;
opidi_ivar_decl : decl_ref option;
}
type obj_c_protocol_decl_info = Clang_ast_t.obj_c_protocol_decl_info = {
opcdi_protocols : decl_ref list;
}
type objc_encode_expr_info = Clang_ast_t.objc_encode_expr_info = {
oeei_qual_type : qual_type;
oeei_raw : string;
}
type overload_expr_info = Clang_ast_t.overload_expr_info = {
oei_decls : decl_ref list;
oei_name : declaration_name;
}
type property_ref_kind = Clang_ast_t.property_ref_kind
type obj_c_property_ref_expr_info = Clang_ast_t.obj_c_property_ref_expr_info = {
oprei_kind : property_ref_kind;
oprei_is_super_receiver : bool;
oprei_is_messaging_getter : bool;
oprei_is_messaging_setter : bool;
}
type receiver_kind = Clang_ast_t.receiver_kind
type obj_c_message_expr_info = Clang_ast_t.obj_c_message_expr_info = {
omei_selector : string;
omei_is_definition_found : bool;
omei_decl_pointer : pointer option;
omei_receiver_kind : receiver_kind;
}
type c_type = Clang_ast_t.c_type =
| NoneType of type_info
| AdjustedType of type_info * qual_type
| DecayedType of type_info * qual_type
| ConstantArrayType of type_info * array_type_info * int
| DependentSizedArrayType of type_info * array_type_info
| IncompleteArrayType of type_info * array_type_info
| VariableArrayType of type_info * array_type_info * pointer
| AtomicType of type_info * qual_type
| AttributedType of type_info * attr_type_info
| BTFTagAttributedType of type_info
| BitIntType of type_info
| BlockPointerType of type_info * qual_type
| BuiltinType of type_info * builtin_type_kind
| ComplexType of type_info
| DecltypeType of type_info * qual_type
| AutoType of type_info
| DeducedTemplateSpecializationType of type_info
| DependentAddressSpaceType of type_info
| DependentBitIntType of type_info
| DependentNameType of type_info
| DependentSizedExtVectorType of type_info
| DependentTemplateSpecializationType of type_info
| DependentVectorType of type_info
| ElaboratedType of type_info
| FunctionNoProtoType of type_info * function_type_info
| FunctionProtoType of type_info * function_type_info * params_type_info
| InjectedClassNameType of type_info
| MacroQualifiedType of type_info
| ConstantMatrixType of type_info
| DependentSizedMatrixType of type_info
| MemberPointerType of type_info * qual_type
| ObjCObjectPointerType of type_info * qual_type
| ObjCObjectType of type_info * objc_object_type_info
| ObjCInterfaceType of type_info * pointer
| ObjCTypeParamType of type_info
| PackExpansionType of type_info
| ParenType of type_info * qual_type
| PipeType of type_info
| PointerType of type_info * qual_type
| LValueReferenceType of type_info * qual_type
| RValueReferenceType of type_info * qual_type
| SubstTemplateTypeParmPackType of type_info
| SubstTemplateTypeParmType of type_info
| EnumType of type_info * pointer
| RecordType of type_info * pointer
| TemplateSpecializationType of type_info
| TemplateTypeParmType of type_info
| TypeOfExprType of type_info
| TypeOfType of type_info
| TypedefType of type_info * typedef_type_info
| UnaryTransformType of type_info
| UnresolvedUsingType of type_info
| UsingType of type_info
| VectorType of type_info
| ExtVectorType of type_info
type translation_unit_decl_info = Clang_ast_t.translation_unit_decl_info = {
tudi_input_path : source_file;
tudi_input_kind : input_kind;
tudi_integer_type_widths : integer_type_widths;
tudi_is_objc_arc_on : bool;
tudi_types : c_type list;
}
type unary_expr_or_type_trait_kind = Clang_ast_t.unary_expr_or_type_trait_kind
type unary_expr_or_type_trait_expr_info =
Clang_ast_t.unary_expr_or_type_trait_expr_info =
{
uttei_kind : unary_expr_or_type_trait_kind;
uttei_qual_type : qual_type;
}
type unary_operator_kind = Clang_ast_t.unary_operator_kind
type unary_operator_info = Clang_ast_t.unary_operator_info = {
uoi_kind : unary_operator_kind;
uoi_is_postfix : bool;
}
type unresolved_lookup_expr_info = Clang_ast_t.unresolved_lookup_expr_info = {
ulei_requires_ADL : bool;
ulei_is_overloaded : bool;
ulei_naming_class : decl_ref option;
}
type using_directive_decl_info = Clang_ast_t.using_directive_decl_info = {
uddi_using_location : source_location;
uddi_namespace_key_location : source_location;
uddi_nested_name_specifier_locs : nested_name_specifier_loc list;
uddi_nominated_namespace : decl_ref option;
}
type value_kind = Clang_ast_t.value_kind
type expr_info = Clang_ast_t.expr_info = {
ei_qual_type : qual_type;
ei_value_kind : value_kind;
ei_object_kind : object_kind;
}
type availability_attr_info = Clang_ast_t.availability_attr_info = {
aai_platform : string option;
aai_introduced : version_tuple;
}
type visibility_attr = Clang_ast_t.visibility_attr =
type attribute = Clang_ast_t.attribute
type template_instantiation_arg_info =
- Clang_ast_t.template_instantiation_arg_info
type comment = Clang_ast_t.comment =
| VerbatimBlockLineComment of comment_info * comment list
| TextComment of comment_info * comment list
| InlineCommandComment of comment_info * comment list
| HTMLStartTagComment of comment_info * comment list
| HTMLEndTagComment of comment_info * comment list
| FullComment of comment_info * comment list
| ParagraphComment of comment_info * comment list
| BlockCommandComment of comment_info * comment list
| VerbatimLineComment of comment_info * comment list
| VerbatimBlockComment of comment_info * comment list
| TParamCommandComment of comment_info * comment list
| ParamCommandComment of comment_info * comment list
type template_specialization_info = Clang_ast_t.template_specialization_info = {
tsi_template_decl : pointer;
tsi_specialization_args : template_instantiation_arg_info list;
}
type decl_info = Clang_ast_t.decl_info = {
di_pointer : pointer;
di_parent_pointer : pointer option;
di_source_range : source_range;
di_owning_module : string option;
di_is_implicit : bool;
di_is_used : bool;
di_is_this_declaration_referenced : bool;
di_is_invalid_decl : bool;
di_attributes : attribute list;
di_full_comment : comment option;
di_access : access_specifier;
}
type block_captured_variable = Clang_ast_t.block_captured_variable = {
bcv_is_by_ref : bool;
bcv_is_nested : bool;
bcv_variable : decl_ref option;
bcv_copy_expr : stmt option;
}
and block_decl_info = Clang_ast_t.block_decl_info = {
bdi_parameters : decl list;
bdi_is_variadic : bool;
bdi_captures_cxx_this : bool;
bdi_captured_variables : block_captured_variable list;
bdi_body : stmt option;
bdi_mangled_name : string;
}
and cxx_ctor_initializer = Clang_ast_t.cxx_ctor_initializer = {
xci_subject : cxx_ctor_initializer_subject;
xci_source_range : source_range;
xci_init_expr : stmt option;
}
and cxx_method_decl_info = Clang_ast_t.cxx_method_decl_info = {
xmdi_is_virtual : bool;
xmdi_is_static : bool;
xmdi_is_const : bool;
xmdi_is_copy_assignment : bool;
xmdi_is_copy_constructor : bool;
xmdi_is_move_constructor : bool;
xmdi_cxx_ctor_initializers : cxx_ctor_initializer list;
xmdi_overriden_methods : decl_ref list;
}
and cxx_record_decl_info = Clang_ast_t.cxx_record_decl_info = {
xrdi_bases : type_ptr list;
xrdi_vbases : type_ptr list;
xrdi_transitive_vbases : type_ptr list;
xrdi_is_pod : bool;
xrdi_is_trivially_copyable : bool;
xrdi_destructor : decl_ref option;
xrdi_lambda_call_operator : decl_ref option;
xrdi_lambda_captures : lambda_capture_info list;
}
and decl = Clang_ast_t.decl =
| TranslationUnitDecl of decl_info
+ Clang_ast_t.template_instantiation_arg_info
type comment = Clang_ast_t.comment =
| VerbatimBlockLineComment of comment_info * comment list
| TextComment of comment_info * comment list
| InlineCommandComment of comment_info * comment list
| HTMLStartTagComment of comment_info * comment list
| HTMLEndTagComment of comment_info * comment list
| FullComment of comment_info * comment list
| ParagraphComment of comment_info * comment list
| BlockCommandComment of comment_info * comment list
| VerbatimLineComment of comment_info * comment list
| VerbatimBlockComment of comment_info * comment list
| TParamCommandComment of comment_info * comment list
| ParamCommandComment of comment_info * comment list
type template_specialization_info = Clang_ast_t.template_specialization_info = {
tsi_template_decl : pointer;
tsi_specialization_args : template_instantiation_arg_info list;
}
type decl_info = Clang_ast_t.decl_info = {
di_pointer : pointer;
di_parent_pointer : pointer option;
di_source_range : source_range;
di_owning_module : string option;
di_is_implicit : bool;
di_is_used : bool;
di_is_this_declaration_referenced : bool;
di_is_invalid_decl : bool;
di_attributes : attribute list;
di_full_comment : comment option;
di_access : access_specifier;
}
type binding_decl_info = Clang_ast_t.binding_decl_info = {
binding_var : var_decl_info option;
bound_decl_type : qual_type option;
}
and block_captured_variable = Clang_ast_t.block_captured_variable = {
bcv_is_by_ref : bool;
bcv_is_nested : bool;
bcv_variable : decl_ref option;
bcv_copy_expr : stmt option;
}
and block_decl_info = Clang_ast_t.block_decl_info = {
bdi_parameters : decl list;
bdi_is_variadic : bool;
bdi_captures_cxx_this : bool;
bdi_captured_variables : block_captured_variable list;
bdi_body : stmt option;
bdi_mangled_name : string;
}
and cxx_ctor_initializer = Clang_ast_t.cxx_ctor_initializer = {
xci_subject : cxx_ctor_initializer_subject;
xci_source_range : source_range;
xci_init_expr : stmt option;
}
and cxx_method_decl_info = Clang_ast_t.cxx_method_decl_info = {
xmdi_is_virtual : bool;
xmdi_is_static : bool;
xmdi_is_const : bool;
xmdi_is_copy_assignment : bool;
xmdi_is_copy_constructor : bool;
xmdi_is_move_constructor : bool;
xmdi_cxx_ctor_initializers : cxx_ctor_initializer list;
xmdi_overriden_methods : decl_ref list;
}
and cxx_record_decl_info = Clang_ast_t.cxx_record_decl_info = {
xrdi_bases : type_ptr list;
xrdi_vbases : type_ptr list;
xrdi_transitive_vbases : type_ptr list;
xrdi_is_pod : bool;
xrdi_is_trivially_copyable : bool;
xrdi_destructor : decl_ref option;
xrdi_lambda_call_operator : decl_ref option;
xrdi_lambda_captures : lambda_capture_info list;
}
and decl = Clang_ast_t.decl =
| TranslationUnitDecl of decl_info
* decl list
* decl_context_info
* translation_unit_decl_info
| RequiresExprBodyDecl of decl_info
| LinkageSpecDecl of decl_info * decl list * decl_context_info
| ExternCContextDecl of decl_info
| ExportDecl of decl_info
| CapturedDecl of decl_info * decl list * decl_context_info
| BlockDecl of decl_info * block_decl_info
| TopLevelStmtDecl of decl_info
| StaticAssertDecl of decl_info
| PragmaDetectMismatchDecl of decl_info
| PragmaCommentDecl of decl_info
| ObjCPropertyImplDecl of decl_info * obj_c_property_impl_decl_info
| OMPThreadPrivateDecl of decl_info
| OMPRequiresDecl of decl_info
| OMPAllocateDecl of decl_info
| ObjCMethodDecl of decl_info * named_decl_info * obj_c_method_decl_info
| ObjCProtocolDecl of decl_info
@@ -83,7 +83,7 @@
* obj_c_ivar_decl_info
| ObjCAtDefsFieldDecl of decl_info
* named_decl_info
* qual_type
- * field_decl_info
| BindingDecl of decl_info * named_decl_info * qual_type * holding_var_decl_info
| UsingShadowDecl of decl_info * named_decl_info
| ConstructorUsingShadowDecl of decl_info * named_decl_info
| UsingPackDecl of decl_info * named_decl_info
| UsingDirectiveDecl of decl_info * named_decl_info * using_directive_decl_info
| UnresolvedUsingIfExistsDecl of decl_info * named_decl_info
| RecordDecl of decl_info
+ * field_decl_info
| BindingDecl of decl_info * named_decl_info * qual_type * binding_decl_info
| UsingShadowDecl of decl_info * named_decl_info
| ConstructorUsingShadowDecl of decl_info * named_decl_info
| UsingPackDecl of decl_info * named_decl_info
| UsingDirectiveDecl of decl_info * named_decl_info * using_directive_decl_info
| UnresolvedUsingIfExistsDecl of decl_info * named_decl_info
| RecordDecl of decl_info
* named_decl_info
* type_ptr
* decl list
@@ -124,7 +124,7 @@
* tag_kind
* enum_decl_info
| UnresolvedUsingTypenameDecl of decl_info * named_decl_info * type_ptr
| TypedefDecl of decl_info * named_decl_info * type_ptr * typedef_decl_info
| TypeAliasDecl of decl_info * named_decl_info * type_ptr
| ObjCTypeParamDecl of decl_info * named_decl_info * type_ptr
| TemplateTypeParmDecl of decl_info * named_decl_info * type_ptr
| TemplateTemplateParmDecl of decl_info * named_decl_info
| VarTemplateDecl of decl_info * named_decl_info
| TypeAliasTemplateDecl of decl_info * named_decl_info
| FunctionTemplateDecl of decl_info * named_decl_info * template_decl_info
| ClassTemplateDecl of decl_info * named_decl_info * template_decl_info
| ConceptDecl of decl_info * named_decl_info
| BuiltinTemplateDecl of decl_info * named_decl_info
| ObjCPropertyDecl of decl_info * named_decl_info * obj_c_property_decl_info
| ObjCCompatibleAliasDecl of decl_info
* named_decl_info
- * obj_c_compatible_alias_decl_info
| NamespaceAliasDecl of decl_info * named_decl_info * namespace_alias_decl_info
| LabelDecl of decl_info * named_decl_info
| UsingEnumDecl of decl_info * named_decl_info
| UsingDecl of decl_info * named_decl_info
| LifetimeExtendedTemporaryDecl of decl_info
| ImportDecl of decl_info * string
| ImplicitConceptSpecializationDecl of decl_info
| FriendTemplateDecl of decl_info
| FriendDecl of decl_info * friend_info
| FileScopeAsmDecl of decl_info
| EmptyDecl of decl_info
| AccessSpecDecl of decl_info
and field_decl_info = Clang_ast_t.field_decl_info = {
fldi_is_mutable : bool;
fldi_is_module_private : bool;
fldi_init_expr : stmt option;
fldi_bit_width_expr : stmt option;
}
and friend_info = Clang_ast_t.friend_info
and function_decl_info = Clang_ast_t.function_decl_info = {
fdi_mangled_name : string option;
fdi_is_cpp : bool;
fdi_is_inline : bool;
fdi_is_module_private : bool;
fdi_is_pure : bool;
fdi_is_deleted : bool;
fdi_is_no_return : bool;
fdi_is_constexpr : bool;
fdi_is_variadic : bool;
fdi_is_static : bool;
fdi_parameters : decl list;
fdi_decl_ptr_with_body : pointer option;
fdi_body : stmt option;
fdi_template_specialization : template_specialization_info option;
fdi_point_of_instantiation : source_location option;
}
and holding_var_decl_info = Clang_ast_t.holding_var_decl_info = {
hvdi_binding_var : var_decl_info option;
}
and if_stmt_info = Clang_ast_t.if_stmt_info = {
isi_init : pointer option;
isi_cond_var : stmt option;
isi_cond : pointer;
isi_then : pointer;
isi_else : (pointer * source_location) option;
}
and lambda_capture_info = Clang_ast_t.lambda_capture_info = {
lci_capture_kind : lambda_capture_kind;
lci_capture_this : bool;
lci_capture_variable : bool;
lci_capture_VLAtype : bool;
lci_init_captured_vardecl : decl option;
lci_captured_var : decl_ref option;
lci_is_implicit : bool;
lci_location : source_range;
lci_is_pack_expansion : bool;
}
and obj_c_implementation_decl_info = Clang_ast_t.obj_c_implementation_decl_info =
+ * obj_c_compatible_alias_decl_info
| NamespaceAliasDecl of decl_info * named_decl_info * namespace_alias_decl_info
| LabelDecl of decl_info * named_decl_info
| UsingEnumDecl of decl_info * named_decl_info
| UsingDecl of decl_info * named_decl_info
| LifetimeExtendedTemporaryDecl of decl_info
| ImportDecl of decl_info * string
| ImplicitConceptSpecializationDecl of decl_info
| FriendTemplateDecl of decl_info
| FriendDecl of decl_info * friend_info
| FileScopeAsmDecl of decl_info
| EmptyDecl of decl_info
| AccessSpecDecl of decl_info
and field_decl_info = Clang_ast_t.field_decl_info = {
fldi_is_mutable : bool;
fldi_is_module_private : bool;
fldi_init_expr : stmt option;
fldi_bit_width_expr : stmt option;
}
and friend_info = Clang_ast_t.friend_info
and function_decl_info = Clang_ast_t.function_decl_info = {
fdi_mangled_name : string option;
fdi_is_cpp : bool;
fdi_is_inline : bool;
fdi_is_module_private : bool;
fdi_is_pure : bool;
fdi_is_deleted : bool;
fdi_is_no_return : bool;
fdi_is_constexpr : bool;
fdi_is_variadic : bool;
fdi_is_static : bool;
fdi_parameters : decl list;
fdi_decl_ptr_with_body : pointer option;
fdi_body : stmt option;
fdi_template_specialization : template_specialization_info option;
fdi_point_of_instantiation : source_location option;
}
and if_stmt_info = Clang_ast_t.if_stmt_info = {
isi_init : pointer option;
isi_cond_var : stmt option;
isi_cond : pointer;
isi_then : pointer;
isi_else : (pointer * source_location) option;
}
and lambda_capture_info = Clang_ast_t.lambda_capture_info = {
lci_capture_kind : lambda_capture_kind;
lci_capture_this : bool;
lci_capture_variable : bool;
lci_capture_VLAtype : bool;
lci_init_captured_vardecl : decl option;
lci_captured_var : decl_ref option;
lci_is_implicit : bool;
lci_location : source_range;
lci_is_pack_expansion : bool;
}
and obj_c_implementation_decl_info = Clang_ast_t.obj_c_implementation_decl_info =
{
oidi_super : decl_ref option;
oidi_class_interface : decl_ref option;
oidi_ivar_initializers : cxx_ctor_initializer list;
}
and obj_c_message_expr_kind = Clang_ast_t.obj_c_message_expr_kind
and obj_c_method_decl_info = Clang_ast_t.obj_c_method_decl_info = {
omdi_is_instance_method : bool;
omdi_result_type : qual_type;
omdi_is_property_accessor : bool;
omdi_property_decl : decl_ref option;
omdi_parameters : decl list;
omdi_implicit_parameters : decl list;
omdi_is_variadic : bool;
omdi_is_overriding : bool;
omdi_is_optional : bool;
omdi_body : stmt option;
omdi_mangled_name : string;
}
and stmt = Clang_ast_t.stmt =
| WhileStmt of stmt_info * stmt list
| LabelStmt of stmt_info * stmt list * string
| VAArgExpr of stmt_info * stmt list * expr_info
| UnaryOperator of stmt_info * stmt list * expr_info * unary_operator_info
| UnaryExprOrTypeTraitExpr of stmt_info
* stmt list
* expr_info
@@ -569,7 +569,6 @@
cxx_ctor_initializer_subject ->
Atdgen_runtime.Util.Validation.error option
Validate a value of type cxx_ctor_initializer_subject
.
val create_decl_ref_expr_info :
?drti_decl_ref:decl_ref ->
- ?drti_found_decl_ref:decl_ref ->
unit ->
decl_ref_expr_info
Create a record of type decl_ref_expr_info
.
val validate_decl_ref_expr_info :
Atdgen_runtime.Util.Validation.path ->
@@ -875,7 +874,14 @@
decl_info
Create a record of type decl_info
.
val validate_decl_info :
Atdgen_runtime.Util.Validation.path ->
decl_info ->
- Atdgen_runtime.Util.Validation.error option
Validate a value of type decl_info
.
Validate a value of type decl_info
.
val create_binding_decl_info :
+ ?binding_var:var_decl_info ->
+ ?bound_decl_type:qual_type ->
+ unit ->
+ binding_decl_info
Create a record of type binding_decl_info
.
val validate_binding_decl_info :
+ Atdgen_runtime.Util.Validation.path ->
+ binding_decl_info ->
+ Atdgen_runtime.Util.Validation.error option
Validate a value of type binding_decl_info
.
val create_block_captured_variable :
?bcv_is_by_ref:bool ->
?bcv_is_nested:bool ->
?bcv_variable:decl_ref ->
@@ -1003,13 +1009,7 @@
generic_selection_info
Create a record of type generic_selection_info
.
val validate_generic_selection_info :
Atdgen_runtime.Util.Validation.path ->
generic_selection_info ->
- Atdgen_runtime.Util.Validation.error option
Validate a value of type generic_selection_info
.
val create_holding_var_decl_info :
- ?hvdi_binding_var:var_decl_info ->
- unit ->
- holding_var_decl_info
Create a record of type holding_var_decl_info
.
val validate_holding_var_decl_info :
- Atdgen_runtime.Util.Validation.path ->
- holding_var_decl_info ->
- Atdgen_runtime.Util.Validation.error option
Validate a value of type holding_var_decl_info
.
Validate a value of type generic_selection_info
.
val create_if_stmt_info :
?isi_init:pointer ->
?isi_cond_var:stmt ->
isi_cond:pointer ->
diff --git a/website/static/odoc/next/infer/ATDGenerated/Jsonbug_j/index.html b/website/static/odoc/next/infer/ATDGenerated/Jsonbug_j/index.html
index c396f2bd914..2a0d6502dec 100644
--- a/website/static/odoc/next/infer/ATDGenerated/Jsonbug_j/index.html
+++ b/website/static/odoc/next/infer/ATDGenerated/Jsonbug_j/index.html
@@ -5,7 +5,7 @@
bool
type transitive_callee_kind = Jsonbug_t.transitive_callee_kind
val equal_transitive_callee_kind :
transitive_callee_kind ->
transitive_callee_kind ->
- bool
type transitive_callee = Jsonbug_t.transitive_callee = {
callsite_filename : string;
callsite_absolute_position_in_file : int;
caller_name : string;
callsite_relative_position_in_caller : int;
kind : transitive_callee_kind;
resolution : transitive_callee_resolution;
}
val equal_transitive_callee : transitive_callee -> transitive_callee -> bool
type taint_extra = Jsonbug_t.taint_extra = {
taint_source : string option;
taint_sink : string option;
taint_policy_privacy_effect : string option;
tainted_expression : string option;
report_as_issue_type : string option;
report_as_category : string option;
}
val equal_taint_extra : taint_extra -> taint_extra -> bool
val equal_missed_capture : missed_capture -> missed_capture -> bool
val equal_json_trace_item : json_trace_item -> json_trace_item -> bool
val equal_config_usage_extra : config_usage_extra -> config_usage_extra -> bool
type extra = Jsonbug_t.extra = {
cost_polynomial : string option;
cost_degree : int option;
copy_type : string option;
config_usage_extra : config_usage_extra option;
taint_extra : taint_extra option;
transitive_callees : transitive_callee list;
transitive_missed_captures : missed_capture list;
}
type jsonbug = Jsonbug_t.jsonbug = {
bug_type : string;
qualifier : string;
suggestion : string option;
severity : string;
category : string;
line : int;
column : int;
procedure : string;
procedure_start_line : int;
file : string;
bug_trace : json_trace_item list;
bug_trace_length : int;
bug_trace_max_depth : int;
key : string;
node_key : string option;
hash : string;
dotty : string option;
infer_source_loc : loc option;
bug_type_hum : string;
traceview_id : int option;
censored_reason : string option;
access : string option;
extras : extra option;
suppressed : bool;
}
type report = Jsonbug_t.report
type transitive_callee = Jsonbug_t.transitive_callee = {
callsite_filename : string;
callsite_absolute_position_in_file : int;
caller_name : string;
callsite_relative_position_in_caller : int;
kind : transitive_callee_kind;
resolution : transitive_callee_resolution;
}
val equal_transitive_callee : transitive_callee -> transitive_callee -> bool
type taint_extra = Jsonbug_t.taint_extra = {
taint_source : string option;
taint_sink : string option;
taint_policy_privacy_effect : string option;
tainted_expression : string option;
report_as_issue_type : string option;
report_as_category : string option;
}
val equal_taint_extra : taint_extra -> taint_extra -> bool
val equal_missed_capture : missed_capture -> missed_capture -> bool
val equal_json_trace_item : json_trace_item -> json_trace_item -> bool
val equal_config_usage_extra : config_usage_extra -> config_usage_extra -> bool
type extra = Jsonbug_t.extra = {
cost_polynomial : string option;
cost_degree : int option;
copy_type : string option;
config_usage_extra : config_usage_extra option;
taint_extra : taint_extra option;
transitive_callees : transitive_callee list;
transitive_missed_captures : missed_capture list;
}
type jsonbug = Jsonbug_t.jsonbug = {
bug_type : string;
qualifier : string;
suggestion : string option;
severity : string;
category : string;
line : int;
column : int;
procedure : string;
procedure_start_line : int;
file : string;
bug_trace : json_trace_item list;
bug_trace_length : int;
bug_trace_max_depth : int;
key : string;
node_key : string option;
hash : string;
dotty : string option;
infer_source_loc : loc option;
bug_type_hum : string;
traceview_id : int option;
censored_reason : string option;
access : string option;
extras : extra option;
autofix : autofix option;
suppressed : bool;
}
type report = Jsonbug_t.report
val write_transitive_callee_resolution :
Stdlib.Buffer.t ->
transitive_callee_resolution ->
unit
Output a JSON value of type transitive_callee_resolution
.
val string_of_transitive_callee_resolution :
@@ -40,4 +40,4 @@
json_trace_item
Input JSON data of type json_trace_item
.
val json_trace_item_of_string : string -> json_trace_item
Deserialize JSON data of type json_trace_item
.
val write_config_usage_extra : Stdlib.Buffer.t -> config_usage_extra -> unit
Output a JSON value of type config_usage_extra
.
val string_of_config_usage_extra : ?len:int -> config_usage_extra -> string
Serialize a value of type config_usage_extra
into a JSON string.
val read_config_usage_extra :
Yojson.Safe.lexer_state ->
Stdlib.Lexing.lexbuf ->
- config_usage_extra
Input JSON data of type config_usage_extra
.
val config_usage_extra_of_string : string -> config_usage_extra
Deserialize JSON data of type config_usage_extra
.
val string_of_extra : ?len:int -> extra -> string
Serialize a value of type extra
into a JSON string.
val read_extra : Yojson.Safe.lexer_state -> Stdlib.Lexing.lexbuf -> extra
Input JSON data of type extra
.
val string_of_jsonbug : ?len:int -> jsonbug -> string
Serialize a value of type jsonbug
into a JSON string.
val read_jsonbug : Yojson.Safe.lexer_state -> Stdlib.Lexing.lexbuf -> jsonbug
Input JSON data of type jsonbug
.
val string_of_report : ?len:int -> report -> string
Serialize a value of type report
into a JSON string.
+ config_usage_extra
Input JSON data of type config_usage_extra
.
val config_usage_extra_of_string : string -> config_usage_extra
Deserialize JSON data of type config_usage_extra
.
val string_of_extra : ?len:int -> extra -> string
Serialize a value of type extra
into a JSON string.
val read_extra : Yojson.Safe.lexer_state -> Stdlib.Lexing.lexbuf -> extra
Input JSON data of type extra
.
val string_of_autofix : ?len:int -> autofix -> string
Serialize a value of type autofix
into a JSON string.
val read_autofix : Yojson.Safe.lexer_state -> Stdlib.Lexing.lexbuf -> autofix
Input JSON data of type autofix
.
val string_of_jsonbug : ?len:int -> jsonbug -> string
Serialize a value of type jsonbug
into a JSON string.
val read_jsonbug : Yojson.Safe.lexer_state -> Stdlib.Lexing.lexbuf -> jsonbug
Input JSON data of type jsonbug
.
val string_of_report : ?len:int -> report -> string
Serialize a value of type report
into a JSON string.
diff --git a/website/static/odoc/next/infer/ATDGenerated/Jsonbug_t/index.html b/website/static/odoc/next/infer/ATDGenerated/Jsonbug_t/index.html
index 0ee24344d4e..1d1f6337d79 100644
--- a/website/static/odoc/next/infer/ATDGenerated/Jsonbug_t/index.html
+++ b/website/static/odoc/next/infer/ATDGenerated/Jsonbug_t/index.html
@@ -5,4 +5,4 @@
bool
val equal_transitive_callee_kind :
transitive_callee_kind ->
transitive_callee_kind ->
- bool
type transitive_callee = {
callsite_filename : string;
callsite_absolute_position_in_file : int;
caller_name : string;
callsite_relative_position_in_caller : int;
kind : transitive_callee_kind;
resolution : transitive_callee_resolution;
}
val equal_transitive_callee : transitive_callee -> transitive_callee -> bool
val equal_taint_extra : taint_extra -> taint_extra -> bool
val equal_missed_capture : missed_capture -> missed_capture -> bool
val equal_json_trace_item : json_trace_item -> json_trace_item -> bool
val equal_config_usage_extra : config_usage_extra -> config_usage_extra -> bool
type extra = {
cost_polynomial : string option;
cost_degree : int option;
copy_type : string option;
config_usage_extra : config_usage_extra option;
taint_extra : taint_extra option;
transitive_callees : transitive_callee list;
transitive_missed_captures : missed_capture list;
}
type jsonbug = {
bug_type : string;
qualifier : string;
suggestion : string option;
severity : string;
category : string;
line : int;
column : int;
procedure : string;
procedure_start_line : int;
file : string;
bug_trace : json_trace_item list;
bug_trace_length : int;
bug_trace_max_depth : int;
key : string;
node_key : string option;
hash : string;
dotty : string option;
infer_source_loc : loc option;
bug_type_hum : string;
traceview_id : int option;
censored_reason : string option;
access : string option;
extras : extra option;
suppressed : bool;
}
type report = jsonbug list