sig
  type t
  external init : unit -> CL_FontDescription.t
    = "caml_CL_FontDescription_init"
  external delete : CL_FontDescription.t -> unit
    = "caml_CL_FontDescription_delete"
  external set_typeface_name : CL_FontDescription.t -> name:string -> unit
    = "caml_CL_FontDescription_set_typeface_name"
  external set_height : CL_FontDescription.t -> int -> unit
    = "caml_CL_FontDescription_set_height"
  external set_average_width : CL_FontDescription.t -> int -> unit
    = "caml_CL_FontDescription_set_average_width"
  external set_escapement : CL_FontDescription.t -> float -> unit
    = "caml_CL_FontDescription_set_escapement"
  external set_orientation : CL_FontDescription.t -> float -> unit
    = "caml_CL_FontDescription_set_orientation"
  external set_weight : CL_FontDescription.t -> int -> unit
    = "caml_CL_FontDescription_set_weight"
  external set_italic : CL_FontDescription.t -> unit
    = "caml_CL_FontDescription_set_italic"
  external set_underline : CL_FontDescription.t -> unit
    = "caml_CL_FontDescription_set_underline"
  external set_strikeout : CL_FontDescription.t -> unit
    = "caml_CL_FontDescription_set_strikeout"
  external set_fixed_pitch : CL_FontDescription.t -> unit
    = "caml_CL_FontDescription_set_fixed_pitch"
  external set_anti_alias : CL_FontDescription.t -> unit
    = "caml_CL_FontDescription_set_anti_alias"
  external set_not_italic : CL_FontDescription.t -> unit
    = "caml_CL_FontDescription_set_not_italic" [@@noalloc]
  external set_not_underline : CL_FontDescription.t -> unit
    = "caml_CL_FontDescription_set_not_underline" [@@noalloc]
  external set_not_strikeout : CL_FontDescription.t -> unit
    = "caml_CL_FontDescription_set_not_strikeout" [@@noalloc]
  external set_not_fixed_pitch : CL_FontDescription.t -> unit
    = "caml_CL_FontDescription_set_not_fixed_pitch" [@@noalloc]
  external set_not_anti_alias : CL_FontDescription.t -> unit
    = "caml_CL_FontDescription_set_not_anti_alias" [@@noalloc]
end