proj home

Files   Classes   Functions   Hierarchy  

varpwd Class Reference

#include <rpnfunc.h>

Inheritance diagram for varpwd:
Collaboration diagram for varpwd:

List of all members.

Public Member Functions

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


Detailed Description

Definition at line 534 of file rpnfunc.h.


Constructor & Destructor Documentation

varpwd::varpwd (  )  [inline]

Definition at line 538 of file rpnfunc.h.

Referenced by copy().

00538 {}

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

Definition at line 1348 of file rpnfunc.cpp.

References eval().

01349 {
01350   if (evaluate)
01351     eval(ds);
01352   else
01353     ds.push_front(this);
01354 }

varpwd::~varpwd (  )  [inline]

Definition at line 540 of file rpnfunc.h.

00540 {}


Member Function Documentation

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

Reimplemented from rpnfunction.

Definition at line 1356 of file rpnfunc.cpp.

References varpwd().

01357 {
01358   return new varpwd();
01359 }

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

Reimplemented from rpnfunction.

Definition at line 1361 of file rpnfunc.cpp.

References rpnbase::dec().

Referenced by varpwd().

01362 {
01363   string path;
01364   bool found(false);
01365   
01366 //  rpnprogramstackstate().findprogram(
01367 //    found,path,rpnprogramstackstate().ps->front() );
01368 
01369   deque<rpnprogram*> & ps( * rpnprogramstackstate().ps );
01370   for ( unsigned int i=0; (i<ps.size())&&(!found); ++i )
01371   {
01372     rpnprogramstackstate().findprogram(
01373       found,path,ps[i] );
01374   }
01375 
01376   if (!found)
01377     path = "";
01378 
01379   new rpnstring(ds,path);
01380 
01381   dec();
01382 }

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

Reimplemented from rpnfunction.

Definition at line 543 of file rpnfunc.h.

00543 { return string("pwd"); }


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

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