sig
  type proxy_name = [ `Ice_Object ]
  and pr_Ice_Object = [ `Ice_Object ] Hydro_lm.proxy_reference
  val ofpr_Ice_Object :
    Hydro_lm_IceObject.pr_Ice_Object option -> Hydro_types.value
  val topr_Ice_Object :
    Hydro_types.value -> Hydro_lm_IceObject.pr_Ice_Object option
  class type r_Ice_Object_ice_ping =
    object
      method hydro_response : Hydro_lm.client_response
      method result : unit
    end
  val to_r_Ice_Object_ice_ping :
    Hydro_lm.client_response -> Hydro_lm_IceObject.r_Ice_Object_ice_ping
  class type poi_Ice_Object =
    object
      method ice_ping :
        unit ->
        Hydro_lm_IceObject.r_Ice_Object_ice_ping Hydro_lm.call_suspension_t
    end
  class type po_Ice_Object =
    object
      method hydro_env : Hydro_proxy.proxy_env_t
      method hydro_facet : string option
      method hydro_id : Hydro_types.identity
      method hydro_proxy_conf : Hydro_proxy.proxy_conf_t
      method hydro_proxy_reference : Hydro_lm_IceObject.pr_Ice_Object
      method hydro_reset : unit -> unit
      method hydro_set_proxy_conf : Hydro_proxy.proxy_conf_t -> unit
      method hydro_shutdown : unit -> unit
      method hydro_twoway_call :
        Hydro_types.hintf ->
        string ->
        Hydro_types.value array ->
        Hydro_types.call_params ->
        (Hydro_endpoint.Client.response -> unit) -> unit
      method ice_ping :
        unit -> r_Ice_Object_ice_ping Hydro_lm.call_suspension_t
    end
  class pci_Ice_Object : Hydro_proxy.proxy_t -> poi_Ice_Object
  val pc_Ice_Object :
    Hydro_proxy.proxy_env_t ->
    Hydro_lm_IceObject.pr_Ice_Object -> Hydro_lm_IceObject.po_Ice_Object
  val unchecked_pr_Ice_Object :
    'Hydro_lm.proxy_reference -> Hydro_lm_IceObject.pr_Ice_Object
  type or_Ice_Object
  class type od_Ice_Object = object method facets : unit Pervasives.ref end
  class type o_Ice_Object =
    object
      method facets : unit ref
      method hydro_effective_id : string
      method hydro_inflate : string -> Hydro_types.noreturn
      method hydro_slices : Hydro_types.slice list
    end
  exception O_Ice_Object of Hydro_lm_IceObject.o_Ice_Object
  val as_Ice_Object :
    #Hydro_lm.object_base -> Hydro_lm_IceObject.o_Ice_Object
  val wrap_Ice_Object :
    Hydro_lm_IceObject.o_Ice_Object -> Hydro_lm_IceObject.or_Ice_Object
  val unwrap_Ice_Object :
    Hydro_lm_IceObject.or_Ice_Object -> Hydro_lm_IceObject.o_Ice_Object
  val ofor_Ice_Object : Hydro_lm_IceObject.or_Ice_Object -> Hydro_types.value
  val toor_Ice_Object : Hydro_types.value -> Hydro_lm_IceObject.or_Ice_Object
  class delegate_od_Ice_Object :
    #Hydro_lm_IceObject.od_Ice_Object -> od_Ice_Object
  val dec_Ice_Object :
    Hydro_types.slice list -> unit * Hydro_types.slice list
  val enc_Ice_Object :
    #Hydro_lm_IceObject.od_Ice_Object -> Hydro_types.slice list
  class mk_od_Ice_Object : unit -> od_Ice_Object
  class sliced_od_Ice_Object :
    #Hydro_lm_IceObject.od_Ice_Object -> Hydro_lm.sliced_base
  class mk_Ice_Object : #Hydro_lm_IceObject.od_Ice_Object -> o_Ice_Object
  class restore_Ice_Object : Hydro_types.sliced_value -> o_Ice_Object
  val defterm_Ice_Object : Hydro_types.hintf Lazy.t
  val class_defterm_Ice_Object : Hydro_types.hclass Lazy.t
  val fill_system : Hydro_types.system -> unit
end