aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2015-03-23 00:50:06 +0100
committerDimitri Sokolyuk <demon@dim13.org>2015-03-23 00:50:06 +0100
commita0e24d60883ed46e46396a697e41c59cdbecc5cd (patch)
treea011832631baad00d4e35bac336ccebbacc9a8d0
parentdd5a92f37650da584f376746fa3ed867c01035d1 (diff)
Move tokens into parser
-rw-r--r--parser.y12
-rw-r--r--tokens.go65
2 files changed, 11 insertions, 66 deletions
diff --git a/parser.y b/parser.y
index 6b88e03..1a59ea9 100644
--- a/parser.y
+++ b/parser.y
@@ -11,15 +11,25 @@ import "fmt"
cval complex128
}
-%token <sval> STRING
+%token <sval> STRING QUOTED
%token <ival> INTEGER
%token <fval> FLOAT
%token <cval> COMPLEX
+%token QUOTE DOT RAVEL SLASH BACKSLASH LBRACE RBRACE LBRACKET RBRACKET
+%token PLUS MINUS
+%token DIAMOND EACH NEG LESS LESSEQ EQ MOREEQ MORE NEQ OR AND TIMES DIV
+%token GRADEDOWN GRADEUP ROTH TRANSPOSE ROTV LOG NOR NAND FACTORIAL INVERSE
+%token ROLL OMEGA EPSILON RHO NOT TAKE DROP IOTA PI EXP ASSIGN BRANCH
+%token QUOTEQUAD ZILDE
+%token ALPHA CEILING FLOOR DEL DELTA JOT QUAD EXECUTE FORMAT
+%token ENCLOSE DISCLOSE DECODE ENCODE MAGNITUDE SCAN REDUCE
+
%%
line
: STRING { fmt.Println($1) }
+ | QUOTED { fmt.Println("'", $1, "'") }
| INTEGER { fmt.Println($1) }
| FLOAT { fmt.Println($1) }
| COMPLEX { fmt.Println($1) }
diff --git a/tokens.go b/tokens.go
index 5c6f8d9..a002011 100644
--- a/tokens.go
+++ b/tokens.go
@@ -5,73 +5,8 @@ const (
BLANK
DIGIT
CHAR
- QUOTED
- QUOTE
- DOT
- RAVEL
- NEG
LAMP
- ALPHA
- OMEGA
- IOTA
- RHO
- DEL
- PLUS
- MINUS
- TIMES
- DIV
- TAKE
- DROP
- ASSIGN
- BRANCH
- QUAD
- SLASH
- BACKSLASH
- REDUCE
- SCAN
- ROLL
- CEILING
- FLOOR
- NOT
- MAGNITUDE
- EXP
- PI
- DIAMOND
- EACH
- LESS
- LESSEQ
- MORE
- MOREEQ
- EQ
- NEQ
- OR
- AND
- NOR
- NAND
- GRADEDOWN
- GRADEUP
- ROTH
- TRANSPOSE
- ROTV
- LOG
- FACTORIAL
- INVERSE
- EPSILON
- QUOTEQUAD
- ZILDE
UNDERBAR
- DELTA
- JOT
- EXECUTE
- FORMAT
- ENCLOSE
- DISCLOSE
- DECODE
- ENCODE
- LBRACE
- RBRACE
- LBRACKET
- RBRACKET
NONE
)