package sihl

  1. Overview
  2. Docs
The modular functional web framework

Install

Dune Dependency

Authors

Maintainers

Sources

sihl-queue-0.1.7.tbz
sha256=a432c28b88610b8ef914aa93d1be5bf3ad4b357ebaa8e95848e981ea30611cd4
sha512=e85a2c2935973826ef29191d6a784dca53660c8df55a98174d7326a8a73865cf7f35bfae034b179d85f30bb809985da3c6d170608da2e9ac9763b8fd1f8a1a4e

doc/sihl.core/Sihl_core/App/index.html

Module Sihl_core.AppSource

A module to create Sihl apps.

Sourcetype t

An app is a thin convenience layer on top of the service container. It provides hooks that are executed at different stages in the app lifecycle.

Sourceval empty : t

empty returns an app without any services.

Sourceval with_services : Container.Service.t list -> t -> t

with_services services app adds services to an app.

Sourceval before_start : (Ctx.t -> unit Lwt.t) -> t -> t

before_start f app registers a callback f with app. The callback is executed before any service is started. This means you must not use any services here!

Sourceval after_start : (Ctx.t -> unit Lwt.t) -> t -> t

after_start f app registers a callback f with app. The callback is executed after all services are started. You can safely use services here.

Sourceval before_stop : (Ctx.t -> unit Lwt.t) -> t -> t

before_stop f app registers a callback f with app. The callback is executed before all services are stopped. You can safely use services here.

Sourceval after_stop : (Ctx.t -> unit Lwt.t) -> t -> t

after_stop f app registers a callback f with app. The callback is executed before after services are stopped. This means you must not use any services here!

Sourceval run : ?commands:Command.t list -> ?log_reporter:(unit -> Logs.reporter) -> ?args:string list -> t -> unit

run ?commands ?log_reporter app is the main entry point to a Sihl app and starts the command line interface with commands merged with the commands provided by services.

An optional log_reporter can be provided to change the logging behavior. The default log reporter logs to stdout.

Sourceval run' : ?commands:Command.t list -> ?log_reporter:(unit -> Logs.reporter) -> ?args:string list -> t -> unit Lwt.t

run' ?commands ?log_reporter app is analogous to run. It is a helper to be used in tests that need Lwt.t.

OCaml

Innovation. Community. Security.