package ezresto

  1. Overview
  2. Docs
A minimal OCaml library for type-safe HTTP/JSON RPCs

Install

Dune Dependency

Authors

Maintainers

Sources

resto-v0.4.tar.gz
md5=441e7916b7f5e2952ede014e283a5dee
sha512=35dc4be2ae98947a82059b112678d44b1c97a69c16ed1b923b5775f6c49cda31642f292fcf7d317a9e654c74f084fa54e80845739521fec8e1987febc67036ad

doc/ezresto/EzResto/index.html

Module EzRestoSource

Sourcetype meth = [
  1. | `GET
  2. | `POST
  3. | `DELETE
  4. | `PUT
  5. | `PATCH
]
Sourcemodule Arg : sig ... end

Typed path argument.

Sourcemodule Path : sig ... end

Parametrized path to services.

Sourcemodule Query : sig ... end
Sourcetype ('meth, 'params, 'query, 'input, 'output, 'error) service = ('meth, unit, 'params, 'query, 'input, 'output, 'error) Resto.MakeService(Resto_json.Encoding).service

Services.

Sourceval get_service : ?description:string -> query:'query Query.t -> output:'output Json_encoding.encoding -> error:'error Json_encoding.encoding -> 'params Path.t -> ([ `GET ], 'params, 'query, unit, 'output, 'error) service
Sourceval post_service : ?description:string -> query:'query Query.t -> input:'input Json_encoding.encoding -> output:'output Json_encoding.encoding -> error:'error Json_encoding.encoding -> 'params Path.t -> ([ `POST ], 'params, 'query, 'input, 'output, 'error) service
Sourceval delete_service : ?description:string -> query:'query Query.t -> output:'output Json_encoding.encoding -> error:'error Json_encoding.encoding -> 'params Path.t -> ([ `DELETE ], 'params, 'query, unit, 'output, 'error) service
Sourceval put_service : ?description:string -> query:'query Query.t -> input:'input Json_encoding.encoding -> output:'output Json_encoding.encoding -> error:'error Json_encoding.encoding -> 'params Path.t -> ([ `PUT ], 'params, 'query, 'input, 'output, 'error) service
Sourceval patch_service : ?description:string -> query:'query Query.t -> input:'input Json_encoding.encoding -> output:'output Json_encoding.encoding -> error:'error Json_encoding.encoding -> 'params Path.t -> ([ `PATCH ], 'params, 'query, 'input, 'output, 'error) service
Sourcetype 'input input =
  1. | No_input : unit input
  2. | Input : 'input Json_encoding.encoding -> 'input input
Sourcetype 'input request = {
  1. meth : meth;
  2. uri : Uri.t;
  3. input : 'input input;
}
Sourceval forge_request : ('meth, 'params, 'query, 'input, 'output, 'error) service -> ?base:Uri.t -> 'params -> 'query -> 'input request
Sourceval query : ('meth, 'params, 'query, 'input, 'output, 'error) service -> 'query Query.t
Sourceval input_encoding : ('meth, 'params, 'query, 'input, 'output, 'error) service -> 'input input
Sourceval output_encoding : ('meth, 'params, 'query, 'input, 'output, 'error) service -> 'output Json_encoding.encoding
Sourceval error_encoding : ('meth, 'params, 'query, 'input, 'output, 'error) service -> 'error Json_encoding.encoding
Sourcemodule Description = Resto.Description
Sourcetype description_service = ([ `GET ], unit * string list, Description.request, unit, Json_schema.schema Description.directory, unit) service
Sourceval description_service : ?description:string -> unit Path.path -> description_service
OCaml

Innovation. Community. Security.