[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [MirageOS-devel] COW XML questions
On 5 Jan 2015, at 15:56, Thomas Gazagnaire <thomas@xxxxxxxxxxxxxx> wrote: > > Hi, > >> Some of the field names in the XML are not valid or idiomatic OCaml >> record fields, for example they might be capitalized. Is there an >> easyish way to get COW to do things like the following? >> >> type t = {foo: int; bar: string} with xml;; >> xml_of_t {foo=0; bar="hello"}; >> # yields <:xml< <Bar>hello</Bar> <Foo>0</Foo> >> > > I think the COW deriving extensions are pretty dumb, so this is not possible > directly. > > However you can write your own converter: > > let xml_of_t { foo; bar } = <:xml< <Bar>$str:bar$</Bar> <Foo>$int:foo$</Foo> > >> It's worth remembering this trick in general for all the type_conv-driven code generators, including sexp generation. We talk about briefly in Real World OCaml in the s-expression section: https://realworldocaml.org/v1/en/html/data-serialization-with-s-expressions.html#idm181611773136 -anil _______________________________________________ MirageOS-devel mailing list MirageOS-devel@xxxxxxxxxxxxxxxxxxxx http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |