From 0ad0f3a85145f2b64cf5cbffa57cdb779180b724 Mon Sep 17 00:00:00 2001 From: Silvan Jegen Date: Sun, 25 Dec 2016 16:41:56 +0100 Subject: Implement our own scanner This allows us to record byte offset and line number in the token. --- conf/parser.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'conf/parser.go') diff --git a/conf/parser.go b/conf/parser.go index 21bc604..85d9b11 100644 --- a/conf/parser.go +++ b/conf/parser.go @@ -17,12 +17,12 @@ type parser struct { func NewConfig(r io.Reader) *Config { s := newScanner(r) - tt, tok, err := s.Next() + tok, err := s.Scan() for err == nil { - fmt.Fprintf(os.Stderr, "tokentype: %d, token: %q, err: %v\n", tt, tok, err) - tt, tok, err = s.Next() + fmt.Fprintf(os.Stderr, "tokentype: %d, token: %q offset: %d, line: %d\n", tok.Type, tok.Lit, tok.Offset, tok.LineNr) + tok, err = s.Scan() } - fmt.Fprintf(os.Stderr, "Error: tokentype: %d, token: %q, err: %v\n", tt, tok, err) + fmt.Fprintf(os.Stderr, "Error: tokentype: %d, token: %q, err: %v\n", tok.Type, tok.Lit, err) return &Config{} } -- cgit v1.2.1-18-gbd029