Module ATDGenerated.Jsonbug_t
type issue_method
=
{
name : string;
params : string list;
}
type parameter_not_nullable_info
=
{
class_name : string;
package_name : string option;
method_info : issue_method;
param_index : int;
}
type nullsafe_mode
=[
|
`Default
|
`LocalTrustAll
|
`LocalTrustSome
|
`LocalTrustNone
|
`Strict
]
type nullsafe_meta_issue_info
=
{
num_issues : int;
curr_nullsafe_mode : nullsafe_mode;
can_be_promoted_to : nullsafe_mode option;
}
type method_info
=
{
class_name : string;
package : string;
method_name : string;
call_line : int;
}
type field_name
=
{
class_name : string;
package_name : string option;
field : string;
}
type access_level
=[
|
`Private
|
`Protected
|
`Public
|
`Default
]
type annotation_point_method
=
{
method_name : string;
params : string list;
access_level : access_level;
}
type annotation_point_kind
=[
|
`Method
|
`Field
|
`Param
]
type annotation_point
=
{
id : string;
kind : annotation_point_kind;
method_info : annotation_point_method option;
field_name : string option;
param_num : int option;
num_violations : int;
dependent_point_ids : string list;
}
type nullsafe_extra
=
{
class_name : string;
package : string option;
method_info : issue_method option;
field : field_name option;
inconsistent_param_index : int option;
parameter_not_nullable_info : parameter_not_nullable_info option;
nullable_methods : method_info list option;
unvetted_3rd_party : string list option;
meta_issue_info : nullsafe_meta_issue_info option;
annotation_graph : annotation_point list option;
}
type loc
=
{
file : string;
lnum : int;
cnum : int;
enum : int;
}
type json_trace_item
=
{
level : int;
filename : string;
line_number : int;
column_number : int;
description : string;
}
type extra
=
{
cost_polynomial : string option;
cost_degree : int option;
nullsafe_extra : nullsafe_extra option;
}
type jsonbug
=
{
bug_type : string;
doc_url : string option;
qualifier : string;
severity : string;
line : int;
column : int;
procedure : string;
procedure_start_line : int;
file : string;
bug_trace : json_trace_item list;
key : string;
node_key : string option;
hash : string;
dotty : string option;
infer_source_loc : loc option;
bug_type_hum : string;
linters_def_file : string option;
traceview_id : int option;
censored_reason : string option;
access : string option;
extras : extra option;
}
type report
= jsonbug list
type item
=
{
hash : string;
loc : loc;
procedure_name : string;
procedure_id : string;
}
type hum_info
=
{
hum_polynomial : string;
hum_degree : string;
big_o : string;
}
type cost_info
=
{
polynomial_version : int;
polynomial : string;
degree : int option;
hum : hum_info;
trace : json_trace_item list;
}
type cost_item
=
{
hash : string;
loc : loc;
procedure_name : string;
procedure_id : string;
is_on_ui_thread : bool;
exec_cost : cost_info;
autoreleasepool_size : cost_info;
}
type costs_report
= cost_item list
type config_impact_item
=
{
hash : string;
loc : loc;
procedure_name : string;
procedure_id : string;
unchecked_callees : string;
}
type config_impact_report
= config_impact_item list