ligo/lib_node_services/RPC.mli

36 lines
1.5 KiB
OCaml
Raw Normal View History

2016-09-08 21:13:10 +04:00
(**************************************************************************)
(* *)
2017-11-14 03:36:14 +04:00
(* Copyright (c) 2014 - 2017. *)
2016-09-08 21:13:10 +04:00
(* Dynamic Ledger Solutions, Inc. <contact@tezos.com> *)
(* *)
(* All rights reserved. No warranty, explicit or implicit, provided. *)
(* *)
(**************************************************************************)
(** Typed RPC services: definition, binding and dispatch. *)
2016-09-08 21:13:10 +04:00
module Data : Resto.ENCODING with type 'a t = 'a Data_encoding.t
and type schema = Data_encoding.json_schema
2016-09-08 21:13:10 +04:00
include (module type of struct include Resto end)
module Service : (module type of struct include Resto.MakeService(Data) end)
2016-09-08 21:13:10 +04:00
(** Compatibility layer, to be removed ASAP. *)
2016-09-08 21:13:10 +04:00
type ('prefix, 'params, 'input, 'output) service =
([ `POST ], 'prefix, 'params, unit, 'input, 'output, unit) Service.t
2016-09-08 21:13:10 +04:00
val service:
?description: string ->
input: 'input Data_encoding.t ->
output: 'output Data_encoding.t ->
('prefix, 'params) Path.t ->
('prefix, 'params, 'input, 'output) service
type directory_descr = Data_encoding.json_schema Description.directory
2016-09-08 21:13:10 +04:00
val forge_request:
(unit, 'params, 'input, _) service ->
'params -> 'input -> MethMap.key * string list * Data_encoding.json
2016-09-08 21:13:10 +04:00