Developer documentation

mmx::let Namespace Reference

Namespace for explicit type conversion. More...

Functions

template<class A , class B >
void assign (A &a, const B &b)
 Generic definition of the assignement function. More...
 
void assign (int &a, double d)
 
void assign (double &d, int i)
 
void assign (double &d, unsigned i)
 
void assign (double &d, double z)
 
template<class C >
void assign (std::complex< C > &z, const C &x)
 
template<class X >
void assign (X &a, const char *s)
 
template<>
void assign (long long int &i, const char *s)
 
template<>
void assign (std::complex< double > &z, const char *s)
 
void assign (ZZ &x, const QQ &r)
 
void assign (QQ &x, const ZZ &r)
 
void assign (RR &r, const ZZ &x)
 
void assign (mpz_t r, const ZZ &x)
 
void assign (mpf_t r, const ZZ &x)
 
void assign (mpf_t r, const RR &x)
 
void assign (mpf_t r, const QQ &x)
 
void assign (QQ &x, char *s)
 
void assign (ZZ &z, char *s)
 
void assign (ZZ &z, int n)
 
void assign (ZZ &z, double d)
 
void assign (ZZ &x, const ZZ &r)
 
void assign (int &x, const ZZ &r)
 
void assign (long int &x, const ZZ &r)
 
void assign (double &r, const ZZ &z)
 
void assign (QQ &q, double d)
 
void assign (RR &r, double d)
 
void assign (double &d, const QQ &x)
 
void assign (double &r, const RR &z)
 
void assign (RR &r, char *s)
 
void assign (RR &x, const RR &r)
 
double convert (const QQ &q, meta::As< double >)
 
double convert (const ZZ &z, meta::As< double >)
 
double convert (const RR &r, meta::As< double >)
 
void assign (Interval< double > &a, const QQ &b)
 
void assign (Interval< double > &a, const QQ &u, const QQ &v)
 
void assign (Interval< QQ > &a, const QQ &u, const QQ &v)
 
template<class X , class Y , int r0, int r1>
void assign (Interval< X, r0 > &a, const Interval< Y, r1 > &b)
 
template<class C , class T >
void assign (Interval< C > &a, const T &b)
 
template<class T , int r>
void assign (Interval< T, r > &i, const char *s)
 
TMPL void assign (C &r, const Monomial &m)
 
template<class C1 , class R1 , class C2 , class R2 >
void assign (polynomial< C1, R1 > &p, const polynomial< C2, R2 > &q)
 
template<class C1 , class R1 , class DOM , class C2 , class R2 >
void assign (polynomial< C1, R1 > &p, const polynomial< C2, R2 > &q, const DOM &dmn)
 
template<class C , class D >
void assign (polynomial< D, with< MonomialTensor > > &p, const polynomial< C, with< MonomialTensor > > &q)
 
template<class C , class D >
void assign (polynomial< D, with< Univariate > > &p, const polynomial< C, with< Univariate > > &q)
 
void assign (scalar< MPZ > &x, const scalar< EMPZ > &r)
 
void assign (scalar< MPQ > &x, const scalar< EMPQ > &r)
 
void assign (scalar< EMPQ > &x, const scalar< EMPZ > &r)
 
void assign (scalar< MPZ > &z, char *s)
 
void assign (scalar< MPZ > &z, int n)
 
void assign (scalar< MPZ > &z, double d)
 
void assign (scalar< MPZ > &x, const scalar< MPZ > &r)
 
void assign (int &x, const scalar< MPZ > &r)
 
void assign (long int &x, const scalar< MPZ > &r)
 
void assign (double &r, const scalar< MPZ > &z)
 
void assign (scalar< MPQ > &x, char *s)
 
void assign (scalar< MPQ > &q, double d)
 
void assign (double &d, const scalar< MPQ > &x)
 
template<class C , class R , class X , class S >
void assign (Seq< C, R > &r, const Seq< X, S > &x)
 
template<class C , class R , class S >
void assign (Seq< C, R > &r, const Seq< C, S > &x)
 
template<class C , class D >
void assign (sleeve_rep< C > &f, const polynomial< D, with< Bernstein > > &p)
 
template<class C , class D >
void assign (sleeve_rep< C > &f, const polynomial< D, with< MonomialTensor > > &p)
 
TMPL void assign (sparse::monomial_seq< C, O, MONOM, REP > &p, const C &c)
 
template<class U , class V , class O , class UMONOM , class UREP , class VMONOM , class VREP >
void assign (sparse::monomial_seq< U, O, UMONOM, UREP > &p, const sparse::monomial_seq< V, O, VMONOM, VREP > &q)
 
template<class C , class U >
void assign (C &p, const U &q)
 
template<class C , class U >
void assign (tensor::bernstein< C > &p, const tensor::bernstein< U > &q)
 
template<class C , class D >
void assign (tensor::bernstein< C > &b, const tensor::monomials< D > &m)
 
template<class C , class D , class O >
void assign (tensor::bernstein< C > &b, const sparse::monomial_seq< D, O > &m)
 
template<class C , class D , class O , class DOM >
void assign (tensor::bernstein< C > &b, const sparse::monomial_seq< D, O > &m, const DOM &dom)
 

Detailed Description

Namespace for explicit type conversion.

This namespace provides convertion and assign functions for various types. It allows to control type transformations. The function assign(A& a, const B& b) set the variable a to the value b. The function B convert(const A& a, astype<B>()) returns an object of type B, let by astype< B >.

Function Documentation

template<class C , class R , class X , class S >
void mmx::let::assign ( Seq< C, R > &  r,
const Seq< X, S > &  x 
)
template<class C , class R , class S >
void mmx::let::assign ( Seq< C, R > &  r,
const Seq< C, S > &  x 
)
template<class T , int r>
void mmx::let::assign ( Interval< T, r > &  i,
const char *  s 
)
template<class C , class D >
void mmx::let::assign ( polynomial< D, with< Univariate > > &  p,
const polynomial< C, with< Univariate > > &  q 
)
inline
template<class C , class D >
void mmx::let::assign ( sleeve_rep< C > &  f,
const polynomial< D, with< Bernstein > > &  p 
)
void mmx::let::assign ( ZZ x,
const QQ r 
)
inline
template<class A , class B >
void mmx::let::assign ( A &  a,
const B &  b 
)
inline

Generic definition of the assignement function.

Examples:
polynomial_with_all_test.cpp.
void mmx::let::assign ( QQ x,
const ZZ r 
)
inline
void mmx::let::assign ( RR r,
const ZZ x 
)
inline
template<class C , class D >
void mmx::let::assign ( polynomial< D, with< MonomialTensor > > &  p,
const polynomial< C, with< MonomialTensor > > &  q 
)
inline
void mmx::let::assign ( int &  a,
double  d 
)
inline
void mmx::let::assign ( mpz_t  r,
const ZZ x 
)
inline
template<class C , class D >
void mmx::let::assign ( sleeve_rep< C > &  f,
const polynomial< D, with< MonomialTensor > > &  p 
)
void mmx::let::assign ( mpf_t  r,
const ZZ x 
)
inline
void mmx::let::assign ( double &  d,
int  i 
)
inline
void mmx::let::assign ( mpf_t  r,
const RR x 
)
inline
void mmx::let::assign ( mpf_t  r,
const QQ x 
)
inline
void mmx::let::assign ( double &  d,
unsigned  i 
)
inline
void mmx::let::assign ( double &  d,
double  z 
)
inline
template<class C >
void mmx::let::assign ( std::complex< C > &  z,
const C x 
)
inline
template<class X >
void mmx::let::assign ( X a,
const char *  s 
)
inline
template<>
void mmx::let::assign ( long long int &  i,
const char *  s 
)
inline
template<>
void mmx::let::assign ( std::complex< double > &  z,
const char *  s 
)
inline
void mmx::let::assign ( QQ x,
char *  s 
)
inline
void mmx::let::assign ( ZZ z,
char *  s 
)
inline
void mmx::let::assign ( ZZ z,
int  n 
)
inline
void mmx::let::assign ( ZZ z,
double  d 
)
inline
void mmx::let::assign ( ZZ x,
const ZZ r 
)
inline
void mmx::let::assign ( int &  x,
const ZZ r 
)
inline
void mmx::let::assign ( long int &  x,
const ZZ r 
)
inline
void mmx::let::assign ( double &  r,
const ZZ z 
)
inline
void mmx::let::assign ( QQ q,
double  d 
)
inline
void mmx::let::assign ( RR r,
double  d 
)
inline
void mmx::let::assign ( double &  d,
const QQ x 
)
inline
template<class X , class Y , int r0, int r1>
void mmx::let::assign ( Interval< X, r0 > &  a,
const Interval< Y, r1 > &  b 
)
inline
template<class C1 , class R1 , class C2 , class R2 >
void mmx::let::assign ( polynomial< C1, R1 > &  p,
const polynomial< C2, R2 > &  q 
)
inline
void mmx::let::assign ( double &  r,
const RR z 
)
inline
template<class C1 , class R1 , class DOM , class C2 , class R2 >
void mmx::let::assign ( polynomial< C1, R1 > &  p,
const polynomial< C2, R2 > &  q,
const DOM &  dmn 
)
inline
void mmx::let::assign ( RR r,
char *  s 
)
inline
void mmx::let::assign ( RR x,
const RR r 
)
inline
void mmx::let::assign ( Interval< double > &  a,
const QQ b 
)
inline
TMPL void mmx::let::assign ( C r,
const Monomial m 
)
inline
template<class C , class T >
void mmx::let::assign ( Interval< C > &  a,
const T &  b 
)
inline
void mmx::let::assign ( Interval< double > &  a,
const QQ u,
const QQ v 
)
inline
void mmx::let::assign ( Interval< QQ > &  a,
const QQ u,
const QQ v 
)
inline
void mmx::let::assign ( scalar< MPZ > &  x,
const scalar< EMPZ > &  r 
)
inline
void mmx::let::assign ( scalar< MPQ > &  x,
const scalar< EMPQ > &  r 
)
inline
void mmx::let::assign ( scalar< EMPQ > &  x,
const scalar< EMPZ > &  r 
)
inline
template<class C , class U >
void mmx::let::assign ( C p,
const U &  q 
)
template<class C , class U >
void mmx::let::assign ( tensor::bernstein< C > &  p,
const tensor::bernstein< U > &  q 
)
template<class C , class D >
void mmx::let::assign ( tensor::bernstein< C > &  b,
const tensor::monomials< D > &  m 
)
inline
template<class C , class D , class O >
void mmx::let::assign ( tensor::bernstein< C > &  b,
const sparse::monomial_seq< D, O > &  m 
)
inline
template<class C , class D , class O , class DOM >
void mmx::let::assign ( tensor::bernstein< C > &  b,
const sparse::monomial_seq< D, O > &  m,
const DOM &  dom 
)
inline
void mmx::let::assign ( scalar< MPQ > &  x,
char *  s 
)
inline
void mmx::let::assign ( scalar< MPQ > &  q,
double  d 
)
inline
void mmx::let::assign ( double &  d,
const scalar< MPQ > &  x 
)
inline
void mmx::let::assign ( scalar< MPZ > &  z,
char *  s 
)
inline
void mmx::let::assign ( scalar< MPZ > &  z,
int  n 
)
inline
void mmx::let::assign ( scalar< MPZ > &  z,
double  d 
)
inline
void mmx::let::assign ( scalar< MPZ > &  x,
const scalar< MPZ > &  r 
)
inline
void mmx::let::assign ( int &  x,
const scalar< MPZ > &  r 
)
inline
void mmx::let::assign ( long int &  x,
const scalar< MPZ > &  r 
)
inline
void mmx::let::assign ( double &  r,
const scalar< MPZ > &  z 
)
inline
TMPL void mmx::let::assign ( sparse::monomial_seq< C, O, MONOM, REP > &  p,
const C c 
)
template<class U , class V , class O , class UMONOM , class UREP , class VMONOM , class VREP >
void mmx::let::assign ( sparse::monomial_seq< U, O, UMONOM, UREP > &  p,
const sparse::monomial_seq< V, O, VMONOM, VREP > &  q 
)
double mmx::let::convert ( const QQ q,
meta::As< double >   
)
inline
double mmx::let::convert ( const ZZ z,
meta::As< double >   
)
inline
double mmx::let::convert ( const RR r,
meta::As< double >   
)
inline
Home