📄 tokens.inc
字号:
// Butterfly BASIC - a BASIC interpreter for the MSP430
// Copyright (c) 2003, 2004 Paul Curtis
// email: plc@rowley.co.uk
#if PART == COMMAND_TOKENS
// Command tokens
T(T_NEW, "NEW", x_new, 0)
T(T_END, "END", x_end, 0)
T(T_STOP, "STOP", x_stop, 0)
T(T_REM, "REM", x_rem, 0)
T(T_TICK, "'", x_rem, 0)
T(T_AUTO, "AUTO", x_auto, 0)
T(T_TRACE, "TRACE", x_trace, 0)
T(T_LIST, "LIST", x_list, 0)
T(T_LET, "LET", x_let, 0)
T(T_GOTO, "GOTO", x_goto, 0)
T(T_GOSUB, "GOSUB", x_gosub, 0)
T(T_RETURN, "RETURN", x_return, 0)
T(T_PRINT, "PRINT", x_print, 0)
T(T_POKE, "POKE", x_poke, 0)
T(T_DPOKE, "DPOKE", x_dpoke, 0)
T(T_FOR, "FOR", x_for, 0)
T(T_NEXT, "NEXT", x_next, 0)
T(T_DIM, "DIM", x_dim, 0)
T(T_RUN, "RUN", x_run, 0)
T(T_ON, "ON", x_on, 0)
T(T_CONTINUE, "CONTINUE", x_continue, 0)
T(T_CLEAR, "CLEAR", x_clear, 0)
T(T_INTERRUPT, "INTERRUPT", x_interrupt, 0)
T(T_RESET, "RESET", x_reset, 0)
T(T_MEMORY, "MEMORY", x_memory, 0)
T(T_BREAK, "BREAK", x_break, 0)
T(T_RESUME, "RESUME", x_resume, 0)
T(T_DATA, "DATA", x_data, 0)
T(T_RESTORE, "RESTORE", x_restore, 0)
T(T_READ, "READ", x_read, 0)
T(T_INPUT, "INPUT", x_input, 0)
T(T_BPUT, "BPUT", x_bput, 0)
T(T_IF, "IF", x_if, 0)
T(T_WHILE, "WHILE", x_while, 0)
T(T_WEND, "WEND", x_wend, 0)
T(T_REPEAT, "REPEAT", x_repeat, 0)
T(T_UNTIL, "UNTIL", x_until, 0)
T(T_RANDOMIZE, "RANDOMIZE", x_randomize, 0)
T(T_EXIT, "EXIT", syntax_error, 0)
T(T_EXIT_FOR, "EXIT FOR", x_exit_for, 0)
T(T_EXIT_REPEAT, "EXIT REPEAT", x_exit_repeat, 0)
T(T_EXIT_WHILE, "EXIT WHILE", x_exit_while, 0)
#ifdef GRAPHICS
T(T_PLOT, "PLOT", x_plot, 0)
T(T_COLOR, "COLOR", x_color, 0)
T(T_LINE, "LINE", x_line, 0)
#endif
#elif PART == UNARY_TOKENS
// Functions and unary operators
T(T_ABS, "ABS", x_abs, 0)
T(T_SGN, "SGN", x_sgn, 0)
T(T_RND, "RND", x_rnd, 0)
T(T_NOT, "NOT", x_not, 0)
T(T_PEEK, "PEEK", x_peek, 0)
T(T_DPEEK, "DPEEK", x_dpeek, 0)
T(T_VARPTR, "VARPTR", x_varptr, 0)
T(T_TOP, "TOP", x_top, 0)
T(T_TRUE, "TRUE", x_true, 0)
T(T_FALSE, "FALSE", x_false, 0)
T(T_BGET, "BGET", x_bget, 0)
#elif PART == MISC_TOKENS
// Punctuators
T(T_TO, "TO", syntax_error, 0)
T(T_ELSE, "ELSE", syntax_error, 0)
T(T_THEN, "THEN", syntax_error, 0)
T(T_OFF, "OFF", syntax_error, 0)
T(T_AT, "AT", syntax_error, 0)
T(T_HEX, "HEX", syntax_error, 0)
T(T_BIN, "BIN", syntax_error, 0)
#elif PART == BINARY_TOKENS
// Binary operators
T(T_PLUS, "+", x_plus, 30)
T(T_MINUS, "-", x_minus, 30)
T(T_STAR, "*", x_star, 40)
T(T_SLASH, "/", x_slash, 40)
T(T_MOD, "MOD", x_mod, 40)
T(T_AND, "AND", x_and, 10)
T(T_BIC, "BIC", x_bic, 10)
T(T_OR, "OR", x_or, 10)
T(T_XOR, "XOR", x_xor, 10)
T(T_EQV, "EQV", x_eqv, 10)
T(T_IP, "IMP", x_imp, 10)
T(T_LE, "<=", x_le, 20)
T(T_NE, "<>", x_ne, 20)
T(T_LT, "<", x_lt, 20)
T(T_GE, ">=", x_ge, 20)
T(T_GT, ">", x_gt, 20)
T(T_EQ, "=", x_eq, 20)
T(T_BIT, "BIT", x_bit, 15)
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -