class Tokeniser
{
public:
+virtual ~Tokeniser() = default;
virtual void release() = 0;
virtual void nextLine() = 0;
virtual const char* getToken() = 0;
class TokenWriter
{
public:
+virtual ~TokenWriter() = default;
virtual void release() = 0;
virtual void nextLine() = 0;
virtual void writeToken( const char* token ) = 0;