package frama-c

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Rich text buffers with JSON marshalling.

val format : ?indent:int -> ?margin:int -> ('a, Stdlib.Format.formatter, unit, json) Stdlib.format4 -> 'a

All-in-one formatter. Return the JSON encoding of formatted text.

val to_json : ?indent:int -> ?margin:int -> (Stdlib.Format.formatter -> 'a -> unit) -> 'a -> json

All-in-one formatter. Return the JSON encoding of formatted text.

type buffer

Buffer for encoding formatted text.

val create : ?indent:int -> ?margin:int -> unit -> buffer

Create a formatter with ~indent maximum indentation and ~margin right-margin. Defaults are those of Format.make_formatter, which are ~indent:68 and ~margin:78 with OCaml 4.05.

val formatter : buffer -> Stdlib.Format.formatter

The underlying formatter of a buffer.

val bprintf : buffer -> ('a, Stdlib.Format.formatter, unit) Stdlib.format -> 'a

Prints into the buffer formatter.

val append : buffer -> string -> int -> int -> unit
val flush : buffer -> unit -> unit
val push_tag : buffer -> Stdlib.Format.stag -> unit
val pop_tag : buffer -> Stdlib.Format.stag -> unit
val contents : buffer -> json

Flushes the buffer and returns its JSON enoding. This pops all pending tags.

val is_empty : json -> bool

When is_empty js holds, the JSON is sure to be empty.

val fprintf : Stdlib.Format.formatter -> json -> unit

Prints back a JSON encoding into the provided formatter.

  • raises Yojson.Basic.Util.Type_error

    in case of ill formatted buffer.

OCaml

Innovation. Community. Security.