proj home

Files   Classes   Functions   Hierarchy  

rpnswap2 Class Reference

#include <rpnfunc.h>

Inheritance diagram for rpnswap2:
Collaboration diagram for rpnswap2:

List of all members.

Public Member Functions

 rpnswap2 ()
 rpnswap2 (deque< rpnbase * > &ds, bool const evaluate=true)
 ~rpnswap2 ()
rpnbasecopy () const
string const name () const
void eval (deque< rpnbase * > &ds)


Detailed Description

Definition at line 261 of file rpnfunc.h.


Constructor & Destructor Documentation

rpnswap2::rpnswap2 (  )  [inline]

Definition at line 265 of file rpnfunc.h.

Referenced by copy().

00265 {}

rpnswap2::rpnswap2 ( deque< rpnbase * > &  ds,
bool const   evaluate = true 
)

Definition at line 585 of file rpnfunc.cpp.

References eval().

00586 {
00587   if (evaluate)
00588     eval(ds);
00589   else
00590     ds.push_front(this);
00591 }

rpnswap2::~rpnswap2 (  )  [inline]

Definition at line 267 of file rpnfunc.h.

00267 {}


Member Function Documentation

rpnbase * rpnswap2::copy (  )  const [virtual]

Reimplemented from rpnfunction.

Definition at line 593 of file rpnfunc.cpp.

References rpnswap2().

00594 {
00595   return new rpnswap2();
00596 }

void rpnswap2::eval ( deque< rpnbase * > &  ds  )  [virtual]

Reimplemented from rpnfunction.

Definition at line 598 of file rpnfunc.cpp.

References rpnbase::dec().

Referenced by rpnswap2().

00599 {
00600   if (ds.size()>1)
00601   {
00602     rpnbase* p = ds[0];
00603     ds[0] = ds[1];
00604     ds[1] = p;
00605   }
00606 
00607   dec();
00608 }

string const rpnswap2::name (  )  const [inline, virtual]

Reimplemented from rpnfunction.

Definition at line 270 of file rpnfunc.h.

00270 { return string("|"); }


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

Generated on Fri Mar 4 00:50:16 2011 for Chelton Evans Source by  doxygen 1.5.8