Files Classes Functions Hierarchy
#include <rpn.h>


Public Types | |
| typedef long int | type |
| typedef long int | type |
Public Member Functions | |
| rpninteger () | |
| rpninteger (deque< rpnbase * > &ds, long int const n) | |
| ~rpninteger () | |
| rpnbase * | copy () const |
| void | accept (deque< rpnbase * > &ds, rpnfunction &f) |
| ostream & | print (ostream &os) const |
| string const | name () const |
| bool const | isinteger () const |
| rpninteger () | |
| rpninteger (deque< rpnbase * > &ds, long int const n) | |
| ~rpninteger () | |
| rpnbase * | copy () const |
| void | accept (deque< rpnbase * > &ds, rpnfunction &f) |
| ostream & | print (ostream &os) const |
| string const | name () const |
| bool const | isinteger () const |
Public Attributes | |
| long int | num |
Static Public Attributes | |
| static unsigned int | displaybase |
Definition at line 157 of file rpn.h.
| typedef long int rpninteger::type |
| typedef long int rpninteger::type |
| rpninteger::rpninteger | ( | ) | [inline] |
| rpninteger::rpninteger | ( | deque< rpnbase * > & | ds, | |
| long int const | n | |||
| ) |
Definition at line 125 of file rpn.cpp.
References rpnbase::eval().
| rpninteger::rpninteger | ( | deque< rpnbase * > & | ds, | |
| long int const | n | |||
| ) |
| void rpninteger::accept | ( | deque< rpnbase * > & | ds, | |
| rpnfunction & | f | |||
| ) | [inline] |
Definition at line 137 of file rpn2.h.
References rpnfunction::visit().
00138 { f.visit(ds,*this); }
| void rpninteger::accept | ( | deque< rpnbase * > & | ds, | |
| rpnfunction & | f | |||
| ) | [inline] |
| rpnbase * rpninteger::copy | ( | ) | const [virtual] |
Implements rpnbase.
Definition at line 163 of file rpn.cpp.
References num, and rpninteger().
00164 { 00165 rpninteger* n = new rpninteger(); 00166 n->num = num; 00167 return n; 00168 }
| bool const rpninteger::isinteger | ( | ) | const [inline, virtual] |
| bool const rpninteger::isinteger | ( | ) | const [inline, virtual] |
| string const rpninteger::name | ( | ) | const [inline, virtual] |
| string const rpninteger::name | ( | ) | const [inline, virtual] |
Reimplemented from rpnbase.
Definition at line 131 of file rpn.cpp.
References displaybase, and num.
00132 { 00133 00134 switch( displaybase ) 00135 { 00136 case 10: 00137 os.unsetf(ios::hex); 00138 os.unsetf(ios::oct); 00139 os.setf(ios::dec); 00140 break; 00141 00142 case 8: 00143 os.unsetf(ios::dec); 00144 os.unsetf(ios::hex); 00145 os.setf(ios::oct); 00146 break; 00147 00148 case 16: 00149 os.unsetf(ios::dec); 00150 os.unsetf(ios::oct); 00151 os.setf(ios::hex); 00152 break; 00153 00154 case 2: 00155 00156 os << bitset<numeric_limits<long int>::digits>( num ); 00157 return os; 00158 }; 00159 00160 return os << num; 00161 }
unsigned int rpninteger::displaybase [static] |
Definition at line 164 of file rpn.h.
Referenced by rpnintegerbin::eval(), rpnintegerdec::eval(), rpnintegeroct::eval(), rpnintegerhex::eval(), and print().
| long int rpninteger::num |
Definition at line 161 of file rpn.h.
Referenced by copy(), isrpnprogram::eval(), isrpncomplex::eval(), isrpnreal::eval(), isrpninteger::eval(), isrpnstring::eval(), print(), rpngcd::visit(), rpnascii::visit(), rpnmod::visit(), rpnfactorial::visit(), rpnstringconvert::visit(), rpnbitshiftright::visit(), rpnbitshiftleft::visit(), rpnbitor::visit(), rpnbitand::visit(), rpnbitxor::visit(), rpnbitnot::visit(), rpnvectorpointermake::visit(), rpnvectormake::visit(), rpnpointermake::visit(), rpnerase::visit(), rpninsert::visit(), pathquery::visit(), rpndivide::visit(), rpnsubtract::visit(), prognew::visit(), rpnforn::visit(), rpnequal::visit(), rpngreaterthan::visit(), rpngreaterthanequal::visit(), rpnlessthanequal::visit(), rpnlessthan::visit(), rpnmultiply::visit(), rpnadd::visit(), varrecall::visit(), varreplace::visit(), vardec::visit(), varinc::visit(), vareval::visit(), rpnneg::visit(), rpnnot::visit(), thenelseif::visit(), ifthenelse::visit(), thenif::visit(), ifthen::visit(), dropn::visit(), dropi::visit(), rotn::visit(), rpndupn::visit(), rpnpopn::visit(), rpnpushn::visit(), rpnprogset::visit(), rpnfabs::visit(), rpnr_to_c::visit(), rpnpow::visit(), rpnrealconvert::visit(), and rpnfsqrt::visit().
1.6.1