Files Classes Functions Hierarchy
#include <rpnfunc.h>
Public Member Functions | |
| rpnbitxor () | |
| rpnbitxor (deque< rpnbase * > &ds, bool const evaluate=true) | |
| ~rpnbitxor () | |
| rpnbase * | copy () const |
| void | visit (deque< rpnbase * > &ds, rpninteger &n) |
| string const | name () const |
| void | eval (deque< rpnbase * > &ds) |
Definition at line 1240 of file rpnfunc.h.
| rpnbitxor::rpnbitxor | ( | ) | [inline] |
Definition at line 3889 of file rpnfunc.cpp.
References eval().
03890 { 03891 if (evaluate) 03892 eval(ds); 03893 else 03894 ds.push_front(this); 03895 }
| rpnbase * rpnbitxor::copy | ( | ) | const [virtual] |
Reimplemented from rpnfunction.
Definition at line 3897 of file rpnfunc.cpp.
References rpnbitxor().
03898 { 03899 return new rpnbitxor(); 03900 }
| void rpnbitxor::eval | ( | deque< rpnbase * > & | ds | ) | [virtual] |
Reimplemented from rpnfunction.
Definition at line 3902 of file rpnfunc.cpp.
References rpnbase::accept(), and rpnbase::dec().
Referenced by rpnbitxor().
| string const rpnbitxor::name | ( | ) | const [inline, virtual] |
| void rpnbitxor::visit | ( | deque< rpnbase * > & | ds, | |
| rpninteger & | n | |||
| ) | [virtual] |
Reimplemented from rpnfunction.
Definition at line 3910 of file rpnfunc.cpp.
References rpnbase::dec(), rpnbase::isinteger(), and rpninteger::num.
03911 { 03912 rpnbase* x0 = ds.front(); 03913 rpnbase* x1 = ds[1]; 03914 03915 if (!x1->isinteger()) 03916 return; 03917 03918 ds.pop_front(); 03919 03920 ((rpninteger*)x1)->num ^= n.num; 03921 03922 x0->dec(); 03923 }
1.5.8