package dune-rpc
Communicate with dune using rpc
Install
Dune Dependency
Authors
Maintainers
Sources
dune-3.8.0.tbz
sha256=f7e2970bfab99c7766ff1a05deff5ad7f82cb2471abca6f72449572293f5f6b4
sha512=3b3a566f63842c314de2c0a660c5f7714bc90f8303c82d82e3021aee84980eff1886d15c9b9d4ea0047a411d799fb39d5f2ea70a92bdeb629e00d3d5d5f2d994
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)"
>