From 13b797f68a3d3a517e80142ac1542b874914dd12 Mon Sep 17 00:00:00 2001 From: swrup Date: Sat, 18 Oct 2025 20:04:32 +0200 Subject: [PATCH] add Json.FutureDenom --- src/json.ml | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/src/json.ml b/src/json.ml index 5236c36b..97a965a1 100644 --- a/src/json.ml +++ b/src/json.ml @@ -141,3 +141,54 @@ module FutureSignKey = struct |> mem "signkey_secmod_sig" EddsaSignature.jsont ~enc:signkey_secmod_sig |> finish end + +module FutureDenom = struct + open FutureDenom + + let jsont = + let make section_name value stamp_start stamp_expire_withdraw + stamp_expire_deposit stamp_expire_legal denom_pub fee_withdraw + fee_deposit fee_refresh fee_refund denom_secmod_sig = + { + section_name; + value; + stamp_start; + stamp_expire_withdraw; + stamp_expire_deposit; + stamp_expire_legal; + denom_pub; + fee_withdraw; + fee_deposit; + fee_refresh; + fee_refund; + denom_secmod_sig; + } + in + let section_name t = t.section_name in + let value t = t.value in + let stamp_start t = t.stamp_start in + let stamp_expire_withdraw t = t.stamp_expire_withdraw in + let stamp_expire_deposit t = t.stamp_expire_deposit in + let stamp_expire_legal t = t.stamp_expire_legal in + let denom_pub t = t.denom_pub in + let fee_withdraw t = t.fee_withdraw in + let fee_deposit t = t.fee_deposit in + let fee_refresh t = t.fee_refresh in + let fee_refund t = t.fee_refund in + let denom_secmod_sig t = t.denom_secmod_sig in + let open Jsont.Object in + map ~kind:"FutureDenom" make + |> mem "section_name" Jsont.string ~enc:section_name + |> mem "value" Amount.jsont ~enc:value + |> mem "stamp_start" Timestamp.jsont ~enc:stamp_start + |> mem "stamp_expire_withdraw" Timestamp.jsont ~enc:stamp_expire_withdraw + |> mem "stamp_expire_deposit" Timestamp.jsont ~enc:stamp_expire_deposit + |> mem "stamp_expire_legal" Timestamp.jsont ~enc:stamp_expire_legal + |> mem "denom_pub" DenominationKey.jsont ~enc:denom_pub + |> mem "fee_withdraw" Amount.jsont ~enc:fee_withdraw + |> mem "fee_deposit" Amount.jsont ~enc:fee_deposit + |> mem "fee_refresh" Amount.jsont ~enc:fee_refresh + |> mem "fee_refund" Amount.jsont ~enc:fee_refund + |> mem "denom_secmod_sig" EddsaSignature.jsont ~enc:denom_secmod_sig + |> finish +end