Add exponentiation operator '**' in lexer
This commit is contained in:
parent
222f32ef46
commit
41a174e98c
1 changed files with 7 additions and 1 deletions
|
@ -23,9 +23,10 @@ const (
|
||||||
MINUS
|
MINUS
|
||||||
PLUS
|
PLUS
|
||||||
SEMICOLON
|
SEMICOLON
|
||||||
STAR
|
|
||||||
|
|
||||||
// One or two character tokens.
|
// One or two character tokens.
|
||||||
|
STAR
|
||||||
|
STAR_STAR
|
||||||
BANG
|
BANG
|
||||||
BANG_EQUAL
|
BANG_EQUAL
|
||||||
EQUAL
|
EQUAL
|
||||||
|
@ -156,6 +157,11 @@ func (l *Lexer) scanToken() {
|
||||||
case ';':
|
case ';':
|
||||||
l.addSimpleToken(SEMICOLON)
|
l.addSimpleToken(SEMICOLON)
|
||||||
case '*':
|
case '*':
|
||||||
|
if l.match('*') {
|
||||||
|
l.addSimpleToken(STAR_STAR)
|
||||||
|
} else {
|
||||||
|
l.addSimpleToken(STAR)
|
||||||
|
}
|
||||||
l.addSimpleToken(STAR)
|
l.addSimpleToken(STAR)
|
||||||
case '!':
|
case '!':
|
||||||
if l.match('=') {
|
if l.match('=') {
|
||||||
|
|
Loading…
Add table
Reference in a new issue