@@ -754,11 +754,11 @@ module Domain = struct
754754 try
755755 Result. return
756756 @@ Map. merge x y ~f: (fun ~key :_ -> function
757- | `Left v | `Right v -> Some v
758- | `Both (x , y ) -> (
759- match join x y with
760- | Error conflict -> raise @@ Join. Conflict conflict
761- | Ok z -> Some z))
757+ | `Left v | `Right v -> Some v
758+ | `Both (x , y ) -> (
759+ match join x y with
760+ | Error conflict -> raise @@ Join. Conflict conflict
761+ | Ok z -> Some z))
762762 with Join. Conflict err -> Error err
763763 in
764764 let inspect xs =
@@ -767,9 +767,9 @@ module Domain = struct
767767 let order x y =
768768 Map. symmetric_diff x y ~data_equal: equal
769769 |> Sequence. fold ~init: (0 , 0 , 0 ) ~f: (fun (l , m , r ) -> function
770- | _ , `Left _ -> (l + 1 , m, r)
771- | _ , `Right _ -> (l, m, r + 1 )
772- | _ , `Unequal _ -> (l, m + 1 , r))
770+ | _ , `Left _ -> (l + 1 , m, r)
771+ | _ , `Right _ -> (l, m, r + 1 )
772+ | _ , `Unequal _ -> (l, m + 1 , r))
773773 |> function
774774 | 0 , 0 , 0 -> Order. EQ
775775 | 0 , 0 , _ -> LT
@@ -1077,9 +1077,8 @@ module Documentation = struct
10771077 let classes () =
10781078 Hashtbl. to_alist Registry. public
10791079 |> List. map ~f: (fun (cls , slots ) ->
1080- ( (cls, Registry. (find classes) cls),
1081- List. map slots ~f: (fun slot -> (slot, Registry. (find slots) slot))
1082- ))
1080+ ( (cls, Registry. (find classes) cls),
1081+ List. map slots ~f: (fun slot -> (slot, Registry. (find slots) slot)) ))
10831082
10841083 let rules () = Hash_set. to_list Registry. rules
10851084end
@@ -2882,22 +2881,22 @@ module Knowledge = struct
28822881 fun cls ->
28832882 Oid.Tree. to_sequence cls.vals
28842883 |> Knowledge.Seq. fold ~init: cls ~f: (fun cls (obj , (info : Env.info )) ->
2885- match info.name with
2886- | None -> Knowledge. return cls
2887- | Some sym ->
2888- if not (needs_import cls sym obj) then Knowledge. return cls
2889- else
2890- let obj' =
2891- match Map. find cls.objs { package; name = sym.name } with
2892- | None -> Oid. zero
2893- | Some obj' -> obj'
2894- in
2895- if (not strict) || Oid. (obj' = zero || obj' = obj) then
2896- intern_symbol sym obj cls
2897- else
2898- let info = Oid.Tree. find_exn cls.vals obj' in
2899- let sym' = Option. value_exn info.name in
2900- Knowledge. fail (Import (sym, sym')))
2884+ match info.name with
2885+ | None -> Knowledge. return cls
2886+ | Some sym ->
2887+ if not (needs_import cls sym obj) then Knowledge. return cls
2888+ else
2889+ let obj' =
2890+ match Map. find cls.objs { package; name = sym.name } with
2891+ | None -> Oid. zero
2892+ | Some obj' -> obj'
2893+ in
2894+ if (not strict) || Oid. (obj' = zero || obj' = obj) then
2895+ intern_symbol sym obj cls
2896+ else
2897+ let info = Oid.Tree. find_exn cls.vals obj' in
2898+ let sym' = Option. value_exn info.name in
2899+ Knowledge. fail (Import (sym, sym')))
29012900
29022901 let package_exists package =
29032902 Map. exists ~f: (fun { Env. objs } ->
@@ -3021,7 +3020,7 @@ module Knowledge = struct
30213020 fun cls obj ->
30223021 Slot. enum cls
30233022 |> Base.List. filter ~f: (function Slot. Pack { promises } ->
3024- not (Hashtbl. is_empty promises))
3023+ not (Hashtbl. is_empty promises))
30253024 |> List. iter ~f: (fun (Slot. Pack s ) -> ignore_m @@ collect s obj)
30263025
30273026 let get_value cls obj =
@@ -3154,15 +3153,15 @@ module Knowledge = struct
31543153 let payload =
31553154 Map. to_alist classes
31563155 |> List. map ~f: (fun (cid , { Env. vals; last } ) ->
3157- let data =
3158- Oid.Tree. to_list vals
3159- |> List. filter_map ~f: (fun (oid , { Env. data; name; comp } ) ->
3160- let data = serialize_record data in
3161- let comp = Map. keys comp in
3162- if Array. is_empty data && Option. is_none name then None
3163- else Some { key = oid; sym = name; data; comp })
3164- in
3165- (cid, (last, data)))
3156+ let data =
3157+ Oid.Tree. to_list vals
3158+ |> List. filter_map ~f: (fun (oid , { Env. data; name; comp } ) ->
3159+ let data = serialize_record data in
3160+ let comp = Map. keys comp in
3161+ if Array. is_empty data && Option. is_none name then None
3162+ else Some { key = oid; sym = name; data; comp })
3163+ in
3164+ (cid, (last, data)))
31663165 in
31673166 { version = V2 ; payload }
31683167
0 commit comments