Single.Spec
module Stable : sig ... end
type ('witness, 'ledger_proof) t = ( 'witness, 'ledger_proof ) Stable.Latest.t =
| Transition of Transaction_snark.Statement.t * 'witness |
| Merge of Transaction_snark.Statement.t * 'ledger_proof * 'ledger_proof |
val to_yojson :
'witness 'ledger_proof. ( 'witness -> Yojson.Safe.t ) ->
( 'ledger_proof -> Yojson.Safe.t ) ->
( 'witness, 'ledger_proof ) t ->
Yojson.Safe.t
val _ :
( 'a -> Yojson.Safe.t ) ->
( 'b -> Yojson.Safe.t ) ->
( 'a, 'b ) t ->
Yojson.Safe.t
val t_of_sexp :
'witness 'ledger_proof. ( Ppx_sexp_conv_lib.Sexp.t -> 'witness ) ->
( Ppx_sexp_conv_lib.Sexp.t -> 'ledger_proof ) ->
Ppx_sexp_conv_lib.Sexp.t ->
( 'witness, 'ledger_proof ) t
val sexp_of_t :
'witness 'ledger_proof. ( 'witness -> Ppx_sexp_conv_lib.Sexp.t ) ->
( 'ledger_proof -> Ppx_sexp_conv_lib.Sexp.t ) ->
( 'witness, 'ledger_proof ) t ->
Ppx_sexp_conv_lib.Sexp.t
val witness : ( 'a, 'b ) t -> 'c option
val statement : ( 'a, 'b ) t -> Transaction_snark.Statement.t
val gen :
'witness Core_kernel.Quickcheck.Generator.t ->
'ledger_proof Core_kernel.Quickcheck.Generator.t ->
( 'witness, 'ledger_proof ) t Core_kernel.Quickcheck.Generator.t