summaryrefslogtreecommitdiff
path: root/src/mongo/gotools/src/github.com/mongodb/mongo-tools/vendor/github.com/mongodb/mongo-tools-common/json/helpers.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/gotools/src/github.com/mongodb/mongo-tools/vendor/github.com/mongodb/mongo-tools-common/json/helpers.go')
-rw-r--r--src/mongo/gotools/src/github.com/mongodb/mongo-tools/vendor/github.com/mongodb/mongo-tools-common/json/helpers.go82
1 files changed, 0 insertions, 82 deletions
diff --git a/src/mongo/gotools/src/github.com/mongodb/mongo-tools/vendor/github.com/mongodb/mongo-tools-common/json/helpers.go b/src/mongo/gotools/src/github.com/mongodb/mongo-tools/vendor/github.com/mongodb/mongo-tools-common/json/helpers.go
deleted file mode 100644
index b88191b4cff..00000000000
--- a/src/mongo/gotools/src/github.com/mongodb/mongo-tools/vendor/github.com/mongodb/mongo-tools-common/json/helpers.go
+++ /dev/null
@@ -1,82 +0,0 @@
-// Copyright (C) MongoDB, Inc. 2014-present.
-//
-// Licensed under the Apache License, Version 2.0 (the "License"); you may
-// not use this file except in compliance with the License. You may obtain
-// a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
-
-package json
-
-import "fmt"
-
-// Returns true if the byte array represents the null literal,
-// and false otherwise. Assumes that `nu` is sufficient to distinguish
-// between these cases.
-func isNull(s []byte) bool {
- return len(s) > 1 && s[0] == 'n' && s[1] == 'u'
-}
-
-// Returns true if the byte array represents some kind of number literal,
-// e.g. +123, -0.456, NaN, or Infinity, and false otherwise. Assumes that
-// the first character is sufficient to distinguish between these cases
-// with the exception of `N` where the second letter must be checked.
-func isNumber(s []byte) bool {
- if len(s) == 0 {
- return false
- }
- if len(s) > 1 && (s[0] == 'N' && s[1] == 'a') || (s[0] == 'I' && s[1] == 'n') { // NaN
- return true
- }
- return s[0] == '+' || s[0] == '-' || s[0] == '.' || (s[0] >= '0' && s[0] <= '9')
-}
-
-// Returns true if the string represents the start of a hexadecimal
-// literal, e.g. 0X123, -0x456, +0x789.
-func isHexPrefix(s string) bool {
- if len(s) > 2 && s[0] == '0' && (s[1] == 'x' || s[1] == 'X') {
- return true
- }
- return (s[0] == '+' || s[0] == '-') && isHexPrefix(s[1:])
-}
-
-// Returns the accept state (transition function) if x is empty.
-// Otherwise returns a function that upon matching the first element
-// of x will generate another function to match the second, etc.
-// (or accept if no remaining elements).
-func generateState(name string, x []byte, accept func(*scanner, int) int) func(*scanner, int) int {
- if len(x) == 0 {
- return accept
- }
-
- return func(s *scanner, c int) int {
- if c == int(x[0]) {
- s.step = generateState(name, x[1:], accept)
- return scanContinue
- }
- return s.error(c, fmt.Sprintf("in literal %v (expecting '%v')", name, string(x[0])))
- }
-}
-
-// stateOptionalConstructor is the state where there is the possibility of entering an empty constructor.
-func stateOptionalConstructor(s *scanner, c int) int {
- if c <= ' ' && isSpace(rune(c)) {
- return scanContinue
- }
- if c == '(' {
- s.step = stateInParen
- return scanContinue
- }
- return stateEndValue(s, c)
-}
-
-// stateInParen is the state when inside a `(` waiting for a `)`
-func stateInParen(s *scanner, c int) int {
- if c <= ' ' && isSpace(rune(c)) {
- return scanContinue
- }
- if c == ')' {
- s.step = stateEndValue
- return scanContinue
- }
- return s.error(c, "expecting ')' as next character")
-
-}