1
0
Files
otyaSMILEBASIC/SMILEBASIC/token.d

84 lines
1015 B
D

module otya.smilebasic.token;
import otya.smilebasic.type;
enum TokenType
{
Unknown,
Integer,
Double,
String,
Plus,
Minus,
Mul,
Div,
Mod,
Or,
And,
Xor,
Not,
Print,
If,
LParen,
RParen,
Iden,
Comma,
Colon,
Semicolon,
NewLine,
Assign,
Label,
Goto,
Then,
Else,
Endif,
For,
Next,
Equal,
NotEqual,
Less,//<
Greater,//>
LessEqual,
GreaterEqual,
LeftShift,//<<
RightShift,//>>
LogicalNot,//!
LogicalAnd,//&&
LogicalOr,//||
IntDiv,//DIV
Gosub,
Return,
End,
Break,
Continue,
Var,
LBracket,//[
RBracket,//]
Def,
Out,
While,
WEnd,
Inc,
Dec,
Data,
Read,
Restore,
On,
Input,
True,
False,
}
struct Token
{
TokenType type;
Value value;
this(TokenType t, Value v)
{
type = t;
value = v;
}
this(TokenType t)
{
type = t;
}
}