ppx_poly_record

ppx for polymorphic records
Description

Polymorphic record in OCaml

This ppx adds an extension point [%poly_record <exp>] for polymorphic record.

In side [%poly_record <exp>], the record syntax { l = e; .. }, { e with l = e'; .. }, r.l and r.l <- e become for polymorphic records whose type is _ Ppx_poly_record.Poly_record.t. The field information is encoded into OCaml's object type. For example:

# [%poly_record { x = 1; y = 1.0 }];;
- : < x : int; y : float > Ppx_poly_record.Poly_record.t = <abstr>

Implementation of _ PPx_poly_record.Poly_record.t is not by OCaml objects: it has no method table inside therefore safely serializable between different programs if its fields have no functional value.

Install
Published
04 May 2016
Authors
Sources
ppx_poly_record-1.1.1.tar.gz
md5=c77c69e8e501cd539eab00cbd8b2d355
Dependencies
ppxx
>= "1.3.0"
omake
build & < "0.10.1"
ocaml
>= "4.03.0"
Reverse Dependencies