aboutsummaryrefslogtreecommitdiffstats
path: root/lib/kernel/Multigroup.ml
diff options
context:
space:
mode:
authorMarcos Magueta <maguetamarcos@gmail.com>2026-10-12 11:47:14 -0300
committerMarcos Magueta <maguetamarcos@gmail.com>2026-10-12 11:47:14 -0300
commita3acc318ead5620ac20f70815b4dfb0810ccd2a4 (patch)
treee1bf3b6331c07005a83650da36499a931dfeb24d /lib/kernel/Multigroup.ml
parentc66c3c82fda2f68e5aac62d16657d8a77e6d91ee (diff)
downloadRNT-a3acc318ead5620ac20f70815b4dfb0810ccd2a4.tar.gz
RNT-a3acc318ead5620ac20f70815b4dfb0810ccd2a4.zip
abstracting headers and merkle of list construction
Diffstat (limited to 'lib/kernel/Multigroup.ml')
-rw-r--r--lib/kernel/Multigroup.ml12
1 files changed, 3 insertions, 9 deletions
diff --git a/lib/kernel/Multigroup.ml b/lib/kernel/Multigroup.ml
index e6135c6..13ca7e0 100644
--- a/lib/kernel/Multigroup.ml
+++ b/lib/kernel/Multigroup.ml
@@ -116,15 +116,9 @@ module Make (S : Abstract.Storage.STORAGE) = struct
|> Utilities.List.sequence
let tree_of tx admissions =
- let open Utilities.Result in
- let* _ = T.empty_under tx in
- T.with_batch tx (fun () ->
- List.fold_left
- (fun node (name, store) ->
- let* node = node in
- let* addr = store tx in
- T.insert tx name addr node )
- (Ok T.empty) admissions )
+ List.map (fun (name, store) -> store tx |> Result.map (fun addr -> name, addr)) admissions
+ |> Utilities.List.sequence
+ |> Utilities.Result.fmap (T.of_list tx)
let admit_schema _ h =
let open Utilities.Result in