Module Sys_js

module Sys_js : sig..end

Javascript specific Sys functions.


val set_channel_flusher : 
  Pervasives.out_channel -> (string -> unit) -> unit

Set a callback to be called when an out_channel flush its buffer. set_channel_flusher chan cb install the callback cb for chan out_channel. cb will be called with the string to flush.

val set_channel_filler : Pervasives.in_channel -> (unit -> string) -> unit

Set a callback to be called when an in_channel wants to fill its buffer. set_channel_filler chan cb install the called cb for chan in_channel. The string returned by cb will be appended to the channel buffer.

Pseudo filesystem.

val mount_point : unit -> string list
val unmount : path:string -> unit
val mount : 
  path:string -> (prefix:string -> path:string -> string option) -> unit

Register a callback to the path to dynamicly load missing files. Whenever a file is missing in path, the callback is used to optionally get the content of the file. register_autoload ~path f register the callback f to the path path. The callback f receives (prefix,suffix) where:

  • prefix is the path the function has been registered to.
  • prefix suffix is the absolute filename .
val read_file : name:string -> string

read_file name returns the content of the file name. Raise Not_found if the file does not exists.

val create_file : name:string -> content:string -> unit

Register a file to a Pseudo Filesystem. create_file ~name ~content register the file name with content content so it can be be opened with Pervasives.open_in name

val update_file : name:string -> content:string -> unit

Update a file in the Pseudo Filesystem. update_file ~name ~content update the file name with content content


val js_of_ocaml_version : string

js_of_ocaml_version is the version of Js_of_ocaml. It is a string of the form "major.minor[.patchlevel][+additional-info]", where major, minor, and patchlevel are integers, and additional-info is an arbitrary string. The [.patchlevel] and [+additional-info] parts may be absent.