[][src]Crate zkp_u256

Macros

assign_ops_from_trait

Implement assignment operator using OpInline trait.

commutative_binop

Implement infix operator using assignment version.

noncommutative_binop

Implement infix operator using assignment version. It is assumed OpAssign<&Type> is implemented.

noncommutative_self_ops_from_trait

Implement infix operator using OpInline trait, preferring _assign versions where possible.

self_ops_from_trait

Implement infix operator using OpInline trait, preferring _assign versions where possible.

Structs

U256

Traits

AddFullInline
AddInline
Binary

This is a subset of num_traits::PrimInt

BinaryAssignRef
BinaryOps
BinaryRing
Bounded

Numbers which have upper and lower bounds

DivRem
GCD
Inv

Unary operator for retrieving the multiplicative inverse, or reciprocal, of a value.

InvMod
Montgomery
MontgomeryParameters
MulAdd

Fused multiply-add. Computes (self * a) + b with only one rounding error, yielding a more accurate result than an unfused multiply-add.

MulAddAssign

The fused multiply-add assignment operation.

MulFullInline
MulInline
NegInline
One

Defines a multiplicative identity element for Self.

Pow

Binary operator for raising a value to a power.

SquareFullInline
SquareInline
SubFromFullInline
SubFromInline
SubFullInline
SubInline
Zero

Defines an additive identity element for Self.

Functions

adc

Compute a + b + carry, returning the result and the new carry over.

div_2_1

Compute <hi, lo> / d, returning the quotient and the remainder.

mac

Compute a + (b * c) + carry, returning the result and the new carry over. Both a and carry can be the full 64-bit range

msb

Compute a - (b * c + borrow), returning the result and the new borrow.

sbb

Compute a - (b + borrow), returning the result and the new borrow.

to_montgomery_const

Slow but compile time constant version of to_montgomery.