diff options
| author | Estevan Castilho <tevo@riajuu.net> | 2026-09-24 02:17:01 +0000 |
|---|---|---|
| committer | Estevan Castilho <tevo@riajuu.net> | 2026-09-24 02:17:01 +0000 |
| commit | 5a1088413468f171886d39339a8de96697af64c5 (patch) | |
| tree | 0aca7b8ff9e5a1c8e0a907102f31408689fd0a0f /lib/kernel/Path.ml | |
| parent | 2d7c5b7c6696f39028ab07064ff75548d71ee5cf (diff) | |
| download | RNT-5a1088413468f171886d39339a8de96697af64c5.tar.gz RNT-5a1088413468f171886d39339a8de96697af64c5.zip | |
Multigroup registration stub
Diffstat (limited to '')
| -rw-r--r-- | lib/kernel/Path.ml | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/kernel/Path.ml b/lib/kernel/Path.ml index 25ce09a..b83c9b2 100644 --- a/lib/kernel/Path.ml +++ b/lib/kernel/Path.ml @@ -23,13 +23,16 @@ let walking f g handle path = | x::xs -> let open Utilities.Result in let open Protocols in - let* dir = Handle.require Directory.from handle in + let* dir = + Handle.require Directory.from handle + |> Result.map_error Concepts.Condition.(complement ("before-segment" |=| Concepts.Value.String x)) in let* elem = Directory.find dir x in match elem with | None -> Error (Error.path_not_found path) | Some elem -> f x handle (fun () -> walk elem xs) in walk handle path + |> Result.map_error Concepts.Condition.(complement ("path" |=| Concepts.Value.String (to_string path))) let lookup = walking (fun _ _ f -> f ()) Result.ok |
