From 0eb864d8007b240035035ed7f78e5b4bca2b9ffb Mon Sep 17 00:00:00 2001 From: Josh Berdine Date: Tue, 29 Nov 2016 16:40:41 -0800 Subject: [PATCH] ppx_compare CppTrace Reviewed By: cristianoc Differential Revision: D4232407 fbshipit-source-id: 003c0eb --- infer/src/quandary/CppTrace.ml | 49 +++++++--------------------------- 1 file changed, 10 insertions(+), 39 deletions(-) diff --git a/infer/src/quandary/CppTrace.ml b/infer/src/quandary/CppTrace.ml index eee0908fc..f07fc3f2b 100644 --- a/infer/src/quandary/CppTrace.ml +++ b/infer/src/quandary/CppTrace.ml @@ -19,15 +19,7 @@ module CppSource = struct | Footprint of AccessPath.t (** source that was read from the environment. *) | EnvironmentVariable (** source that was read from an environment variable *) | Other (** for testing or uncategorized sources *) - - let compare sk1 sk2 = - if sk1 == sk2 - then - 0 - else - match sk1, sk2 with - | Footprint ap1, Footprint ap2 -> AccessPath.compare ap1 ap2 - | _ -> tags_compare sk1 sk2 + [@@deriving compare] let equal sk1 sk2 = compare sk1 sk2 = 0 @@ -42,7 +34,10 @@ module CppSource = struct { kind : Kind.t; site : CallSite.t; - } + } [@@deriving compare] + + let equal t1 t2 = + compare t1 t2 = 0 let is_footprint t = match t.kind with | Kind.Footprint _ -> true @@ -87,19 +82,6 @@ module CppSource = struct let with_callsite t callee_site = { t with site = callee_site; } - let compare src1 src2 = - if src1 == src2 - then - 0 - else - let n = Kind.compare src1.kind src2.kind in - if n <> 0 - then n - else CallSite.compare src1.site src2.site - - let equal t1 t2 = - compare t1 t2 = 0 - let pp fmt s = F.fprintf fmt "%a(%a)" Kind.pp s.kind CallSite.pp s.site @@ -116,8 +98,7 @@ module CppSink = struct type t = | ShellExec (** shell exec function *) | Other (** for testing or uncategorized sinks *) - - let compare snk1 snk2 = tags_compare snk1 snk2 + [@@deriving compare] let equal snk1 snk2 = compare snk1 snk2 = 0 @@ -131,7 +112,10 @@ module CppSink = struct { kind : Kind.t; site : CallSite.t; - } + } [@@deriving compare] + + let equal t1 t2 = + compare t1 t2 = 0 let kind t = t.kind @@ -173,19 +157,6 @@ module CppSink = struct let with_callsite t callee_site = { t with site = callee_site; } - let compare snk1 snk2 = - if snk1 == snk2 - then - 0 - else - let n = Kind.compare snk1.kind snk2.kind in - if n <> 0 - then n - else CallSite.compare snk1.site snk2.site - - let equal t1 t2 = - compare t1 t2 = 0 - let pp fmt s = F.fprintf fmt "%a(%a)" Kind.pp s.kind CallSite.pp s.site