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

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

#15 in #num-traits

Download history 10/week @ 2024-07-22 15/week @ 2024-07-29 10/week @ 2024-08-05 7/week @ 2024-08-12 20/week @ 2024-08-19 12/week @ 2024-08-26 10/week @ 2024-09-02 20/week @ 2024-09-09 20/week @ 2024-09-16 52/week @ 2024-09-23 23/week @ 2024-09-30 23/week @ 2024-10-14 21/week @ 2024-10-21 29/week @ 2024-10-28 27/week @ 2024-11-04

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

MIT/Apache

8KB
112 lines

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.


lib.rs:

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]);

Dependencies

~1.5MB
~39K SLoC