package dune-rpc
Communicate with dune using rpc
Install
Dune Dependency
Authors
Maintainers
Sources
dune-3.7.0.tbz
sha256=e2d637c9d080318fedf5e71d2a29fb367624f82ac4a26e83df2b3a03550528b8
sha512=586e47ee45cd53a8c13095bde0b47de99aad9462d0a52199362140b5b654ca862597fa9f27f729a8cc594684ac46858848f9fa76f8f06dc8dc8ab8b1186a3295
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)"
>