# Enum GroupElement.Representation

java.lang.Object
java.lang.Enum<GroupElement.Representation>
org.mariadb.jdbc.internal.com.send.authentication.ed25519.math.GroupElement.Representation

All Implemented Interfaces:
  `Serializable, Comparable<GroupElement.Representation>, java.lang.constant.Constable`

Enclosing class:
  `GroupElement`

public static enum GroupElement.Representation extends Enum<GroupElement.Representation>
Available representations for a group element.

- P2: Projective representation $(X:Y:Z)$ satisfying $x=X/Z, y=Y/Z$.
- P3: Extended projective representation $(X:Y:Z:T)$ satisfying $x=X/Z, y=Y/Z, XY=ZT$.
- P1P1: Completed representation $((X:Z), (Y:T))$ satisfying $x=X/Z, y=Y/T$.
- PRECOMP: Precomputed representation $(y+x, y-x, 2dxy)$.
- CACHED: Cached representation $(Y+X, Y-X, Z, 2dT)$

Author:
  str4d

## Nested Class Summary

### Nested classes/interfaces inherited from class Enum

`Enum.EnumDesc<E>`

## Enum Constant Summary

Enum Constants
Enum Constant
Description
`CACHED`
Cached: $(Y+X,Y-X,Z,2dT)$
`P1P1`
Completed ($P \times P$): $((X:Z),(Y:T))$ satisfying $x=X/Z, y=Y/T$
`P2`
Projective ($P^2$): $(X:Y:Z)$ satisfying $x=X/Z, y=Y/Z$
`P3`
Extended ($P^3$): $(X:Y:Z:T)$ satisfying $x=X/Z, y=Y/Z, XY=ZT$
`PRECOMP`
Precomputed (Duif): $(y+x,y-x,2dxy)$

## Method Summary

Modifier and Type
Method
Description
`static GroupElement.Representation`
`valueOf(String name)`
Returns the enum constant of this type with the specified name.
`static GroupElement.Representation[]`
`values()`
Returns an array containing the constants of this enum type, in the order they are declared.

### Methods inherited from class Enum

`clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

### Methods inherited from class Object

`getClass, notify, notifyAll, wait, wait, wait`

## Enum Constant Details

### P2

public static final GroupElement.Representation P2
Projective ($P^2$): $(X:Y:Z)$ satisfying $x=X/Z, y=Y/Z$

### P3

public static final GroupElement.Representation P3
Extended ($P^3$): $(X:Y:Z:T)$ satisfying $x=X/Z, y=Y/Z, XY=ZT$

### P1P1

public static final GroupElement.Representation P1P1
Completed ($P \times P$): $((X:Z),(Y:T))$ satisfying $x=X/Z, y=Y/T$

### PRECOMP

public static final GroupElement.Representation PRECOMP
Precomputed (Duif): $(y+x,y-x,2dxy)$

### CACHED

public static final GroupElement.Representation CACHED
Cached: $(Y+X,Y-X,Z,2dT)$

## Method Details

### values

public static GroupElement.Representation[] values()
Returns an array containing the constants of this enum type, in the order they are declared.

Returns:
  an array containing the constants of this enum type, in the order they are declared

### valueOf

public static GroupElement.Representation valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Parameters:
  `name` - the name of the enum constant to be returned.
Returns:
  the enum constant with the specified name
Throws:
  `IllegalArgumentException` - if this enum type has no constant with the specified name
  `NullPointerException` - if the argument is null