package dune-rpc
Communicate with dune using rpc
Install
Dune Dependency
Authors
Maintainers
Sources
dune-3.8.2.tbz
sha256=5a6ec790128616b6b46616427fa9c8f2ba0d6ef5a405bf8fdbc6f82dc0d935fd
sha512=d0298138e46d1a3eb9b46ed369314259e1b3611f377b7562ac50353cdb9d480c2487810ade65e1f3ccc6df00bd8e43bfd3c2664d0c3c59cb13abd091be87324d
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)"
>