package dune-rpc
Communicate with dune using rpc
Install
Dune Dependency
Authors
Maintainers
Sources
dune-3.9.3.tbz
sha256=96bf755da267fb46e4af2dda0db56d5863761589618089c429ff85e0f7f65783
sha512=ce05560a2cff0beb805a259df449b5dbd15420e353cc686a482904b837969bce6f91eedec608ecef4be0ebc232fa013652745a7cc831af1a7f8fe06a391e5488
doc/src/dune-rpc.private/menu.ml.html
Source file menu.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
open Import open Types (* This list of methods and generations is exactly the list of existing methods as of commit [3cd240e], which the initial versioning implementation was based on. *) let = Method.Name.Map.of_list_exn [ ("ping", 1) ; ("diagnostics", 1) ; ("shutdown", 1) ; ("subscribe", 1) ; ("unsubscribe", 1) ; ("build", 1) ; ("status", 1) ; ("notify/abort", 1) ; ("notify/diagnostic", 1) ; ("notify/log", 1) ; ("notify/progress", 1) ] type t = Method.Version.t Method.Name.Map.t let default = compatibility_menu let find = Method.Name.Map.find let select_common ~local_versions ~remote_versions = let selected_versions = List.filter_map remote_versions ~f:(fun (method_, remote_versions) -> let remote_versions = Method.Version.Set.of_list remote_versions in let open Option.O in let* local_versions = Method.Name.Map.find local_versions method_ in let+ greatest_common_version = Method.Version.Set.max_elt (Method.Version.Set.inter remote_versions local_versions) in (method_, greatest_common_version)) in match selected_versions with | [] -> None | _ :: _ -> Some (Method.Name.Map.of_list_exn selected_versions) let of_list = Method.Name.Map.of_list let to_list = Method.Name.Map.to_list let to_dyn = Method.Name.Map.to_dyn Int.to_dyn
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>