Skip to main content

fiat_monty_field_arithmetic

Macro fiat_monty_field_arithmetic 

Source
macro_rules! fiat_monty_field_arithmetic {
    (
        name: $fe:tt,
        params: $params:ty,
        uint: $uint:ty,
        non_mont: $non_mont_type:expr,
        mont: $mont_type:expr,
        from_mont: $from_mont:ident,
        to_mont: $to_mont:ident,
        add: $add:ident,
        sub: $sub:ident,
        mul: $mul:ident,
        neg: $neg:ident,
        square: $square:ident,
        divstep_precomp: $divstep_precomp:ident,
        divstep: $divstep:ident,
        msat: $msat:ident,
        selectnz: $selectznz:ident
    ) => { ... };
}
Expand description

Add fiat-crypto synthesized arithmetic impls to the given field element.

This macro wraps a field implementation generated by the word-by-word-montgomery backend (other field implementations are not supported) and uses it in conjunction with this crate’s MontyField type as the internal representation.