#num-traits #proc-macro #ff #derived #macro-derive #prime-field #ff-derive

macro ff-derive-num

Procedural macro library to add the Num trait to Field implementations for ff

4 releases

0.2.0 Mar 10, 2022
0.1.2 Jun 12, 2021
0.1.1 Jun 12, 2021
0.1.0 Jun 12, 2021

#18 in #num-traits

Download history 102/week @ 2025-09-11 43/week @ 2025-09-18 72/week @ 2025-09-25 38/week @ 2025-10-02 47/week @ 2025-10-09 55/week @ 2025-10-16 64/week @ 2025-10-23 42/week @ 2025-10-30 64/week @ 2025-11-06 77/week @ 2025-11-13 58/week @ 2025-11-20 39/week @ 2025-11-27 52/week @ 2025-12-04 22/week @ 2025-12-11 25/week @ 2025-12-18 24/week @ 2025-12-25

130 downloads per month
Used in 3 crates (via lcpc-test-fields)

MIT/Apache

8KB
112 lines

Derive ::num_traits::Num and associated traits for ::ff::Field types derived using ::ff_derive

example

use ff::PrimeField;         // ff should be used with the "derive" feature!
use ff_derive_num::Num;

#[derive(PrimeField,Num)]
#[PrimeFieldModulus = "70386805592835581672624750593"]
#[PrimeFieldGenerator = "17"]
#[PrimeFieldReprEndianness = "little"]
pub struct Ft([u64; 2]);

ff-derive-num

This crate provides a derive macro for num-traits::Num and associated traits for ff::Field implementations derived with the ff-derive crate.

example

use ff::PrimeField;         // ff should be used with the "derive" feature!
use ff_derive_num::Num;

#[derive(PrimeField,Num)]
#[PrimeFieldModulus = "70386805592835581672624750593"]
#[PrimeFieldGenerator = "17"]
#[PrimeFieldReprEndianness = "little"]
pub struct Ft([u64; 2]);

license

Copyright 2021 Riad S. Wahby

You may choose either the Apache-2.0 license or the MIT license.

Unless you explicitly state otherwise, any contribution you submit will also be dual-licensed.

Dependencies

~2MB
~42K SLoC