Module ATDGenerated.Pulse_config_t
type taint_target = [
| `ReturnValue
| `AllArguments
| `ArgumentPositions of int list
| `AllArgumentsButPositions of int list
| `ArgumentsMatchingTypes of string list
| `InstanceReference
| `FieldsOfValue of (string * taint_target) list
| `GetField
| `SetField
]
type taint_flow = {
source_kinds : string list;
sanitizer_kinds : string list;
sink_kinds : string list;
}
type taint_policy = {
short_description : string;
taint_flows : taint_flow list;
privacy_effect : string option;
exclude_in : string list option;
exclude_matching : string list option;
report_as_issue_type : string option;
report_as_category : string option;
}
type argument_constraint = {
index : int;
type_matches : string list;
}
type matcher = {
field_regex : string option;
procedure : string option;
procedure_regex : string option;
class_name_regex : string option;
class_names : string list option;
class_with_annotation : string option;
field_names : string list option;
method_names : string list option;
method_return_type_names : string list option;
overrides_of_class_with_annotation : string option;
method_with_annotation : string option;
field_with_annotation : string option;
annotation_values : string list option;
block_passed_to : string option;
block_passed_to_regex : string option;
allocation : string option;
argument_constraints : argument_constraint list;
kinds : string list option;
taint_target : taint_target option;
exclude_from_regex_in : string list option;
exclude_from_regex_names : string list option;
sanitized_in : string list option;
}
type data_flow_kinds = string list