|
realroot_doc 0.1.1
|
#include <scalar_bigunsigned.hpp>
Definition at line 11 of file scalar_bigunsigned.hpp.
| typedef unsigned hdwi_t |
Definition at line 14 of file scalar_bigunsigned.hpp.
| typedef unsigned hi |
Definition at line 13 of file scalar_bigunsigned.hpp.
| bigunsigned | ( | ) | [inline] |
Definition at line 18 of file scalar_bigunsigned.hpp.
Referenced by bigunsigned< N >::operator=().
{};
| bigunsigned | ( | unsigned | n | ) | [inline] |
Definition at line 20 of file scalar_bigunsigned.hpp.
References bigunsigned< N >::data, and mmx::N().
| bigunsigned<N-1>& next | ( | ) | [inline] |
Definition at line 119 of file scalar_bigunsigned.hpp.
References bigunsigned< N >::data, and mmx::N().
Referenced by mmx::add().
{
return *((bigunsigned<N-1>*)(this->data+1));
};
| const bigunsigned<N-1>& next | ( | ) | const [inline] |
Definition at line 124 of file scalar_bigunsigned.hpp.
References bigunsigned< N >::data, and mmx::N().
{
return *((const bigunsigned<N-1>*)(this->data+1));
};
| bigunsigned& operator+= | ( | unsigned | n | ) | [inline] |
Definition at line 129 of file scalar_bigunsigned.hpp.
References mmx::add().
{
add(*this,n);
return *this;
};
| bigunsigned& operator+= | ( | const bigunsigned< N > & | a | ) | [inline] |
Definition at line 135 of file scalar_bigunsigned.hpp.
References mmx::add().
{
add(*this,a);
return *this;
};
| bool operator< | ( | const bigunsigned< N > & | bi | ) | [inline] |
Definition at line 36 of file scalar_bigunsigned.hpp.
References bigunsigned< N >::data, and mmx::N().
| bigunsigned& operator<<= | ( | unsigned | n | ) | [inline] |
Definition at line 57 of file scalar_bigunsigned.hpp.
References bigunsigned< N >::data, and mmx::N().
{
if ( n >= numerics::hdwi<hi>::nbit )
{
do
{
for ( unsigned i = N-1; i > 0; i -- )
data[i] = data[i-1];
data[0] = 0;
n -= numerics::hdwi<hi>::nbit;
}
while ( n >= numerics::hdwi<hi>::nbit );
};
if ( n )
{
data[N-1] <<= n;
for ( int i = N-1; i > 0; i -- )
{
data[i] |= (data[i-1]>>(numerics::hdwi<hi>::nbit-n));
data[i-1] <<= n;
};
};
return *this;
};
| bigunsigned& operator= | ( | const bigunsigned< N > & | b | ) | [inline] |
Definition at line 31 of file scalar_bigunsigned.hpp.
References bigunsigned< N >::bigunsigned().
{
new (this) bigunsigned(b); return *this;
};
| bigunsigned& operator= | ( | unsigned | n | ) | [inline] |
Definition at line 26 of file scalar_bigunsigned.hpp.
References bigunsigned< N >::bigunsigned().
{
new (this) bigunsigned(n); return *this;
};
| bool operator== | ( | const bigunsigned< N > & | bi | ) | [inline] |
Definition at line 50 of file scalar_bigunsigned.hpp.
References bigunsigned< N >::data, and mmx::N().
| bool operator> | ( | const bigunsigned< N > & | bi | ) | [inline] |
Definition at line 43 of file scalar_bigunsigned.hpp.
References bigunsigned< N >::data, and mmx::N().
| bigunsigned& operator>>= | ( | unsigned | n | ) | [inline] |
Definition at line 82 of file scalar_bigunsigned.hpp.
References bigunsigned< N >::data, and mmx::N().
{
if ( n >= numerics::hdwi<hi>::nbit )
{
do
{
for ( unsigned i = 0; i < N-1; data[i] = data[i+1], i ++ ) ;
data[N-1] = 0;
n -= numerics::hdwi<hi>::nbit;
}
while ( n >= numerics::hdwi<hi>::nbit );
};
if ( n )
{
data[0] >>= n;
for ( int i = 0; i < int(N-1); i ++ )
{
data[i] |= (data[i+1]<<(numerics::hdwi<hi>::nbit-n));
data[i+1] >>= n;
};
};
return *this;
};
| unsigned& operator[] | ( | int | i | ) | [inline] |
Definition at line 141 of file scalar_bigunsigned.hpp.
References bigunsigned< N >::data.
{
return data[i];
};
| unsigned operator[] | ( | int | i | ) | const [inline] |
Definition at line 146 of file scalar_bigunsigned.hpp.
References bigunsigned< N >::data.
{
return data[i];
};
| bigunsigned& operator|= | ( | unsigned | n | ) | [inline] |
Definition at line 107 of file scalar_bigunsigned.hpp.
References bigunsigned< N >::data.
{
data[0] |= n;
return *this;
};
| bigunsigned& operator|= | ( | const bigunsigned< N > & | bu | ) | [inline] |
Definition at line 113 of file scalar_bigunsigned.hpp.
References bigunsigned< N >::data, and mmx::N().
Definition at line 17 of file scalar_bigunsigned.hpp.
Referenced by bigunsigned< N >::bigunsigned(), bigunsigned< N >::next(), bigunsigned< N >::operator<(), bigunsigned< N >::operator<<=(), bigunsigned< N >::operator==(), bigunsigned< N >::operator>(), bigunsigned< N >::operator>>=(), bigunsigned< N >::operator[](), and bigunsigned< N >::operator|=().
bool s_overflow = false [static] |
Definition at line 15 of file scalar_bigunsigned.hpp.