2 * Tokenizer.h - TaskJuggler
4 * Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006
5 * Chris Schlaeger <cs@kde.org>
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of version 2 of the GNU General Public License as
9 * published by the Free Software Foundation.
16 #include "FileToken.h"
21 * @short A fairly generic tokenizer class that breaks QTextStreams into small
23 * @author Chris Schlaeger <cs@kde.org>
25 class Tokenizer : public FileToken
28 Tokenizer(const QString& file, MacroTable* mt_, const QString& tp);
29 Tokenizer(const QString& text);
30 virtual ~Tokenizer() { }
35 virtual QChar getC(bool expandMacros = true);
38 virtual TokenType nextToken(QString& buf);
40 virtual void setLocation(const QString& df, int dl);
41 virtual QString resolve(const QStringList* argList);
42 virtual Macro* getMacro(const QString& name) const;
44 virtual void errorMessage(const QString& msg);
48 * A pointer to the ProjectFile class that stores all read-in
53 // The text buffer to read.