|
|
|
(*
|
|
|
|
* Copyright (c) 2015-present, Facebook, Inc.
|
|
|
|
*
|
|
|
|
* This source code is licensed under the MIT license found in the
|
|
|
|
* LICENSE file in the root directory of this source tree.
|
|
|
|
*)
|
|
|
|
|
|
|
|
open! IStd
|
|
|
|
|
|
|
|
(** Type of functions to report issues to the error_log in a spec. *)
|
|
|
|
|
|
|
|
type log_t =
|
|
|
|
?ltr:Errlog.loc_trace -> ?linters_def_file:string -> ?doc_url:string -> ?access:string
|
|
|
|
-> ?extras:Jsonbug_t.extra -> exn -> unit
|
|
|
|
|
|
|
|
val log_issue_deprecated :
|
|
|
|
Exceptions.severity -> Typ.Procname.t -> ?node_id_key:Errlog.node_id_key -> ?loc:Location.t
|
|
|
|
-> log_t
|
|
|
|
(** Report an issue in the given procedure.
|
|
|
|
DEPRECATED as it can create race conditions between checkers.
|
|
|
|
Use log_error/warning instead *)
|
|
|
|
|
|
|
|
val log_issue_from_errlog :
|
|
|
|
Typ.Procname.t -> Exceptions.severity -> Errlog.t -> loc:Location.t
|
|
|
|
-> node_id_key:Errlog.node_id_key -> ltr:Errlog.loc_trace -> linters_def_file:string option
|
|
|
|
-> doc_url:string option -> exn -> unit
|
|
|
|
(** Report an issue of a given kind in the given error log. *)
|
|
|
|
|
|
|
|
val log_error : Summary.t -> loc:Location.t -> log_t
|
|
|
|
(** Add an error to the given summary. *)
|
|
|
|
|
|
|
|
val log_warning : Summary.t -> loc:Location.t -> log_t
|
|
|
|
(** Add an warning to the given summary. *)
|
|
|
|
|
|
|
|
val log_issue_external :
|
|
|
|
Typ.Procname.t -> Exceptions.severity -> loc:Location.t -> ltr:Errlog.loc_trace -> ?access:string
|
|
|
|
-> exn -> unit
|
|
|
|
(** Log an issue to the error log in [IssueLog] associated with the given procname. *)
|
|
|
|
|
|
|
|
val is_suppressed :
|
|
|
|
?field_name:Typ.Fieldname.t option -> Tenv.t -> Procdesc.t -> IssueType.t -> bool
|
|
|
|
(** should an issue report be suppressed due to a [@SuppressLint("issue")] annotation? *)
|