sig   type 'a t   type in_key = private InCtrl | InNum of int | InImpl of Locations.Zone.t   type out_key = private OutRet | OutLoc of Locations.Zone.t   type key = private       In of PdgIndex.Signature.in_key     | Out of PdgIndex.Signature.out_key   val empty : 'a PdgIndex.Signature.t   val mk_undef_in_key : Locations.Zone.t -> PdgIndex.Signature.in_key   val cmp_in_key :     PdgIndex.Signature.in_key -> PdgIndex.Signature.in_key -> int   val cmp_out_key :     PdgIndex.Signature.out_key -> PdgIndex.Signature.out_key -> int   val equal_out_key :     PdgIndex.Signature.out_key -> PdgIndex.Signature.out_key -> bool   val find_info : 'a PdgIndex.Signature.t -> PdgIndex.Signature.key -> 'a   val find_input : 'a PdgIndex.Signature.t -> int -> 'a   val find_in_ctrl : 'info PdgIndex.Signature.t -> 'info   val find_in_top : 'info PdgIndex.Signature.t -> 'info   val find_in_info :     'info PdgIndex.Signature.t -> PdgIndex.Signature.in_key -> 'info   val find_out_ret : 'a PdgIndex.Signature.t -> 'a   val find_out_info :     'info PdgIndex.Signature.t -> PdgIndex.Signature.out_key -> 'info   val fold :     ('a -> PdgIndex.Signature.key * 'b -> 'a) ->     'a -> 'b PdgIndex.Signature.t -> 'a   val fold_num_inputs :     ('a -> int * 'b -> 'a) -> 'a -> 'b PdgIndex.Signature.t -> 'a   val fold_impl_inputs :     ('a -> Locations.Zone.t * 'b -> 'a) ->     'a -> 'b PdgIndex.Signature.t -> 'a   val fold_matching_impl_inputs :     Locations.Zone.t ->     ('a -> Locations.Zone.t * 'b -> 'a) ->     'a -> 'b PdgIndex.Signature.t -> 'a   val fold_all_inputs :     ('a -> PdgIndex.Signature.in_key * 'b -> 'a) ->     'a -> 'b PdgIndex.Signature.t -> 'a   val fold_all_outputs :     ('a -> PdgIndex.Signature.out_key * 'b -> 'a) ->     'a -> 'b PdgIndex.Signature.t -> 'a   val pretty :     (Format.formatter -> 'a -> unit) ->     Format.formatter -> 'a PdgIndex.Signature.t -> unit   val pretty_key : Format.formatter -> PdgIndex.Signature.key -> unit   val pretty_in_key : Format.formatter -> PdgIndex.Signature.in_key -> unit   val pretty_out_key : Format.formatter -> PdgIndex.Signature.out_key -> unit end