Wire Sysio Wire Sysion 1.0.0
Loading...
Searching...
No Matches
libff::mnt6_ate_G2_precomp Struct Reference

#include <mnt6_pairing.hpp>

Collaboration diagram for libff::mnt6_ate_G2_precomp:

Public Member Functions

bool operator== (const mnt6_ate_G2_precomp &other) const
 

Public Attributes

mnt6_Fq3 QX
 
mnt6_Fq3 QY
 
mnt6_Fq3 QY2
 
mnt6_Fq3 QX_over_twist
 
mnt6_Fq3 QY_over_twist
 
std::vector< mnt6_ate_dbl_coeffsdbl_coeffs
 
std::vector< mnt6_ate_add_coeffsadd_coeffs
 

Friends

std::ostream & operator<< (std::ostream &out, const mnt6_ate_G2_precomp &prec_Q)
 
std::istream & operator>> (std::istream &in, mnt6_ate_G2_precomp &prec_Q)
 

Detailed Description

Definition at line 91 of file mnt6_pairing.hpp.

Member Function Documentation

◆ operator==()

bool libff::mnt6_ate_G2_precomp::operator== ( const mnt6_ate_G2_precomp & other) const

Definition at line 102 of file mnt6_pairing.cpp.

103{
104 return (this->QX == other.QX &&
105 this->QY == other.QY &&
106 this->QY2 == other.QY2 &&
107 this->QX_over_twist == other.QX_over_twist &&
108 this->QY_over_twist == other.QY_over_twist &&
109 this->dbl_coeffs == other.dbl_coeffs &&
110 this->add_coeffs == other.add_coeffs);
111}

Friends And Related Symbol Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream & out,
const mnt6_ate_G2_precomp & prec_Q )
friend

Definition at line 113 of file mnt6_pairing.cpp.

114{
115 out << prec_Q.QX << OUTPUT_SEPARATOR
116 << prec_Q.QY << OUTPUT_SEPARATOR
117 << prec_Q.QY2 << OUTPUT_SEPARATOR
118 << prec_Q.QX_over_twist << OUTPUT_SEPARATOR
119 << prec_Q.QY_over_twist << "\n";
120 out << prec_Q.dbl_coeffs.size() << "\n";
121 for (const mnt6_ate_dbl_coeffs &dc : prec_Q.dbl_coeffs)
122 {
123 out << dc << OUTPUT_NEWLINE;
124 }
125 out << prec_Q.add_coeffs.size() << "\n";
126 for (const mnt6_ate_add_coeffs &ac : prec_Q.add_coeffs)
127 {
128 out << ac << OUTPUT_NEWLINE;
129 }
130
131 return out;
132}
#define OUTPUT_NEWLINE
#define OUTPUT_SEPARATOR

◆ operator>>

std::istream & operator>> ( std::istream & in,
mnt6_ate_G2_precomp & prec_Q )
friend

Definition at line 134 of file mnt6_pairing.cpp.

135{
136 in >> prec_Q.QX;
138 in >> prec_Q.QY;
140 in >> prec_Q.QY2;
142 in >> prec_Q.QX_over_twist;
144 in >> prec_Q.QY_over_twist;
145 consume_newline(in);
146
147 prec_Q.dbl_coeffs.clear();
148 size_t dbl_s;
149 in >> dbl_s;
150 consume_newline(in);
151
152 prec_Q.dbl_coeffs.reserve(dbl_s);
153
154 for (size_t i = 0; i < dbl_s; ++i)
155 {
156 mnt6_ate_dbl_coeffs dc;
157 in >> dc;
159 prec_Q.dbl_coeffs.emplace_back(dc);
160 }
161
162 prec_Q.add_coeffs.clear();
163 size_t add_s;
164 in >> add_s;
165 consume_newline(in);
166
167 prec_Q.add_coeffs.reserve(add_s);
168
169 for (size_t i = 0; i < add_s; ++i)
170 {
171 mnt6_ate_add_coeffs ac;
172 in >> ac;
174 prec_Q.add_coeffs.emplace_back(ac);
175 }
176
177 return in;
178}
void consume_OUTPUT_NEWLINE(std::istream &in)
void consume_OUTPUT_SEPARATOR(std::istream &in)
void consume_newline(std::istream &in)

Member Data Documentation

◆ add_coeffs

std::vector<mnt6_ate_add_coeffs> libff::mnt6_ate_G2_precomp::add_coeffs

Definition at line 98 of file mnt6_pairing.hpp.

◆ dbl_coeffs

std::vector<mnt6_ate_dbl_coeffs> libff::mnt6_ate_G2_precomp::dbl_coeffs

Definition at line 97 of file mnt6_pairing.hpp.

◆ QX

mnt6_Fq3 libff::mnt6_ate_G2_precomp::QX

Definition at line 92 of file mnt6_pairing.hpp.

◆ QX_over_twist

mnt6_Fq3 libff::mnt6_ate_G2_precomp::QX_over_twist

Definition at line 95 of file mnt6_pairing.hpp.

◆ QY

mnt6_Fq3 libff::mnt6_ate_G2_precomp::QY

Definition at line 93 of file mnt6_pairing.hpp.

◆ QY2

mnt6_Fq3 libff::mnt6_ate_G2_precomp::QY2

Definition at line 94 of file mnt6_pairing.hpp.

◆ QY_over_twist

mnt6_Fq3 libff::mnt6_ate_G2_precomp::QY_over_twist

Definition at line 96 of file mnt6_pairing.hpp.


The documentation for this struct was generated from the following files: