Module Types.Provider

include module type of struct include Types.Provider.T end
type ('request, 'compute) provider =
| Request of 'request
| Compute of 'compute
| Both of 'request * 'compute

The different ways to generate a value for the circuit witness.

If Both, this attempts the request first, and falls back on compute if the request is unhandled or raises an exception.

type ('a, 'f) t = ( ( 'a Request.t, 'f ) As_prover0.t, ( 'a, 'f ) As_prover0.t ) provider