Module PPrintOCaml

module PPrintOCaml: sig .. end
A set of functions that construct representations of OCaml values.


The string representations produced by these functions are supposed to be accepted by the OCaml parser as valid values.

The signature of this module is compatible with that expected by the camlp4 generator Camlp4RepresentationGenerator.

These functions do not distinguish between mutable and immutable values. They do not recognize sharing, and do not incorporate a protection against cyclic values.
type constructor = string 
type type_name = string 
type record_field = string 
type tag = int 
type representation = PPrintEngine.document 
A representation of a value is a PPrint document.
val variant : type_name ->
constructor ->
tag ->
representation list -> representation
variant _ dc _ args is a description of a constructed value whose data constructor is dc and whose arguments are args. The other two parameters are presently unused.
val record : type_name ->
(record_field * representation) list ->
representation
record _ fields is a description of a record value whose fields are fields. The other parameter is presently unused.
val tuple : representation list -> representation
tuple args is a description of a tuple value whose components are args.
val string : string -> representation
string s is a representation of the string s.
val int : int -> representation
int i is a representation of the integer i.
val int32 : int32 -> representation
int32 i is a representation of the 32-bit integer i.
val int64 : int64 -> representation
int64 i is a representation of the 64-bit integer i.
val nativeint : nativeint -> representation
nativeint i is a representation of the native integer i.
val float : float -> representation
float f is a representation of the floating-point number f.
val char : char -> representation
char c is a representation of the character c.
val bool : bool -> representation
bool b is a representation of the Boolenan value b.
val option : ('a -> representation) -> 'a option -> representation
option f o is a representation of the option o, where the representation of the element, if present, is computed by the function f.
val list : ('a -> representation) -> 'a list -> representation
list f xs is a representation of the list xs, where the representation of each element is computed by the function f.
val array : ('a -> representation) -> 'a array -> representation
array f xs is a representation of the array xs, where the representation of each element is computed by the function f.
val ref : ('a -> representation) ->
'a Pervasives.ref -> representation
ref r is a representation of the reference r, where the representation of the content is computed by the function f.
val unknown : type_name -> 'a -> representation
unknown t _ is a representation of an unknown value of type t.