## Uses of Class
org.mariadb.jdbc.internal.com.send.authentication.ed25519.math.FieldElement

Packages that use FieldElement
org.mariadb.jdbc.internal.com.send.authentication.ed25519.math
org.mariadb.jdbc.internal.com.send.authentication.ed25519.math.ed25519

### Uses of FieldElement in org.mariadb.jdbc.internal.com.send.authentication.ed25519.math

Fields in org.mariadb.jdbc.internal.com.send.authentication.ed25519.math declared as FieldElement
`FieldElement` Field.`EIGHT`
`FieldElement` Field.`FIVE`
`FieldElement` Field.`FOUR`
`FieldElement` Field.`ONE`
`FieldElement` Field.`TWO`
`FieldElement` Field.`ZERO`

Methods in org.mariadb.jdbc.internal.com.send.authentication.ed25519.math that return FieldElement
`abstract FieldElement` FieldElement.`add(FieldElement val)`
`FieldElement` FieldElement.`addOne()`
`abstract FieldElement` FieldElement.`cmov(FieldElement val, int b)`
`abstract FieldElement` Encoding.`decode(byte[] in)` Decode a FieldElement from its $(b-1)$-bit encoding.
`FieldElement` FieldElement.`divide(FieldElement val)`
`FieldElement` Field.`fromByteArray(byte[] x)`
`FieldElement` Curve.`get2D()`
`FieldElement` Curve.`getD()`
`FieldElement` Curve.`getI()`
`FieldElement` Field.`getQ()`
`FieldElement` Field.`getQm2()`
`FieldElement` Field.`getQm5d8()`
`FieldElement` GroupElement.`getT()` Gets the $T$ value of the group element.
`FieldElement` GroupElement.`getX()` Gets the $X$ value of the group element.
`FieldElement` GroupElement.`getY()` Gets the $Y$ value of the group element.
`FieldElement` GroupElement.`getZ()` Gets the $Z$ value of the group element.
`abstract FieldElement` FieldElement.`invert()`
`abstract FieldElement` FieldElement.`multiply(FieldElement val)`
`abstract FieldElement` FieldElement.`negate()`
`abstract FieldElement` FieldElement.`pow22523()`
`abstract FieldElement` FieldElement.`square()`
`abstract FieldElement` FieldElement.`squareAndDouble()`
`abstract FieldElement` FieldElement.`subtract(FieldElement val)`
`FieldElement` FieldElement.`subtractOne()`

Methods in org.mariadb.jdbc.internal.com.send.authentication.ed25519.math with parameters of type FieldElement
`abstract FieldElement` FieldElement.`add(FieldElement val)`
`static GroupElement` GroupElement.`cached(Curve curve, FieldElement YpX, FieldElement YmX, FieldElement Z, FieldElement T2d)` Creates a new group element in CACHED representation.
`abstract FieldElement` FieldElement.`cmov(FieldElement val, int b)`
`FieldElement` FieldElement.`divide(FieldElement val)`
`abstract byte[]` Encoding.`encode(FieldElement x)` Encode a FieldElement in its $(b-1)$-bit encoding.
`abstract boolean` Encoding.`isNegative(FieldElement x)` From the Ed25519 paper: $x$ is negative if the $(b-1)$-bit encoding of $x$ is lexicographically larger than the $(b-1)$-bit encoding of -x.
`abstract FieldElement` FieldElement.`multiply(FieldElement val)`
`static GroupElement` GroupElement.`p1p1(Curve curve, FieldElement X, FieldElement Y, FieldElement Z, FieldElement T)` Creates a new group element in P1P1 representation.
`static GroupElement` GroupElement.`p2(Curve curve, FieldElement X, FieldElement Y, FieldElement Z)` Creates a new group element in P2 representation.
`static GroupElement` GroupElement.`p3(Curve curve, FieldElement X, FieldElement Y, FieldElement Z, FieldElement T)` Creates a new group element in P3 representation.
`static GroupElement` GroupElement.`precomp(Curve curve, FieldElement ypx, FieldElement ymx, FieldElement xy2d)` Creates a new group element in PRECOMP representation.
`abstract FieldElement` FieldElement.`subtract(FieldElement val)`

Constructors in org.mariadb.jdbc.internal.com.send.authentication.ed25519.math with parameters of type FieldElement
Constructor and Description
`Curve(Field f, byte[] d, FieldElement I)`
`GroupElement(Curve curve, GroupElement.Representation repr, FieldElement X, FieldElement Y, FieldElement Z, FieldElement T)` Creates a group element for a curve.

### Uses of FieldElement in org.mariadb.jdbc.internal.com.send.authentication.ed25519.math.ed25519

Subclasses of FieldElement in org.mariadb.jdbc.internal.com.send.authentication.ed25519.math.ed25519
`class` `Ed25519FieldElement` Class to represent a field element of the finite field $p = 2^{255} - 19$ elements.

Methods in org.mariadb.jdbc.internal.com.send.authentication.ed25519.math.ed25519 that return FieldElement
`FieldElement` Ed25519FieldElement.`add(FieldElement val)` $h = f + g$ TODO-CR BR: $h$ is allocated via new, probably not a good idea.
`FieldElement` Ed25519FieldElement.`cmov(FieldElement val, int b)` Constant-time conditional move.
`FieldElement` Ed25519LittleEndianEncoding.`decode(byte[] in)` Decodes a given field element in its 10 byte $2^{25.5}$ representation.
`FieldElement` Ed25519FieldElement.`invert()` Invert this field element.
`FieldElement` Ed25519FieldElement.`multiply(FieldElement val)` $h = f * g$ Can overlap $h$ with $f$ or $g$.
`FieldElement` Ed25519FieldElement.`negate()` $h = -f$ TODO-CR BR: see above.
`FieldElement` Ed25519FieldElement.`pow22523()` Gets this field element to the power of $(2^{252} - 3)$.
`FieldElement` Ed25519FieldElement.`square()` $h = f * f$ Can overlap $h$ with $f$.
`FieldElement` Ed25519FieldElement.`squareAndDouble()` $h = 2 * f * f$ Can overlap $h$ with $f$.
`FieldElement` Ed25519FieldElement.`subtract(FieldElement val)` $h = f - g$ Can overlap $h$ with $f$ or $g$.

Methods in org.mariadb.jdbc.internal.com.send.authentication.ed25519.math.ed25519 with parameters of type FieldElement
`FieldElement` Ed25519FieldElement.`add(FieldElement val)` $h = f + g$ TODO-CR BR: $h$ is allocated via new, probably not a good idea.
`FieldElement` Ed25519FieldElement.`cmov(FieldElement val, int b)` Constant-time conditional move.
`byte[]` Ed25519LittleEndianEncoding.`encode(FieldElement x)` Encodes a given field element in its 32 byte representation.
`boolean` Ed25519LittleEndianEncoding.`isNegative(FieldElement x)` Is the FieldElement negative in this encoding?
`FieldElement` Ed25519FieldElement.`multiply(FieldElement val)` $h = f * g$ Can overlap $h$ with $f$ or $g$.
`FieldElement` Ed25519FieldElement.`subtract(FieldElement val)` $h = f - g$ Can overlap $h$ with $f$ or $g$.