package server-reason-react

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

Module Melange_native_ppx.Get_setSource

[@\@deriving getSet] generates getter and setter functions for record fields.

This is a native OCaml implementation compatible with melange's getSet deriver.

Basic usage

  type person = { name : string; age : int } [@@deriving getSet]

  (* Generates: *)
  let nameGet x = x.name
  let ageGet x = x.age

Mutable fields

Mutable fields also generate setter functions:

  type person = { name : string; mutable age : int } [@@deriving getSet]

  (* Generates: *)
  let nameGet x = x.name
  let ageGet x = x.age
  let ageSet x v = x.age <- v

Light mode

With { light }, getters are named after the field (without "Get" suffix):

  type person = { name : string; mutable age : int } [@@deriving getSet { light }]

  (* Generates: *)
  let name x = x.name
  let age x = x.age
  let ageSet x v = x.age <- v
module Builder = Ppxlib.Ast_builder.Default
Sourceval derive_str : light:bool -> Ppxlib.type_declaration list -> Ppxlib__.Import.structure_item list
Sourceval derive_sig : light:bool -> Ppxlib.type_declaration list -> Ppxlib__.Import.signature_item list
Sourceval str_type_decl : (Ppxlib__.Import.structure_item list, Ppxlib__.Import.rec_flag * Ppxlib.type_declaration list) Ppxlib__Deriving.Generator.t
Sourceval sig_type_decl : (Ppxlib__.Import.signature_item list, Ppxlib__.Import.rec_flag * Ppxlib.type_declaration list) Ppxlib__Deriving.Generator.t
Sourceval deriver : Ppxlib.Deriving.t