Files Classes Functions Hierarchy
#include <rpnfunc.h>
Public Member Functions | |
| rpnbitshiftleft () | |
| rpnbitshiftleft (deque< rpnbase * > &ds, bool const evaluate=true) | |
| ~rpnbitshiftleft () | |
| rpnbase * | copy () const |
| void | visit (deque< rpnbase * > &ds, rpninteger &n) |
| string const | name () const |
| void | eval (deque< rpnbase * > &ds) |
Definition at line 1288 of file rpnfunc.h.
| rpnbitshiftleft::rpnbitshiftleft | ( | ) | [inline] |
Definition at line 4001 of file rpnfunc.cpp.
References eval().
04002 { 04003 if (evaluate) 04004 eval(ds); 04005 else 04006 ds.push_front(this); 04007 }
| rpnbase * rpnbitshiftleft::copy | ( | ) | const [virtual] |
Reimplemented from rpnfunction.
Definition at line 4009 of file rpnfunc.cpp.
References rpnbitshiftleft().
04010 { 04011 return new rpnbitshiftleft(); 04012 }
| void rpnbitshiftleft::eval | ( | deque< rpnbase * > & | ds | ) | [virtual] |
Reimplemented from rpnfunction.
Definition at line 4014 of file rpnfunc.cpp.
References rpnbase::accept(), and rpnbase::dec().
Referenced by rpnbitshiftleft().
| string const rpnbitshiftleft::name | ( | ) | const [inline, virtual] |
| void rpnbitshiftleft::visit | ( | deque< rpnbase * > & | ds, | |
| rpninteger & | n | |||
| ) | [virtual] |
Reimplemented from rpnfunction.
Definition at line 4022 of file rpnfunc.cpp.
References rpnbase::dec(), rpnbase::isinteger(), and rpninteger::num.
04023 { 04024 rpnbase* x0 = ds.front(); 04025 rpnbase* x1 = ds[1]; 04026 04027 if (!x1->isinteger()) 04028 return; 04029 04030 ds.pop_front(); 04031 04032 ((rpninteger*)x1)->num = (((rpninteger*)x1)->num << n.num); 04033 04034 x0->dec(); 04035 }
1.5.8