implement-modules #43

Closed
sashakoshka wants to merge 502 commits from implement-modules into main
Showing only changes of commit ec3907d841 - Show all commits

View File

@ -1,6 +1,7 @@
package lexer
import "io"
import "fmt"
import "bufio"
import "unicode"
import "git.tebibyte.media/sashakoshka/fspl/errors"
@ -27,6 +28,28 @@ type TokenKind int; const (
Star // \*
)
func (kind TokenKind) String () string {
switch kind {
case EOF: return "EOF"
case Ident: return "Ident"
case TypeIdent: return "TypeIdent"
case Int: return "Int"
case Float: return "Float"
case String: return "String"
case Symbol: return "Symbol"
case LParen: return "LParen"
case LBrace: return "LBrace"
case LBracket: return "LBracket"
case RParen: return "RParen"
case RBrace: return "RBrace"
case RBracket: return "RBracket"
case Colon: return "Colon"
case DoubleColon: return "DoubleColon"
case Star: return "Star"
default: return fmt.Sprintf("TokenKind(%d)", kind)
}
}
func Symbols () map[string] TokenKind {
return map[string] TokenKind {
"EOF": EOF,