summaryrefslogtreecommitdiff
path: root/conf/parser.go
diff options
context:
space:
mode:
authorSilvan Jegen <s.jegen@gmail.com>2016-12-25 16:41:56 +0100
committerSilvan Jegen <s.jegen@gmail.com>2016-12-25 16:41:56 +0100
commit0ad0f3a85145f2b64cf5cbffa57cdb779180b724 (patch)
treeffe733b3b2eafe101700e56bd11be576c076afd4 /conf/parser.go
parentbe3749d9f77e1410c11d0e8b7158a13e51faa41c (diff)
Implement our own scanner
This allows us to record byte offset and line number in the token.
Diffstat (limited to 'conf/parser.go')
-rw-r--r--conf/parser.go8
1 files changed, 4 insertions, 4 deletions
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{}
}