⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 token.h

📁 由一个古老的BASIC解释器改进而成, 保留了ANSI C固有的艺术美感.
💻 H
字号:
// token.h

#ifndef TOKEN_H_
#define TOKEN_H_

#include <string>

#include "blassic.h"

class Tokenizer {
public:
        enum Type { Empty, Plain, Literal, Integer };
	Tokenizer (const std::string & source);
        class Token {
        public:
                Token () :
                        type (Empty)
                { }
                Token (Type t, const std::string & str) :
                        type (t), str (str)
                { }
                Token (BlInteger n) :
                        type (Integer), n (n)
                { }
                bool empty () { return type == Plain && str.empty (); }
                Type type;
                std::string str;
                BlInteger n;
        };
	Token get ();
	char peek ();
private:
	char nextchar ();
	void ungetchar ();
	std::string str;
	size_t pos, limit;
};

#endif

// Fin de token.h

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -