Givaro 4.2.1
FieldInterface< _Element > Struct Template Referenceabstract

#include <ring-interface.h>

+ Inheritance diagram for FieldInterface< _Element >:

Public Types

typedef _Element Element
 
typedef ElementElement_ptr
 
typedef const Element ConstElement
 
typedef const ElementConstElement_ptr
 

Public Member Functions

virtual _Element & div (_Element &r, const _Element &a, const _Element &b) const =0
 
virtual _Element & inv (_Element &r, const _Element &a) const =0
 
virtual _Element & divin (_Element &r, const _Element &a) const =0
 
virtual _Element & invin (_Element &r) const =0
 
virtual bool isZero (const Element &a) const =0
 
virtual bool isOne (const Element &a) const =0
 
virtual bool isMOne (const Element &a) const =0
 
virtual bool isUnit (const Element &a) const =0
 
virtual bool areEqual (const Element &a, const Element &b) const =0
 
virtual Elementinit (Element &r) const =0
 
virtual Elementassign (Element &r, const Element &a) const =0
 
virtual Elementmul (Element &r, const Element &a, const Element &b) const =0
 
virtual Elementadd (Element &r, const Element &a, const Element &b) const =0
 
virtual Elementsub (Element &r, const Element &a, const Element &b) const =0
 
virtual Elementneg (Element &r, const Element &a) const =0
 
virtual Elementmulin (Element &r, const Element &a) const =0
 
virtual Elementaddin (Element &r, const Element &a) const =0
 
virtual Elementsubin (Element &r, const Element &a) const =0
 
virtual Elementnegin (Element &r) const =0
 
virtual Elementaxpy (Element &r, const Element &a, const Element &x, const Element &y) const =0
 
virtual Elementaxpyin (Element &r, const Element &a, const Element &x) const =0
 
virtual Elementaxmy (Element &r, const Element &a, const Element &x, const Element &y) const =0
 
virtual Elementaxmyin (Element &r, const Element &a, const Element &x) const =0
 
virtual Elementmaxpy (Element &r, const Element &a, const Element &x, const Element &y) const =0
 
virtual Elementmaxpyin (Element &r, const Element &a, const Element &x) const =0
 
virtual std::ostream & write (std::ostream &s) const =0
 
virtual std::ostream & write (std::ostream &s, const Element &a) const =0
 
virtual std::istream & read (std::istream &s, Element &a) const =0
 

Member Typedef Documentation

◆ Element

template<class _Element>
typedef _Element Element
inherited

◆ Element_ptr

template<class _Element>
typedef Element* Element_ptr
inherited

◆ ConstElement

template<class _Element>
typedef const Element ConstElement
inherited

◆ ConstElement_ptr

template<class _Element>
typedef const Element* ConstElement_ptr
inherited

Member Function Documentation

◆ div()

template<class _Element>
virtual _Element & div ( _Element & r,
const _Element & a,
const _Element & b ) const
pure virtual

◆ inv()

template<class _Element>
virtual _Element & inv ( _Element & r,
const _Element & a ) const
pure virtual

◆ divin()

template<class _Element>
virtual _Element & divin ( _Element & r,
const _Element & a ) const
pure virtual

◆ invin()

template<class _Element>
virtual _Element & invin ( _Element & r) const
pure virtual

◆ isZero()

template<class _Element>
virtual bool isZero ( const Element & a) const
pure virtualinherited

◆ isOne()

template<class _Element>
virtual bool isOne ( const Element & a) const
pure virtualinherited

◆ isMOne()

template<class _Element>
virtual bool isMOne ( const Element & a) const
pure virtualinherited

◆ isUnit()

template<class _Element>
virtual bool isUnit ( const Element & a) const
pure virtualinherited

◆ areEqual()

template<class _Element>
virtual bool areEqual ( const Element & a,
const Element & b ) const
pure virtualinherited

◆ init()

template<class _Element>
virtual Element & init ( Element & r) const
pure virtualinherited

◆ assign()

template<class _Element>
virtual Element & assign ( Element & r,
const Element & a ) const
pure virtualinherited

◆ mul()

template<class _Element>
virtual Element & mul ( Element & r,
const Element & a,
const Element & b ) const
pure virtualinherited

◆ add()

template<class _Element>
virtual Element & add ( Element & r,
const Element & a,
const Element & b ) const
pure virtualinherited

◆ sub()

template<class _Element>
virtual Element & sub ( Element & r,
const Element & a,
const Element & b ) const
pure virtualinherited

◆ neg()

template<class _Element>
virtual Element & neg ( Element & r,
const Element & a ) const
pure virtualinherited

◆ mulin()

template<class _Element>
virtual Element & mulin ( Element & r,
const Element & a ) const
pure virtualinherited

◆ addin()

template<class _Element>
virtual Element & addin ( Element & r,
const Element & a ) const
pure virtualinherited

◆ subin()

template<class _Element>
virtual Element & subin ( Element & r,
const Element & a ) const
pure virtualinherited

◆ negin()

template<class _Element>
virtual Element & negin ( Element & r) const
pure virtualinherited

◆ axpy()

template<class _Element>
virtual Element & axpy ( Element & r,
const Element & a,
const Element & x,
const Element & y ) const
pure virtualinherited

◆ axpyin()

template<class _Element>
virtual Element & axpyin ( Element & r,
const Element & a,
const Element & x ) const
pure virtualinherited

◆ axmy()

template<class _Element>
virtual Element & axmy ( Element & r,
const Element & a,
const Element & x,
const Element & y ) const
pure virtualinherited

◆ axmyin()

template<class _Element>
virtual Element & axmyin ( Element & r,
const Element & a,
const Element & x ) const
pure virtualinherited

◆ maxpy()

template<class _Element>
virtual Element & maxpy ( Element & r,
const Element & a,
const Element & x,
const Element & y ) const
pure virtualinherited

◆ maxpyin()

template<class _Element>
virtual Element & maxpyin ( Element & r,
const Element & a,
const Element & x ) const
pure virtualinherited

◆ write() [1/2]

◆ write() [2/2]

template<class _Element>
virtual std::ostream & write ( std::ostream & s,
const Element & a ) const
pure virtualinherited

◆ read()

template<class _Element>
virtual std::istream & read ( std::istream & s,
Element & a ) const
pure virtualinherited

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