From a57892319fd5c3ddc95d7ff01c2d3f4928f6a87d Mon Sep 17 00:00:00 2001 From: Andy Grunwald Date: Fri, 12 Aug 2016 19:23:54 +0200 Subject: [PATCH] Fix #3: Detect CR Line Endings (\r) as line endings --- lexer.go | 2 +- lexer_test.go | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/lexer.go b/lexer.go index 7767e47..6a36619 100644 --- a/lexer.go +++ b/lexer.go @@ -113,7 +113,7 @@ func (s *Scanner) scanIdent() (tok Token, lit string) { } func isWhitespace(ch rune) bool { - return ch == ' ' || ch == '\t' || ch == '\n' + return ch == ' ' || ch == '\t' || ch == '\n' || ch == '\r' } func isLetter(ch rune) bool { diff --git a/lexer_test.go b/lexer_test.go index a01b4f2..6170fb8 100644 --- a/lexer_test.go +++ b/lexer_test.go @@ -20,6 +20,7 @@ func TestScanner_Scan(t *testing.T) { {s: ` `, tok: vdf.WS, lit: " "}, {s: "\t", tok: vdf.WS, lit: "\t"}, {s: "\n", tok: vdf.WS, lit: "\n"}, + {s: "\r", tok: vdf.WS, lit: "\r"}, // Misc characters {s: `{`, tok: vdf.CurlyBraceOpen, lit: "{"},