/** \file stringio.h * definitions of input output classes that read and write from string. */ #ifndef __stringio_h__ #define __stringio_h__ #include "yacasbase.h" #include "lispio.h" #include "lispstring.h" class StringInput : public LispInput { public: StringInput(LispString& aString,InputStatus& aStatus); virtual LispChar Next(); virtual LispChar Peek(); virtual LispBoolean EndOfStream(); virtual LispChar * StartPtr(); virtual LispInt Position(); virtual void SetPosition(LispInt aPosition); protected: LispString iString; LispInt iCurrent; }; class StringOutput : public LispOutput { public: StringOutput(LispString& aString); virtual ~StringOutput(); virtual void PutChar(LispChar aChar); public: LispString& iString; }; #endif