package chatoyant

  1. Overview
  2. Docs
OCaml-first LLM SDK with Melange-generated JavaScript

Install

dune-project
 Dependency

Authors

Maintainers

Sources

chatoyant-v0.12.4.tbz
sha256=fbf19dea0d39482e0263812504d94c682a9f3a6e93f68fe0c57b2d38ed4166b3
sha512=4e01be9c0ec9c16880f98360dec4ef5e0dddd9192e2113991b154e891b3bdaefb614051c2cb63afa0b714efa0e4cc4fd8054528fdc1995f3a4858fe2fcd50256

doc/chatoyant.native/Chatoyant_native/Websocket/index.html

Module Chatoyant_native.WebsocketSource

Sourcetype message =
  1. | Text of string
  2. | Binary of string
Sourcetype close = {
  1. code : int;
  2. reason : string;
}
Sourcetype request = {
  1. url : string;
  2. headers : (string * string) list;
  3. protocols : string list;
  4. timeout_ms : int option;
}
Sourcetype error =
  1. | Timeout of int
  2. | Network of string
  3. | Invalid_response of string
  4. | Closed of close option
Sourcetype connection
Sourceval error_to_string : error -> string
Sourcemodule type EFFECT = Chatoyant_runtime.Effect.WEBSOCKET with type message = message and type close = close and type request = request and type error = error
Sourceval make : ?https:Http.https -> ?max_frame_size:int -> net:_ Eio.Net.t -> clock:_ Eio.Time.clock -> unit -> (module EFFECT)

Eio WebSocket effect with RFC 6455 handshake validation, masked client frames, close/ping/pong handling, and scoped connection resources.

Sourceval with_connection : ?https:Http.https -> ?max_frame_size:int -> net:_ Eio.Net.t -> clock:_ Eio.Time.clock -> request -> (connection -> 'a) -> ('a, error) result
Sourceval send : connection -> message -> (unit, error) result
Sourceval close : ?code:int -> ?reason:string -> connection -> (unit, error) result