Integer Class Reference

#include <Integer.h>

List of all members.

Public Member Functions

 Integer ()
 Integer (int)
 Integer (long)
 Integer (unsigned long)
 Integer (IntRep *)
 Integer (const Integer &)
 ~Integer ()
Integeroperator= (const Integer &)
Integeroperator= (long)
Integeroperator++ ()
Integeroperator-- ()
void negate1 ()
void abs ()
void complement ()
Integeroperator+= (const Integer &)
Integeroperator-= (const Integer &)
Integeroperator*= (const Integer &)
Integeroperator/= (const Integer &)
Integeroperator%= (const Integer &)
Integeroperator<<= (const Integer &)
Integeroperator>>= (const Integer &)
Integeroperator &= (const Integer &)
Integeroperator|= (const Integer &)
Integeroperator^= (const Integer &)
Integeroperator+= (long)
Integeroperator-= (long)
Integeroperator*= (long)
Integeroperator/= (long)
Integeroperator%= (long)
Integeroperator<<= (long)
Integeroperator>>= (long)
Integeroperator &= (long)
Integeroperator|= (long)
Integeroperator^= (long)
int fits_in_long () const
int fits_in_double () const
long as_long () const
double as_double () const
void printon (ostream &s, int base=10, int width=0) const
int initialized () const
void error (const char *msg) const
int OK () const

Protected Attributes

IntReprep

Friends

long lg (const Integer &)
double ratio (const Integer &x, const Integer &y)
Integer gcd (const Integer &, const Integer &)
int even (const Integer &)
int odd (const Integer &)
int sign (const Integer &)
void() setbit (Integer &x, long b)
void clearbit (Integer &x, long b)
int testbit (const Integer &x, long b)
void abs (const Integer &x, Integer &dest)
void negate1 (const Integer &x, Integer &dest)
void complement (const Integer &x, Integer &dest)
int compare (const Integer &, const Integer &)
int ucompare (const Integer &, const Integer &)
void add (const Integer &x, const Integer &y, Integer &dest)
void sub (const Integer &x, const Integer &y, Integer &dest)
void mul (const Integer &x, const Integer &y, Integer &dest)
void div (const Integer &x, const Integer &y, Integer &dest)
void mod (const Integer &x, const Integer &y, Integer &dest)
void divide (const Integer &x, const Integer &y, Integer &q, Integer &r)
void _and (const Integer &x, const Integer &y, Integer &dest)
void _or (const Integer &x, const Integer &y, Integer &dest)
void _xor (const Integer &x, const Integer &y, Integer &dest)
void lshift (const Integer &x, const Integer &y, Integer &dest)
void rshift (const Integer &x, const Integer &y, Integer &dest)
void pow (const Integer &x, const Integer &y, Integer &dest)
int compare (const Integer &, long)
int ucompare (const Integer &, long)
void add (const Integer &x, long y, Integer &dest)
void sub (const Integer &x, long y, Integer &dest)
void mul (const Integer &x, long y, Integer &dest)
void div (const Integer &x, long y, Integer &dest)
void mod (const Integer &x, long y, Integer &dest)
void divide (const Integer &x, long y, Integer &q, long &r)
void _and (const Integer &x, long y, Integer &dest)
void _or (const Integer &x, long y, Integer &dest)
void _xor (const Integer &x, long y, Integer &dest)
void lshift (const Integer &x, long y, Integer &dest)
void rshift (const Integer &x, long y, Integer &dest)
void pow (const Integer &x, long y, Integer &dest)
int compare (long, const Integer &)
int ucompare (long, const Integer &)
void add (long x, const Integer &y, Integer &dest)
void sub (long x, const Integer &y, Integer &dest)
void mul (long x, const Integer &y, Integer &dest)
void _and (long x, const Integer &y, Integer &dest)
void _or (long x, const Integer &y, Integer &dest)
void _xor (long x, const Integer &y, Integer &dest)
char * Itoa (const Integer &x, int base=10, int width=0)
Integer atoI (const char *s, int base=10)
ostream & operator<< (ostream &s, const Integer &y)
istream & operator>> (istream &stream, Integer &val)


Detailed Description

Definition at line 93 of file Integer.h.


Constructor & Destructor Documentation

Integer::Integer (  )  [inline]

Definition at line 385 of file Integer.h.

Integer::Integer ( int  y  )  [inline]

Definition at line 389 of file Integer.h.

Integer::Integer ( long  y  )  [inline]

Definition at line 391 of file Integer.h.

Integer::Integer ( unsigned long  y  )  [inline]

Definition at line 393 of file Integer.h.

Integer::Integer ( IntRep r  )  [inline]

Definition at line 387 of file Integer.h.

Integer::Integer ( const Integer y  )  [inline]

Definition at line 395 of file Integer.h.

Integer::~Integer (  )  [inline]

Definition at line 397 of file Integer.h.

References rep, and STATIC_IntRep.


Member Function Documentation

Integer & Integer::operator= ( const Integer y  )  [inline]

Definition at line 399 of file Integer.h.

References Icopy(), and rep.

Integer & Integer::operator= ( long  y  )  [inline]

Definition at line 405 of file Integer.h.

References Icopy_long(), and rep.

Integer & Integer::operator++ (  )  [inline]

Definition at line 679 of file Integer.h.

Integer & Integer::operator-- (  )  [inline]

Definition at line 698 of file Integer.h.

void Integer::negate1 (  )  [inline]

Definition at line 814 of file Integer.h.

Referenced by Rational::negate(), negate1(), and operator-().

void Integer::abs (  )  [inline]

Definition at line 809 of file Integer.h.

Referenced by abs().

void Integer::complement (  )  [inline]

Definition at line 820 of file Integer.h.

Referenced by operator~().

Integer & Integer::operator+= ( const Integer y  )  [inline]

Definition at line 667 of file Integer.h.

Integer & Integer::operator-= ( const Integer y  )  [inline]

Definition at line 686 of file Integer.h.

References sub.

Integer & Integer::operator*= ( const Integer y  )  [inline]

Definition at line 706 of file Integer.h.

References mul.

Integer & Integer::operator/= ( const Integer y  )  [inline]

Definition at line 758 of file Integer.h.

References div.

Integer & Integer::operator%= ( const Integer y  )  [inline]

Definition at line 1285 of file Integer.h.

Integer & Integer::operator<<= ( const Integer y  )  [inline]

Definition at line 771 of file Integer.h.

References lshift.

Integer & Integer::operator>>= ( const Integer y  )  [inline]

Definition at line 784 of file Integer.h.

References rshift.

Integer & Integer::operator &= ( const Integer y  )  [inline]

Definition at line 719 of file Integer.h.

References _and.

Integer & Integer::operator|= ( const Integer y  )  [inline]

Definition at line 731 of file Integer.h.

References _or.

Integer & Integer::operator^= ( const Integer y  )  [inline]

Definition at line 744 of file Integer.h.

References _xor.

Integer & Integer::operator+= ( long  y  )  [inline]

Definition at line 673 of file Integer.h.

Integer & Integer::operator-= ( long  y  )  [inline]

Definition at line 692 of file Integer.h.

References sub.

Integer & Integer::operator*= ( long  y  )  [inline]

Definition at line 712 of file Integer.h.

References mul.

Integer & Integer::operator/= ( long  y  )  [inline]

Definition at line 764 of file Integer.h.

References div.

Integer & Integer::operator%= ( long  y  )  [inline]

Definition at line 1291 of file Integer.h.

Integer & Integer::operator<<= ( long  y  )  [inline]

Definition at line 777 of file Integer.h.

References lshift.

Integer & Integer::operator>>= ( long  y  )  [inline]

Definition at line 790 of file Integer.h.

References rshift.

Integer & Integer::operator &= ( long  y  )  [inline]

Definition at line 725 of file Integer.h.

References _and.

Integer & Integer::operator|= ( long  y  )  [inline]

Definition at line 737 of file Integer.h.

References _or.

Integer & Integer::operator^= ( long  y  )  [inline]

Definition at line 750 of file Integer.h.

References _xor.

int Integer::fits_in_long (  )  const [inline]

Definition at line 210 of file Integer.h.

References Iislong(), and rep.

int Integer::fits_in_double (  )  const

long Integer::as_long (  )  const [inline]

Definition at line 213 of file Integer.h.

References Itolong(), and rep.

double Integer::as_double (  )  const

void Integer::printon ( ostream &  s,
int  base = 10,
int  width = 0 
) const

int Integer::initialized (  )  const [inline]

Definition at line 411 of file Integer.h.

References rep.

void Integer::error ( const char *  msg  )  const

int Integer::OK (  )  const


Friends And Related Function Documentation

long lg ( const Integer x  )  [friend]

Definition at line 848 of file Integer.h.

Referenced by lg().

double ratio ( const Integer x,
const Integer y 
) [friend]

Integer gcd ( const Integer x,
const Integer y 
) [friend]

Definition at line 1278 of file Integer.h.

Referenced by gcd().

int even ( const Integer y  )  [friend]

Definition at line 831 of file Integer.h.

int odd ( const Integer y  )  [friend]

Definition at line 836 of file Integer.h.

int sign ( const Integer x  )  [friend]

Definition at line 826 of file Integer.h.

void() setbit ( Integer x,
long  b 
) [friend]

void clearbit ( Integer x,
long  b 
) [friend]

int testbit ( const Integer x,
long  b 
) [friend]

void abs ( const Integer x,
Integer dest 
) [friend]

Definition at line 558 of file Integer.h.

void negate1 ( const Integer x,
Integer dest 
) [friend]

Definition at line 563 of file Integer.h.

void complement ( const Integer x,
Integer dest 
) [friend]

Definition at line 568 of file Integer.h.

int compare ( const Integer x,
const Integer y 
) [friend]

Definition at line 418 of file Integer.h.

Referenced by compare(), operator!=(), operator<(), operator<=(), operator==(), operator>(), and operator>=().

int ucompare ( const Integer x,
const Integer y 
) [friend]

Definition at line 423 of file Integer.h.

Referenced by ucompare().

void add ( const Integer x,
const Integer y,
Integer dest 
) [friend]

Definition at line 448 of file Integer.h.

void sub ( const Integer x,
const Integer y,
Integer dest 
) [friend]

Definition at line 453 of file Integer.h.

Referenced by operator-(), and operator-=().

void mul ( const Integer x,
const Integer y,
Integer dest 
) [friend]

Definition at line 458 of file Integer.h.

Referenced by operator*(), operator*=(), and sqr().

void div ( const Integer x,
const Integer y,
Integer dest 
) [friend]

Definition at line 463 of file Integer.h.

Referenced by div(), operator/(), and operator/=().

void mod ( const Integer x,
const Integer y,
Integer dest 
) [friend]

Definition at line 468 of file Integer.h.

Referenced by mod(), and operator%().

void divide ( const Integer x,
const Integer y,
Integer q,
Integer r 
) [friend]

void _and ( const Integer x,
const Integer y,
Integer dest 
) [friend]

Definition at line 473 of file Integer.h.

Referenced by operator &(), and operator &=().

void _or ( const Integer x,
const Integer y,
Integer dest 
) [friend]

Definition at line 478 of file Integer.h.

Referenced by operator|(), and operator|=().

void _xor ( const Integer x,
const Integer y,
Integer dest 
) [friend]

Definition at line 483 of file Integer.h.

Referenced by operator^(), and operator^=().

void lshift ( const Integer x,
const Integer y,
Integer dest 
) [friend]

Definition at line 488 of file Integer.h.

Referenced by lshift(), operator<<(), operator<<=(), and rshift().

void rshift ( const Integer x,
const Integer y,
Integer dest 
) [friend]

Definition at line 493 of file Integer.h.

Referenced by operator>>(), and operator>>=().

void pow ( const Integer x,
const Integer y,
Integer dest 
) [friend]

Definition at line 498 of file Integer.h.

Referenced by Ipow(), and pow().

int compare ( const Integer x,
long  y 
) [friend]

Definition at line 428 of file Integer.h.

int ucompare ( const Integer x,
long  y 
) [friend]

Definition at line 433 of file Integer.h.

void add ( const Integer x,
long  y,
Integer dest 
) [friend]

Definition at line 503 of file Integer.h.

void sub ( const Integer x,
long  y,
Integer dest 
) [friend]

Definition at line 508 of file Integer.h.

void mul ( const Integer x,
long  y,
Integer dest 
) [friend]

Definition at line 513 of file Integer.h.

void div ( const Integer x,
long  y,
Integer dest 
) [friend]

Definition at line 518 of file Integer.h.

void mod ( const Integer x,
long  y,
Integer dest 
) [friend]

Definition at line 523 of file Integer.h.

void divide ( const Integer x,
long  y,
Integer q,
long &  r 
) [friend]

void _and ( const Integer x,
long  y,
Integer dest 
) [friend]

Definition at line 528 of file Integer.h.

void _or ( const Integer x,
long  y,
Integer dest 
) [friend]

Definition at line 533 of file Integer.h.

void _xor ( const Integer x,
long  y,
Integer dest 
) [friend]

Definition at line 538 of file Integer.h.

void lshift ( const Integer x,
long  y,
Integer dest 
) [friend]

Definition at line 543 of file Integer.h.

void rshift ( const Integer x,
long  y,
Integer dest 
) [friend]

Definition at line 548 of file Integer.h.

void pow ( const Integer x,
long  y,
Integer dest 
) [friend]

Definition at line 553 of file Integer.h.

int compare ( long  x,
const Integer y 
) [friend]

Definition at line 438 of file Integer.h.

int ucompare ( long  x,
const Integer y 
) [friend]

Definition at line 443 of file Integer.h.

void add ( long  x,
const Integer y,
Integer dest 
) [friend]

Definition at line 573 of file Integer.h.

void sub ( long  x,
const Integer y,
Integer dest 
) [friend]

Definition at line 578 of file Integer.h.

void mul ( long  x,
const Integer y,
Integer dest 
) [friend]

Definition at line 583 of file Integer.h.

void _and ( long  x,
const Integer y,
Integer dest 
) [friend]

Definition at line 588 of file Integer.h.

void _or ( long  x,
const Integer y,
Integer dest 
) [friend]

Definition at line 593 of file Integer.h.

void _xor ( long  x,
const Integer y,
Integer dest 
) [friend]

Definition at line 598 of file Integer.h.

char* Itoa ( const Integer x,
int  base = 10,
int  width = 0 
) [friend]

Definition at line 841 of file Integer.h.

Referenced by Itoa().

Integer atoI ( const char *  s,
int  base = 10 
) [friend]

Definition at line 1273 of file Integer.h.

ostream& operator<< ( ostream &  s,
const Integer y 
) [friend]

istream& operator>> ( istream &  stream,
Integer val 
) [friend]

Definition at line 221 of file Integer.h.


Member Data Documentation

IntRep* Integer::rep [protected]


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

Generated on Mon Mar 2 17:58:49 2009 for CRyptography And Groups (CRAG) by  doxygen 1.5.6