aboutsummaryrefslogtreecommitdiff
path: root/vendor/github.com/hashicorp/hcl/lex.go
diff options
context:
space:
mode:
authorNiall Sheridan <nsheridan@gmail.com>2016-05-22 01:23:33 +0100
committerNiall Sheridan <nsheridan@gmail.com>2016-05-22 01:23:33 +0100
commit649bf79117e30895108b7782d62daafd07bc5e6e (patch)
treefbee9fcd5374b87e75f85c0f1bf3a0d45aa6de67 /vendor/github.com/hashicorp/hcl/lex.go
parent1b21181bda148118b56221fe35b8dac3cd40bb50 (diff)
Use govendor
Diffstat (limited to 'vendor/github.com/hashicorp/hcl/lex.go')
-rw-r--r--vendor/github.com/hashicorp/hcl/lex.go38
1 files changed, 38 insertions, 0 deletions
diff --git a/vendor/github.com/hashicorp/hcl/lex.go b/vendor/github.com/hashicorp/hcl/lex.go
new file mode 100644
index 0000000..d9993c2
--- /dev/null
+++ b/vendor/github.com/hashicorp/hcl/lex.go
@@ -0,0 +1,38 @@
+package hcl
+
+import (
+ "unicode"
+ "unicode/utf8"
+)
+
+type lexModeValue byte
+
+const (
+ lexModeUnknown lexModeValue = iota
+ lexModeHcl
+ lexModeJson
+)
+
+// lexMode returns whether we're going to be parsing in JSON
+// mode or HCL mode.
+func lexMode(v []byte) lexModeValue {
+ var (
+ r rune
+ w int
+ offset int
+ )
+
+ for {
+ r, w = utf8.DecodeRune(v[offset:])
+ offset += w
+ if unicode.IsSpace(r) {
+ continue
+ }
+ if r == '{' {
+ return lexModeJson
+ }
+ break
+ }
+
+ return lexModeHcl
+}