// Copyright 2015 The Go Authors. All rights reserved. | |
// Use of this source code is governed by a BSD-style | |
// license that can be found in the LICENSE file. | |
package scanner_test | |
import ( | |
"fmt" | |
"strings" | |
"text/scanner" | |
) | |
func Example() { | |
const src = ` | |
// This is scanned code. | |
if a > 10 { | |
someParsable = text | |
}` | |
var s scanner.Scanner | |
s.Init(strings.NewReader(src)) | |
var tok rune | |
for tok != scanner.EOF { | |
tok = s.Scan() | |
fmt.Println("At position", s.Pos(), ":", s.TokenText()) | |
} | |
// Output: | |
// At position 3:4 : if | |
// At position 3:6 : a | |
// At position 3:8 : > | |
// At position 3:11 : 10 | |
// At position 3:13 : { | |
// At position 4:15 : someParsable | |
// At position 4:17 : = | |
// At position 4:22 : text | |
// At position 5:3 : } | |
// At position 5:3 : | |
} |