
This patch is co-authored with: cagdas.bozman@ocamlpro.com With this patch the economic protocol is now compiled as as "functor-pack", parameterized over the environment. This will ease the protocol reusability outside of the tezos source tree (e.g. for a michelson Web IDE) and will allow proper unit testing of the economic protocol. This functorization allows to break the dependency of the 'tezos-protocol-compiler' on various '.mli' of the node, and hence we don't need anymore the unusual compilation schema: a.mli -> b.mli -> b.ml -> a.ml where 'A' is linked after 'B' but 'a.mli' should still be compiled before 'b.mli'. This will simplify a switch to 'ocp-build' or 'jbuiler'.
26 lines
1011 B
OCaml
26 lines
1011 B
OCaml
(**************************************************************************)
|
|
(* *)
|
|
(* Copyright (c) 2014 - 2016. *)
|
|
(* Dynamic Ledger Solutions, Inc. <contact@tezos.com> *)
|
|
(* *)
|
|
(* All rights reserved. No warranty, explicit or implicit, provided. *)
|
|
(* *)
|
|
(**************************************************************************)
|
|
|
|
(** Low-level part of the [Updater]. *)
|
|
|
|
module Meta : sig
|
|
val to_file:
|
|
Lwt_io.file_name ->
|
|
?hash:Protocol_hash.t ->
|
|
?env_version:Protocol.env_version ->
|
|
string list -> unit
|
|
val of_file:
|
|
Lwt_io.file_name ->
|
|
Protocol_hash.t option * Protocol.env_version option * string list
|
|
end
|
|
|
|
val read_dir: Lwt_io.file_name -> Protocol_hash.t * Protocol.t
|
|
|
|
val main: unit -> unit
|