[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v3-RESEND 26/28] libxl: ocaml: provide defaults for libxl types

On Mon, 2013-10-21 at 14:32 +0100, Rob Hoes wrote:
> Libxl functions such as libxl_domain_create_new take large structs
> of configuration parameters. Often, we would like to use the default
> values for many of these parameters.
> The struct and keyed-union types in libxl have init functions, which
> fill in the defaults for a given type. This commit provides an OCaml
> interface to obtain records of defaults by calling the relevant init
> function.
> These default records can be used as a base to construct your own
> records, and to selectively override parameters where needed.
> For example, a Domain_create_info record can now be created as follows:
>   Xenlight.Domain_create_info.({ default ctx () with
>     ty = Xenlight.DOMAIN_TYPE_PV;
>     name = Some vm_name;
>     uuid = vm_uuid;
>   })
> For types with KeyedUnion fields, such as Domain_build_info, a record
> with defaults is obtained by specifying the type key:
>   Xenlight.Domain_build_info.default ctx ~ty:Xenlight.DOMAIN_TYPE_HVM ()
> Signed-off-by: Rob Hoes <rob.hoes@xxxxxxxxxx>

I have a feeling some of this could be done better, but that's my fault
for laying such crappy groundwork, sorry!

Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx>

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.