Skip to content

Commit 2003342

Browse files
committed
add scalar mul
1 parent 3667f27 commit 2003342

File tree

2 files changed

+15
-2
lines changed

2 files changed

+15
-2
lines changed

bindings/c_curve_decls.nim

+14-1
Original file line numberDiff line numberDiff line change
@@ -464,7 +464,7 @@ template genBindings_EC_TwEdw_Affine*(EC, Field: untyped) =
464464

465465
{.pop.}
466466

467-
template genBindings_EC_TwEdw_Projective*(EC, EcAff, Field: untyped) =
467+
template genBindings_EC_TwEdw_Projective*(EC, EcAff, ScalarBig, ScalarField: untyped) =
468468
when appType == "lib":
469469
{.push noconv, dynlib, exportc, raises: [].} # No exceptions allowed
470470
else:
@@ -515,6 +515,19 @@ template genBindings_EC_TwEdw_Projective*(EC, EcAff, Field: untyped) =
515515

516516
func `ctt _ EC _ from_affine`(dst: var EC, src: EcAff) =
517517
dst.fromAffine(src)
518+
519+
func `ctt _ EC _ batch_affine`(dst: ptr UncheckedArray[EcAff], src: ptr UncheckedArray[EC], n: csize_t) =
520+
dst.batchAffine(src, cast[int](n))
521+
522+
func `ctt _ EC _ scalar_mul_big_coef`(
523+
P: var EC, scalar: ScalarBig) =
524+
525+
P.scalarMul(scalar)
526+
527+
func `ctt _ EC _ scalar_mul_fr_coef`(
528+
P: var EC, scalar: ScalarField) =
529+
530+
P.scalarMul(scalar)
518531

519532
{.pop.}
520533

bindings/lib_curves.nim

+1-1
Original file line numberDiff line numberDiff line change
@@ -154,4 +154,4 @@ collectBindings(cBindings_banderwagon):
154154
genBindingsField(big255, banderwagon_fp)
155155
genBindingsFieldSqrt(banderwagon_fp)
156156
genBindings_EC_TwEdw_Affine(banderwagon_twedw_aff, banderwagon_fp)
157-
genBindings_EC_TwEdw_Projective(banderwagon_twedw_prj, banderwagon_twedw_aff, banderwagon_fr)
157+
genBindings_EC_TwEdw_Projective(banderwagon_twedw_prj, banderwagon_twedw_aff, big253, banderwagon_fr)

0 commit comments

Comments
 (0)