From 5c23c59c925c9bc3b9135c67e055aacb77824a83 Mon Sep 17 00:00:00 2001 From: Sasha Koshka Date: Tue, 16 Aug 2022 16:27:52 -0400 Subject: [PATCH] Added parsing primitive arguments --- parser/argument.go | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/parser/argument.go b/parser/argument.go index 6a94bee..c7f42b0 100644 --- a/parser/argument.go +++ b/parser/argument.go @@ -53,18 +53,33 @@ func (parser *ParsingOperation) parseArgument () (argument Argument, err error) } case lexer.TokenKindInt: + argument.kind = ArgumentKindInt + argument.value = parser.token.Value().(int64) + err = parser.nextToken() case lexer.TokenKindUInt: + argument.kind = ArgumentKindUInt + argument.value = parser.token.Value().(uint64) + err = parser.nextToken() case lexer.TokenKindFloat: + argument.kind = ArgumentKindFloat + argument.value = parser.token.Value().(float64) + err = parser.nextToken() case lexer.TokenKindString: + argument.kind = ArgumentKindString + argument.value = parser.token.Value().(string) + parser.nextToken() case lexer.TokenKindRune: + argument.kind = ArgumentKindRune + argument.value = parser.token.Value().(rune) + parser.nextToken() - case lexer.TokenKindLBrace: + // case lexer.TokenKindLBrace: - case lexer.TokenKindLBracket: + // case lexer.TokenKindLBracket: default: panic (