Module Project.Model

val f : ('input'm1'result) t -> unlift:('m2 -> 'm1) -> lift:('m2 -> 'm1 -> 'm2) -> ('input'm2'result) t
val ignore : ('input, unit, 'result) t -> ('input'model'result) t
val field : ('model_outer'model_inner) Core_kernel.Field.t -> ('input'model_inner'result) t -> ('input'model_outer'result) t
val to_input : ('input, unit, 'result) t -> (unit, 'input'result) t

Takes a component that operates immutably over an input (via 'input), and converts it to a component that gets its input from the model.

val to_input_with_other : ('input * 'model, unit, 'result) t -> ('input'model'result) t

Takes a component that operates immutably over an input (via 'input), and converts it to a component that gets part of that input from the model.