math/f25519.[ch]: More field operations.
[catacomb] / math / group-guts.h
index c34d89c..1bc2e94 100644 (file)
@@ -50,6 +50,9 @@
 #  include "gfreduce.h"
 #endif
 
+typedef struct { mp *x; } ge_prime;
+typedef struct { mp *x; } ge_bin;
+
 #ifndef CATACOMB_GROUP_H
 #  include "group.h"
 #endif
 /*----- Data structures ---------------------------------------------------*/
 
 typedef struct gctx_prime {
-  group g;
-  mp *gen;
+  struct group_ g;
+  ge_prime gen;
   mpmont mm;
+  ge_prime i;
 } gctx_prime;
 
 typedef struct gctx_ec {
-  group g;
+  struct group_ g;
   ec id, gen;
   ec_info ei;
 } gctx_ec;
 
 typedef struct gctx_bin {
-  group g;
-  mp *gen;
-  mp *one;
+  struct group_ g;
+  ge_bin gen;
+  ge_bin one;
   gfreduce r;
 } gctx_bin;