environment_V0.mli
(*****************************************************************************)
(* *)
(* Open Source License *)
(* Copyright (c) 2018 Dynamic Ledger Solutions, Inc. <contact@tezos.com> *)
(* Copyright (c) 2018 Nomadic Labs. <contact@nomadic-labs.com> *)
(* *)
(* Permission is hereby granted, free of charge, to any person obtaining a *)
(* copy of this software and associated documentation files (the "Software"),*)
(* to deal in the Software without restriction, including without limitation *)
(* the rights to use, copy, modify, merge, publish, distribute, sublicense, *)
(* and/or sell copies of the Software, and to permit persons to whom the *)
(* Software is furnished to do so, subject to the following conditions: *)
(* *)
(* The above copyright notice and this permission notice shall be included *)
(* in all copies or substantial portions of the Software. *)
(* *)
(* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR*)
(* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, *)
(* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL *)
(* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER*)
(* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING *)
(* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER *)
(* DEALINGS IN THE SOFTWARE. *)
(* *)
(*****************************************************************************)
open Environment_context
open Environment_protocol_T
module type T = sig
include
Tezos_protocol_environment_sigs.V0.T
with type Format.formatter = Format.formatter
and type 'a Data_encoding.t = 'a Data_encoding.t
and type 'a Data_encoding.lazy_t = 'a Data_encoding.lazy_t
and type 'a Lwt.t = 'a Lwt.t
and type ('a, 'b) Pervasives.result = ('a, 'b) result
and type Chain_id.t = Tezos_crypto.Hashed.Chain_id.t
and type Block_hash.t = Tezos_crypto.Hashed.Block_hash.t
and type Operation_hash.t = Tezos_crypto.Hashed.Operation_hash.t
and type Operation_list_hash.t =
Tezos_crypto.Hashed.Operation_list_hash.t
and type Operation_list_list_hash.t =
Tezos_crypto.Hashed.Operation_list_list_hash.t
and type Context.t = Context.t
and type Context_hash.t = Tezos_crypto.Hashed.Context_hash.t
and type Protocol_hash.t = Tezos_crypto.Hashed.Protocol_hash.t
and type Time.t = Time.Protocol.t
and type MBytes.t = Tezos_protocol_environment_structs.V0.MBytes.t
and type Operation.shell_header = Operation.shell_header
and type Operation.t = Operation.t
and type Block_header.shell_header = Block_header.shell_header
and type Block_header.t = Block_header.t
and type 'a RPC_directory.t = 'a Tezos_rpc.Directory.t
and type Ed25519.Public_key_hash.t = Signature.Ed25519.Public_key_hash.t
and type Ed25519.Public_key.t = Signature.Ed25519.Public_key.t
and type Ed25519.t = Signature.Ed25519.t
and type Secp256k1.Public_key_hash.t =
Signature.Secp256k1.Public_key_hash.t
and type Secp256k1.Public_key.t = Signature.Secp256k1.Public_key.t
and type Secp256k1.t = Signature.Secp256k1.t
and type P256.Public_key_hash.t = Signature.P256.Public_key_hash.t
and type P256.Public_key.t = Signature.P256.Public_key.t
and type P256.t = Signature.P256.t
and type Signature.public_key_hash = Signature.V0.public_key_hash
and type Signature.public_key = Signature.V0.public_key
and type Signature.t = Signature.V0.t
and type Signature.watermark = Signature.V0.watermark
and type 'a Micheline.canonical = 'a Micheline.canonical
and type Z.t = Z.t
and type ('a, 'b) Micheline.node = ('a, 'b) Micheline.node
and type Data_encoding.json_schema = Data_encoding.json_schema
and type ('a, 'b) RPC_path.t = ('a, 'b) Tezos_rpc.Path.t
and type RPC_service.meth = Tezos_rpc.Service.meth
and type (+'m, 'pr, 'p, 'q, 'i, 'o) RPC_service.t =
('m, 'pr, 'p, 'q, 'i, 'o) Tezos_rpc.Service.t
and type Error_monad.shell_error = Error_monad.error
type error += Ecoproto_error of Error_monad.error
val wrap_error : 'a Error_monad.tzresult -> 'a tzresult
module Lift (P : Updater.PROTOCOL) :
PROTOCOL
with type block_header_data = P.block_header_data
and type block_header_metadata = P.block_header_metadata
and type block_header = P.block_header
and type operation_data = P.operation_data
and type operation_receipt = P.operation_receipt
and type operation = P.operation
and type validation_state = P.validation_state
class ['chain, 'block] proto_rpc_context :
Tezos_rpc.Context.t
-> (unit, (unit * 'chain) * 'block) RPC_path.t
-> ['chain * 'block] RPC_context.simple
class ['block] proto_rpc_context_of_directory :
('block -> RPC_context.t)
-> RPC_context.t RPC_directory.t
-> ['block] RPC_context.simple
end
module Make (Param : sig
val name : string
end)
() :
T with type Updater.quota = quota and type Updater.rpc_context = rpc_context