Quick StartTryGuideAPICommunityBlogGitHub

Standard Library

Below is the API for the OCaml standard library. It's directly copied over from the OCaml Manual, formatted to the Reason syntax and styled accordingly. The API docs are work-in-progress; we'll be polishing these gradually!

If you're targeting JavaScript, the API docs for BuckleScript includes all of below, plus JS-specific APIs.

sig

  module Scanning :
    sig
      type in_channel
      type scanbuf = Scanf.Scanning.in_channel
      val stdin : Scanf.Scanning.in_channel
      type file_name = string
      val open_in : Scanf.Scanning.file_name -> Scanf.Scanning.in_channel
      val open_in_bin : Scanf.Scanning.file_name -> Scanf.Scanning.in_channel
      val close_in : Scanf.Scanning.in_channel -> unit
      val from_file : Scanf.Scanning.file_name -> Scanf.Scanning.in_channel
      val from_file_bin : string -> Scanf.Scanning.in_channel
      val from_string : string -> Scanf.Scanning.in_channel
      val from_function : (unit -> char) -> Scanf.Scanning.in_channel
      val from_channel : Pervasives.in_channel -> Scanf.Scanning.in_channel
      val end_of_input : Scanf.Scanning.in_channel -> bool
      val beginning_of_input : Scanf.Scanning.in_channel -> bool
      val name_of_input : Scanf.Scanning.in_channel -> string
      val stdib : Scanf.Scanning.in_channel
    end
  type ('a, 'b, 'c, 'd) scanner =
      ('a, Scanf.Scanning.in_channel, 'b, 'c, 'a -> 'd, 'd)
      Pervasives.format6 -> 'c
  exception Scan_failure of string
  val bscanf : Scanf.Scanning.in_channel -> ('a, 'b, 'c, 'd) Scanf.scanner
  val fscanf : Pervasives.in_channel -> ('a, 'b, 'c, 'd) Scanf.scanner
  val sscanf : string -> ('a, 'b, 'c, 'd) Scanf.scanner
  val scanf : ('a, 'b, 'c, 'd) Scanf.scanner
  val kscanf :
    Scanf.Scanning.in_channel ->
    (Scanf.Scanning.in_channel -> exn -> 'd) ->
    ('a, 'b, 'c, 'd) Scanf.scanner
  val ksscanf :
    string ->
    (Scanf.Scanning.in_channel -> exn -> 'd) ->
    ('a, 'b, 'c, 'd) Scanf.scanner
  val kfscanf :
    Pervasives.in_channel ->
    (Scanf.Scanning.in_channel -> exn -> 'd) ->
    ('a, 'b, 'c, 'd) Scanf.scanner
  val bscanf_format :
    Scanf.Scanning.in_channel ->
    ('a, 'b, 'c, 'd, 'e, 'f) Pervasives.format6 ->
    (('a, 'b, 'c, 'd, 'e, 'f) Pervasives.format6 -> 'g) -> 'g
  val sscanf_format :
    string ->
    ('a, 'b, 'c, 'd, 'e, 'f) Pervasives.format6 ->
    (('a, 'b, 'c, 'd, 'e, 'f) Pervasives.format6 -> 'g) -> 'g
  val format_from_string :
    string ->
    ('a, 'b, 'c, 'd, 'e, 'f) Pervasives.format6 ->
    ('a, 'b, 'c, 'd, 'e, 'f) Pervasives.format6
  val unescaped : string -> string
end