6

オンラインの多くの簡単な例で示されているように、sexplib 構文拡張を使用して、型のシリアル化コードを自動的に生成します。

open Sexplib
type t = { foo : int; bar : string; } with sexp
let v = { foo = 3; bar = "baz"; } in
sexp_of_t v

でコンパイルに失敗しますError: Unbound value int_of_sexp

4

1 に答える 1

7

より最近のバージョンの sexplib では、最初open Sexplib.Stdに、生成されたコードの名前空間に標準の型シリアル化ルーチンを含める必要があります。

そう:

open Sexplib
open Sexplib.Std (* newly essential import *)
type t = { foo : int; bar : string; } with sexp
let v = { foo = 3; bar = "baz"; } in
sexp_of_t v

動作します。

于 2012-06-21T17:21:18.367 に答える