diff options
| author | Marcos Magueta <maguetamarcos@gmail.com> | 2026-09-13 14:27:37 -0300 |
|---|---|---|
| committer | Marcos Magueta <maguetamarcos@gmail.com> | 2026-09-13 14:27:37 -0300 |
| commit | ca8c92915bd3a7fa19ef57b8bd5a9b3f16d05254 (patch) | |
| tree | 630de49e86dfc3a87b4e5187f022b7183cbe7e4a /lib/kernel/Initialization.ml | |
| parent | 9b9eab0bb54ed951c56eb6551d9ee470dc5b43aa (diff) | |
| download | RNT-ca8c92915bd3a7fa19ef57b8bd5a9b3f16d05254.tar.gz RNT-ca8c92915bd3a7fa19ef57b8bd5a9b3f16d05254.zip | |
fol evaluator
Diffstat (limited to 'lib/kernel/Initialization.ml')
| -rw-r--r-- | lib/kernel/Initialization.ml | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/kernel/Initialization.ml b/lib/kernel/Initialization.ml index d213b66..ae041fc 100644 --- a/lib/kernel/Initialization.ml +++ b/lib/kernel/Initialization.ml @@ -1,12 +1,22 @@ module Make (S : Abstract.Storage.STORAGE) = struct module BM = BranchManager.Make (S) - let initialize conn = + let initialize ?(evaluators = []) conn = let open Utilities.Result in let open Protocols in let root = Namespace.make () in let registry = Registry.from root |> Option.get in let* branch_manager = BM.make conn "rnt-head" in let* _ = Registry.update registry "branch" None (Some branch_manager) in + let evaluator_namespace = Namespace.make () in + let evaluator_registry = Registry.from evaluator_namespace |> Option.get in + let* _ = + List.fold_left + (fun acc (name, handle) -> + let* _ = acc in + Registry.update evaluator_registry name None (Some handle)) + (Ok true) evaluators + in + let* _ = Registry.update registry "evaluator" None (Some evaluator_namespace) in Ok root end |
