type projP1xP1 …
type projP2 …
type Point …
type incomparable …
func checkInitialized(points ...*Point) { … }
type projCached …
type affineCached …
func (v *projP2) Zero() *projP2 { … }
var (
identity …
_ …
)
func NewIdentityPoint() *Point { … }
var (
generator …
_ …
)
func NewGeneratorPoint() *Point { … }
func (v *projCached) Zero() *projCached { … }
func (v *affineCached) Zero() *affineCached { … }
func (v *Point) Set(u *Point) *Point { … }
func (v *Point) Bytes() []byte { … }
func (v *Point) bytes(buf *[32]byte) []byte { … }
var feOne …
func (v *Point) SetBytes(x []byte) (*Point, error) { … }
func copyFieldElement(buf *[32]byte, v *field.Element) []byte { … }
func (v *projP2) FromP1xP1(p *projP1xP1) *projP2 { … }
func (v *projP2) FromP3(p *Point) *projP2 { … }
func (v *Point) fromP1xP1(p *projP1xP1) *Point { … }
func (v *Point) fromP2(p *projP2) *Point { … }
var (
d …
_ …
)
var d2 …
func (v *projCached) FromP3(p *Point) *projCached { … }
func (v *affineCached) FromP3(p *Point) *affineCached { … }
func (v *Point) Add(p, q *Point) *Point { … }
func (v *Point) Subtract(p, q *Point) *Point { … }
func (v *projP1xP1) Add(p *Point, q *projCached) *projP1xP1 { … }
func (v *projP1xP1) Sub(p *Point, q *projCached) *projP1xP1 { … }
func (v *projP1xP1) AddAffine(p *Point, q *affineCached) *projP1xP1 { … }
func (v *projP1xP1) SubAffine(p *Point, q *affineCached) *projP1xP1 { … }
func (v *projP1xP1) Double(p *projP2) *projP1xP1 { … }
func (v *Point) Negate(p *Point) *Point { … }
func (v *Point) Equal(u *Point) int { … }
func (v *projCached) Select(a, b *projCached, cond int) *projCached { … }
func (v *affineCached) Select(a, b *affineCached, cond int) *affineCached { … }
func (v *projCached) CondNeg(cond int) *projCached { … }
func (v *affineCached) CondNeg(cond int) *affineCached { … }