Module ATDGenerated.Jsonbug_t

type transitive_callee_resolution = [
  1. | `ResolvedUsingDynamicType
  2. | `ResolvedUsingStaticType
  3. | `Unresolved
]
val equal_transitive_callee_resolution : transitive_callee_resolution -> transitive_callee_resolution -> bool
type transitive_callee_kind = [
  1. | `Static
  2. | `Virtual
  3. | `Closure
]
val equal_transitive_callee_kind : transitive_callee_kind -> transitive_callee_kind -> bool
type transitive_callee = {
  1. callsite_filename : string;
  2. callsite_absolute_position_in_file : int;
  3. caller_name : string;
  4. callsite_relative_position_in_caller : int;
  5. kind : transitive_callee_kind;
  6. resolution : transitive_callee_resolution;
}
val equal_transitive_callee : transitive_callee -> transitive_callee -> bool
type taint_extra = {
  1. taint_source : string option;
  2. taint_sink : string option;
  3. taint_policy_privacy_effect : string option;
  4. tainted_expression : string option;
}
val equal_taint_extra : taint_extra -> taint_extra -> bool
type redundant_fixme_info = {
  1. present_issue_types : string list;
  2. comment_start_line : int;
  3. comment_end_line : int;
}
val equal_redundant_fixme_info : redundant_fixme_info -> redundant_fixme_info -> bool
type issue_method = {
  1. name : string;
  2. params : string list;
}
val equal_issue_method : issue_method -> issue_method -> bool
type parameter_not_nullable_info = {
  1. class_name : string;
  2. package_name : string option;
  3. method_info : issue_method;
  4. param_index : int;
}
val equal_parameter_not_nullable_info : parameter_not_nullable_info -> parameter_not_nullable_info -> bool
type nullsafe_mode = [
  1. | `Default
  2. | `LocalTrustAll
  3. | `LocalTrustSome
  4. | `LocalTrustNone
  5. | `Strict
]
val equal_nullsafe_mode : nullsafe_mode -> nullsafe_mode -> bool
type nullsafe_meta_issue_info = {
  1. num_issues : int;
  2. num_fixmes : int;
  3. curr_nullsafe_mode : nullsafe_mode;
  4. can_be_promoted_to : nullsafe_mode option;
}
val equal_nullsafe_meta_issue_info : nullsafe_meta_issue_info -> nullsafe_meta_issue_info -> bool
type method_info = {
  1. class_name : string;
  2. package : string;
  3. method_name : string;
  4. call_line : int;
}
val equal_method_info : method_info -> method_info -> bool
type field_name = {
  1. class_name : string;
  2. package_name : string option;
  3. field : string;
}
val equal_field_name : field_name -> field_name -> bool
type access_level = [
  1. | `Private
  2. | `Protected
  3. | `Public
  4. | `Default
]
val equal_access_level : access_level -> access_level -> bool
type annotation_point_method = {
  1. method_name : string;
  2. params : string list;
  3. access_level : access_level;
}
val equal_annotation_point_method : annotation_point_method -> annotation_point_method -> bool
type annotation_point_kind = [
  1. | `Method
  2. | `Field
  3. | `Param
]
val equal_annotation_point_kind : annotation_point_kind -> annotation_point_kind -> bool
type annotation_point = {
  1. id : string;
  2. kind : annotation_point_kind;
  3. method_info : annotation_point_method option;
  4. field_name : string option;
  5. param_num : int option;
  6. num_violations : int;
  7. dependent_point_ids : string list;
}
val equal_annotation_point : annotation_point -> annotation_point -> bool
type nullsafe_extra = {
  1. class_name : string;
  2. package : string option;
  3. method_info : issue_method option;
  4. field : field_name option;
  5. inconsistent_param_index : int option;
  6. parameter_not_nullable_info : parameter_not_nullable_info option;
  7. nullable_methods : method_info list option;
  8. unvetted_3rd_party : string list option;
  9. meta_issue_info : nullsafe_meta_issue_info option;
  10. annotation_graph : annotation_point list option;
  11. redundant_fixme_info : redundant_fixme_info option;
}
val equal_nullsafe_extra : nullsafe_extra -> nullsafe_extra -> bool
type missed_capture = {
  1. class_name : string;
}
val equal_missed_capture : missed_capture -> missed_capture -> bool
type loc = {
  1. file : string;
  2. lnum : int;
  3. cnum : int;
  4. enum : int;
}
val equal_loc : loc -> loc -> bool
type json_trace_item = {
  1. level : int;
  2. filename : string;
  3. line_number : int;
  4. column_number : int;
  5. description : string;
}
val equal_json_trace_item : json_trace_item -> json_trace_item -> bool
type config_usage_extra = {
  1. config_name : string;
  2. function_name : string;
  3. filename : string;
  4. line_number : int;
}
val equal_config_usage_extra : config_usage_extra -> config_usage_extra -> bool
type extra = {
  1. cost_polynomial : string option;
  2. cost_degree : int option;
  3. nullsafe_extra : nullsafe_extra option;
  4. copy_type : string option;
  5. config_usage_extra : config_usage_extra option;
  6. taint_extra : taint_extra option;
  7. transitive_callees : transitive_callee list;
  8. transitive_missed_captures : missed_capture list;
}
val equal_extra : extra -> extra -> bool
type jsonbug = {
  1. bug_type : string;
  2. qualifier : string;
  3. suggestion : string option;
  4. severity : string;
  5. line : int;
  6. column : int;
  7. procedure : string;
  8. procedure_start_line : int;
  9. file : string;
  10. bug_trace : json_trace_item list;
  11. key : string;
  12. node_key : string option;
  13. hash : string;
  14. dotty : string option;
  15. infer_source_loc : loc option;
  16. bug_type_hum : string;
  17. traceview_id : int option;
  18. censored_reason : string option;
  19. access : string option;
  20. extras : extra option;
}
val equal_jsonbug : jsonbug -> jsonbug -> bool
type report = jsonbug list
val equal_report : report -> report -> bool