Lines Matching refs:ThisType
162 typedef PolynomialOverFixedRing<T, instance> ThisType;
176 PolynomialOverFixedRing(const ThisType &t) : B(t) {}
202 static const ThisType &Zero();
203 static const ThisType &One();
221 ThisType& operator=(const ThisType& t) {B::operator=(t); return *this;}
223 ThisType& operator+=(const ThisType& t) {Accumulate(t, ms_fixedRing); return *this;}
225 ThisType& operator-=(const ThisType& t) {Reduce(t, ms_fixedRing); return *this;}
227 ThisType& operator*=(const ThisType& t) {return *this = *this*t;}
229 ThisType& operator/=(const ThisType& t) {return *this = *this/t;}
231 ThisType& operator%=(const ThisType& t) {return *this = *this%t;}
234 ThisType& operator<<=(unsigned int n) {ShiftLeft(n, ms_fixedRing); return *this;}
236 ThisType& operator>>=(unsigned int n) {ShiftRight(n, ms_fixedRing); return *this;}
247 void swap(ThisType &t) {B::swap(t);}
255 ThisType operator+() const {return *this;}
257 ThisType operator-() const {return ThisType(Inverse(ms_fixedRing));}
263 friend ThisType operator>>(ThisType a, unsigned int n) {return ThisType(a>>=n);}
265 friend ThisType operator<<(ThisType a, unsigned int n) {return ThisType(a<<=n);}
271 ThisType MultiplicativeInverse() const {return ThisType(B::MultiplicativeInverse(ms_fixedRing));}
276 ThisType Doubled() const {return ThisType(B::Doubled(ms_fixedRing));}
278 ThisType Squared() const {return ThisType(B::Squared(ms_fixedRing));}
283 static void Divide(ThisType &r, ThisType &q, const ThisType &a, const ThisType &d)
290 friend std::istream& operator>>(std::istream& in, ThisType &a)
293 friend std::ostream& operator<<(std::ostream& out, const ThisType &a)
300 ThisType * operator()() const
302 return new ThisType(ms_fixedRing.MultiplicativeIdentity());