llzk 0.4.0

Rust bindings to the LLZK C API.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
module attributes { llzk.lang } {
  poly.template @tmpl {
    poly.param @T

    struct.def @empty {
      function.def @compute() -> !struct.type<@tmpl::@empty<[@T]>> attributes {function.allow_non_native_field_ops, function.allow_witness} {
        %self = struct.new : <@tmpl::@empty<[@T]>>
        function.return %self : !struct.type<@tmpl::@empty<[@T]>>
      }
      function.def @constrain(%arg0: !struct.type<@tmpl::@empty<[@T]>>) attributes {function.allow_constraint, function.allow_non_native_field_ops} {
        function.return
      }
    }
  }
}