|
21 | 21 | Unknown, |
22 | 22 | }; |
23 | 23 |
|
24 | | -pub const ERROR = enum(c.BLST_ERROR) { |
25 | | - SUCCESS = c.BLST_SUCCESS, |
26 | | - BAD_ENCODING = c.BLST_BAD_ENCODING, |
27 | | - POINT_NOT_ON_CURVE = c.BLST_POINT_NOT_ON_CURVE, |
28 | | - POINT_NOT_IN_GROUP = c.BLST_POINT_NOT_IN_GROUP, |
29 | | - AGGR_TYPE_MISMATCH = c.BLST_AGGR_TYPE_MISMATCH, |
30 | | - VERIFY_FAIL = c.BLST_VERIFY_FAIL, |
31 | | - PK_IS_INFINITY = c.BLST_PK_IS_INFINITY, |
32 | | - BAD_SCALAR = c.BLST_BAD_SCALAR, |
| 24 | +pub const ERROR = enum(c.ERROR) { |
| 25 | + SUCCESS = c.SUCCESS, |
| 26 | + BAD_ENCODING = c.BAD_ENCODING, |
| 27 | + POINT_NOT_ON_CURVE = c.POINT_NOT_ON_CURVE, |
| 28 | + POINT_NOT_IN_GROUP = c.POINT_NOT_IN_GROUP, |
| 29 | + AGGR_TYPE_MISMATCH = c.AGGR_TYPE_MISMATCH, |
| 30 | + VERIFY_FAIL = c.VERIFY_FAIL, |
| 31 | + PK_IS_INFINITY = c.PK_IS_INFINITY, |
| 32 | + BAD_SCALAR = c.BAD_SCALAR, |
33 | 33 |
|
34 | 34 | pub fn as_error(self: ERROR) Error { |
35 | 35 | return switch (self) { |
|
86 | 86 | pub fn aggregate(self: *Pairing, pk: anytype, sig: anytype, |
87 | 87 | msg: []const u8, aug: ?[]const u8) ERROR { |
88 | 88 | const opt = aug orelse &[_]u8{}; |
89 | | - var err: c.BLST_ERROR = undefined; |
| 89 | + var err: c.ERROR = undefined; |
90 | 90 |
|
91 | 91 | switch (@TypeOf(pk)) { |
92 | 92 | *const P1_Affine, *P1_Affine => { |
|
299 | 299 | return .BAD_ENCODING; |
300 | 300 | } |
301 | 301 | const err = c.p1_deserialize(@ptrCast(&self.point), &in[0]); |
302 | | - if (err == c.BLST_SUCCESS) { |
| 302 | + if (err == c.SUCCESS) { |
303 | 303 | c.p1_from_affine(&self.point, @ptrCast(&self.point)); |
304 | 304 | } |
305 | 305 | return @as(ERROR, @enumFromInt(err)); |
@@ -409,21 +409,22 @@ def newer(*files): |
409 | 409 | ret = subprocess.run(["zig", "translate-c", "../blst.h", "-D__BLST_ZIG__"], |
410 | 410 | capture_output=True, text=True) |
411 | 411 | with open("c.zig", "w") as fd: |
412 | | - pubs = [] |
| 412 | + pubs = {} |
413 | 413 | print("// automatically generated with 'zig translate-c'", file=fd) |
414 | 414 | for line in ret.stdout.splitlines(): |
415 | 415 | if "no file" in line: |
416 | 416 | break |
417 | 417 | elif not line.startswith("pub const _"): |
418 | | - m = re.match(r'^pub ([\w\s]+? blst_(\w+).*)', line) |
| 418 | + m = re.match(r'^pub ([\w\s]+? ((?:blst|BLST)_(\w+)).*)', line) |
419 | 419 | if m: |
420 | 420 | print(m.group(1), file=fd) |
421 | | - pubs.append(m.group(2)) |
| 421 | + pubs[m.group(3)] = m.group(2) |
422 | 422 | else: |
423 | 423 | print(line, file=fd) |
424 | 424 | print("// reexport symbols without blst_ prefix", file=fd) |
425 | | - for pub in pubs: |
426 | | - print("pub const {0} = blst_{0};".format(pub), file=fd) |
| 425 | + for key, val in pubs.items(): |
| 426 | + print("pub const {} = {};".format(key, val), file=fd) |
| 427 | + del pubs |
427 | 428 |
|
428 | 429 |
|
429 | 430 | def xchg_1vs2(matchobj): |
|
0 commit comments