From 0536973668c83ce50905a80e6cef632765291c3a Mon Sep 17 00:00:00 2001 From: Chris Duncan Date: Wed, 30 Sep 2026 18:15:38 -0700 Subject: [PATCH] Narrow point types. --- src/assembly/ed25519/p.ts | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/assembly/ed25519/p.ts b/src/assembly/ed25519/p.ts index 8d98e90..96dfd49 100644 --- a/src/assembly/ed25519/p.ts +++ b/src/assembly/ed25519/p.ts @@ -11,18 +11,22 @@ const ed25519_d2: FieldElement = StaticArray.fromArray([ -21827239, -5839606, -30745221, 13898782, 229458, 15978800, -12551817, -6495438, 29715968, 9444199, 0, 0 ]) -export class ge_p2 { +class ge_coord { X: FieldElement = fe() Y: FieldElement = fe() Z: FieldElement = fe() } -export class ge_p1p1 extends ge_p2 { +export class ge_p2 extends ge_coord { + __brand: 'ge_p2' = 'ge_p2' +} + +export class ge_p1p1 extends ge_coord { T: FieldElement = fe() __brand: 'ge_p1p1' = 'ge_p1p1' } -export class ge_p3 extends ge_p2 { +export class ge_p3 extends ge_coord { T: FieldElement = fe() __brand: 'ge_p3' = 'ge_p3' } -- 2.52.0