('x, 'i, 'o) Cf_gadget.wire -> object method check : bool method get : ('x -> ('i, 'o, unit) Cf_gadget.t) -> ('i, 'o, unit) Cf_gadget.guard method id : string end