From f635033e3e953e74d67b76a520c9760786330af5 Mon Sep 17 00:00:00 2001 From: Niall Sheridan Date: Tue, 24 Jan 2017 23:43:28 +0000 Subject: Switch to scl, an extension of hcl --- vendor/github.com/homemade/scl/scanner_line.go | 38 ++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 vendor/github.com/homemade/scl/scanner_line.go (limited to 'vendor/github.com/homemade/scl/scanner_line.go') diff --git a/vendor/github.com/homemade/scl/scanner_line.go b/vendor/github.com/homemade/scl/scanner_line.go new file mode 100644 index 0000000..972c766 --- /dev/null +++ b/vendor/github.com/homemade/scl/scanner_line.go @@ -0,0 +1,38 @@ +package scl + +import ( + "fmt" + "strings" +) + +type lineContent string + +func (s lineContent) indent() int { + return len(s) - len(strings.TrimLeft(string(s), " \t")) +} + +type scannerLine struct { + file string + line int + column int + content lineContent + children scannerTree +} + +func newLine(fileName string, lineNumber, column int, content string) *scannerLine { + return &scannerLine{ + file: fileName, + line: lineNumber, + column: column, + content: lineContent(content), + children: make(scannerTree, 0), + } +} + +func (l *scannerLine) branch() *scannerLine { + return newLine(l.file, l.line, l.content.indent(), strings.Trim(string(l.content), " \t")) +} + +func (l *scannerLine) String() string { + return fmt.Sprintf("%s:%d", l.file, l.line) +} -- cgit v1.2.3