andrey
12 months ago
1 changed files with 115 additions and 0 deletions
@ -0,0 +1,115 @@ |
|||
package json |
|||
|
|||
import "unicode/utf8" |
|||
|
|||
// Copied from encoding/json/tables.go.
|
|||
//
|
|||
// safeSet holds the value true if the ASCII character with the given array
|
|||
// position can be represented inside a JSON string without any further
|
|||
// escaping.
|
|||
//
|
|||
// All values are true except for the ASCII control characters (0-31), the
|
|||
// double quote ("), and the backslash character ("\").
|
|||
var safeSet = [utf8.RuneSelf]bool{ |
|||
' ': true, |
|||
'!': true, |
|||
'"': false, |
|||
'#': true, |
|||
'$': true, |
|||
'%': true, |
|||
'&': true, |
|||
'\'': true, |
|||
'(': true, |
|||
')': true, |
|||
'*': true, |
|||
'+': true, |
|||
',': true, |
|||
'-': true, |
|||
'.': true, |
|||
'/': true, |
|||
'0': true, |
|||
'1': true, |
|||
'2': true, |
|||
'3': true, |
|||
'4': true, |
|||
'5': true, |
|||
'6': true, |
|||
'7': true, |
|||
'8': true, |
|||
'9': true, |
|||
':': true, |
|||
';': true, |
|||
'<': true, |
|||
'=': true, |
|||
'>': true, |
|||
'?': true, |
|||
'@': true, |
|||
'A': true, |
|||
'B': true, |
|||
'C': true, |
|||
'D': true, |
|||
'E': true, |
|||
'F': true, |
|||
'G': true, |
|||
'H': true, |
|||
'I': true, |
|||
'J': true, |
|||
'K': true, |
|||
'L': true, |
|||
'M': true, |
|||
'N': true, |
|||
'O': true, |
|||
'P': true, |
|||
'Q': true, |
|||
'R': true, |
|||
'S': true, |
|||
'T': true, |
|||
'U': true, |
|||
'V': true, |
|||
'W': true, |
|||
'X': true, |
|||
'Y': true, |
|||
'Z': true, |
|||
'[': true, |
|||
'\\': false, |
|||
']': true, |
|||
'^': true, |
|||
'_': true, |
|||
'`': true, |
|||
'a': true, |
|||
'b': true, |
|||
'c': true, |
|||
'd': true, |
|||
'e': true, |
|||
'f': true, |
|||
'g': true, |
|||
'h': true, |
|||
'i': true, |
|||
'j': true, |
|||
'k': true, |
|||
'l': true, |
|||
'm': true, |
|||
'n': true, |
|||
'o': true, |
|||
'p': true, |
|||
'q': true, |
|||
'r': true, |
|||
's': true, |
|||
't': true, |
|||
'u': true, |
|||
'v': true, |
|||
'w': true, |
|||
'x': true, |
|||
'y': true, |
|||
'z': true, |
|||
'{': true, |
|||
'|': true, |
|||
'}': true, |
|||
'~': true, |
|||
'\u007f': true, |
|||
} |
|||
|
|||
// CanSafeSet check can be represented inside a JSON string without any further escaping.
|
|||
func CanSafeSet(r rune) bool { |
|||
return safeSet[r] |
|||
} |
Loading…
Reference in new issue