package ocaml_openapi_generator
An OpenAPI 3 to OCaml client generator.
Install
Dune Dependency
Authors
Maintainers
Sources
v0.17.0.tar.gz
sha256=a5018999737b39c7d83a597bbf4c3ae0fc6899f3553e809d1abcb96bf2211d6e
doc/src/ocaml_openapi_generator.openapi_spec/utils.ml.html
Source file utils.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 49 50 51 52 53 54
open! Core open! Async open Types let rec resolve_reference : type a. components:Components.t -> resolver:(Components.t -> a Or_reference.t String.Map.t) -> a Or_reference.t -> a option = fun ~components ~resolver ref_ -> match ref_ with | Ref ref_ -> let reference = Reference.ref_ ref_ in let%bind.Option last_segment = Reference.last_segment reference in let component_map = resolver components in Map.find component_map last_segment |> Option.bind ~f:(resolve_reference ~components ~resolver) | Value v -> Some v ;; let resolve_reference_exn ~components ~resolver ref_ = resolve_reference ~components ~resolver ref_ |> Option.value_exn ;; (* Convenience wrapper functions around resolve_reference... *) let resolve_schema_ref ~components = resolve_reference ~components ~resolver:Components.schemas ;; let resolve_response_ref ~components = resolve_reference ~components ~resolver:Components.responses ;; let resolve_request_body_ref ~components = resolve_reference ~components ~resolver:Components.request_bodies ;; let resolve_parameter_ref ~components = resolve_reference ~components ~resolver:Components.parameters ;; (* Convenience functions for lists... *) let resolve_all_parameters ~components parameters = List.map parameters ~f:(fun parameter_or_ref -> let parameter = resolve_parameter_ref ~components parameter_or_ref |> Option.value_exn in Parameter.Parameter_data.name (Parameter.data parameter), parameter) |> Hashtbl.of_alist_exn (module String) ;;
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>