Typ.Data_spectype (!'r_var, !'r_value, !'k_var, !'k_value, !'f, !'checked) data_spec =
( 'r_var, 'r_value, 'k_var, 'k_value, 'f, 'checked ) Data_spec0.data_spec =
| :: : ( 'var, 'value, 'f0, 'checked0 ) Types.Typ.t
* ( 'r_var0, 'r_value0, 'k_var0, 'k_value0, 'f1, 'checked1 ) data_spec ->
( 'r_var1,
'r_value1,
'var0 ->
'k_var1,
'value0 ->
'k_value1,
'f2,
'checked2 )
data_spec |
| [] : ( 'r_var2, 'r_value2, 'r_var2, 'r_value2, 'f3, 'checked3 ) data_spec |
A list of Type.Typ.t values, describing the inputs to a checked computation. The type ('r_var, 'r_value, 'k_var, 'k_value, 'field) t represents
'k_value is the OCaml type of the computation'r_value is the OCaml type of the result'k_var is the type of the computation within the R1CS'k_value is the type of the result within the R1CS'field is the field over which the R1CS operates'checked is the type of checked computation that verifies the stored contents as R1CS variables.This functions the same as OCaml's default list type:
Data_spec.[typ1; typ2; typ3]
Data_spec.(typ1 :: typs)
let open Data_spec in
[typ1; typ2; typ3; typ4; typ5]
let open Data_spec in
typ1 :: typ2 :: typsall function as you would expect.
type (!'r_var0, !'r_value0, !'k_var0, !'k_value0, !'f0) t =
( 'r_var,
'r_value,
'k_var,
'k_value,
'f,
( unit, 'f ) Checked_runner.Simple.t )
data_specval size : ( 'a, 'b, 'c, 'd, 'f ) t -> int