let float_wrappers = {
to_raw = (fun v -> Raw.Float v);
of_raw = function
| Raw.Float v -> v
| Raw.Int v -> float v
| r -> raise (Wrong_type (fun outchan -> Printf.fprintf outchan
"Raw.Float expected, got %a\n%!" Raw.to_channel r))
}