From 9ed9363207edb92b88f15a69ff67a3b18047e247 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ezgi=20=C3=87i=C3=A7ek?= Date: Fri, 13 Dec 2019 03:51:19 -0800 Subject: [PATCH] [litho] Remove receiver from MethodCallPrefix Reviewed By: skcho Differential Revision: D18960178 fbshipit-source-id: b0acff4dc --- infer/src/checkers/LithoDomain.ml | 12 ++++-------- infer/src/checkers/LithoDomain.mli | 7 +++---- infer/src/checkers/LithoFramework.ml | 2 +- 3 files changed, 8 insertions(+), 13 deletions(-) diff --git a/infer/src/checkers/LithoDomain.ml b/infer/src/checkers/LithoDomain.ml index 8b46aacab..7f1a92f49 100644 --- a/infer/src/checkers/LithoDomain.ml +++ b/infer/src/checkers/LithoDomain.ml @@ -28,25 +28,21 @@ let suffixes = String.Set.of_list ["Attr"; "Dip"; "Px"; "Res"; "Sp"] module MethodCallPrefix = struct type t = - { (* TODO: We can remove the [receiver] field after we replace the old checker *) - receiver: LocalAccessPath.t [@compare.ignore] - ; prefix: string + { prefix: string ; procname: Typ.Procname.t [@compare.ignore] ; location: Location.t [@compare.ignore] } [@@deriving compare] - let make receiver procname location = + let make procname location = let method_name = Typ.Procname.get_method procname in let prefix_opt = String.Set.find_map suffixes ~f:(fun suffix -> String.chop_suffix method_name ~suffix) in let prefix = Option.value prefix_opt ~default:method_name in - {receiver; prefix; procname; location} + {prefix; procname; location} - let pp fmt {receiver; procname} = - F.fprintf fmt "%a.%a" LocalAccessPath.pp receiver Typ.Procname.pp procname - + let pp fmt {procname} = Typ.Procname.pp fmt procname let procname_to_string {procname} = Typ.Procname.get_method procname end diff --git a/infer/src/checkers/LithoDomain.mli b/infer/src/checkers/LithoDomain.mli index 1abb43da3..ba90d944c 100644 --- a/infer/src/checkers/LithoDomain.mli +++ b/infer/src/checkers/LithoDomain.mli @@ -18,12 +18,11 @@ end val suffixes : String.Set.t -(** Called procedure & location + its receiver *) +(** Called procedure & location *) module MethodCallPrefix : sig - type t = private - {receiver: LocalAccessPath.t; prefix: string; procname: Typ.Procname.t; location: Location.t} + type t = private {prefix: string; procname: Typ.Procname.t; location: Location.t} - val make : LocalAccessPath.t -> Typ.Procname.t -> Location.t -> t + val make : Typ.Procname.t -> Location.t -> t end module Mem : sig diff --git a/infer/src/checkers/LithoFramework.ml b/infer/src/checkers/LithoFramework.ml index bae2e745d..172c9cee6 100644 --- a/infer/src/checkers/LithoFramework.ml +++ b/infer/src/checkers/LithoFramework.ml @@ -135,7 +135,7 @@ struct if is_component_build_method callee_pname tenv then Domain.call_build_method ~ret:return_access_path ~receiver astate else if is_component_builder callee_pname tenv then - let callee_prefix = Domain.MethodCallPrefix.make receiver callee_pname location in + let callee_prefix = Domain.MethodCallPrefix.make callee_pname location in Domain.call_builder ~ret:return_access_path ~receiver callee_prefix astate else astate else