...

Source file src/encoding/json/tables.go

Documentation: encoding/json

		 1  // Copyright 2016 The Go Authors. All rights reserved.
		 2  // Use of this source code is governed by a BSD-style
		 3  // license that can be found in the LICENSE file.
		 4  
		 5  package json
		 6  
		 7  import "unicode/utf8"
		 8  
		 9  // safeSet holds the value true if the ASCII character with the given array
		10  // position can be represented inside a JSON string without any further
		11  // escaping.
		12  //
		13  // All values are true except for the ASCII control characters (0-31), the
		14  // double quote ("), and the backslash character ("\").
		15  var safeSet = [utf8.RuneSelf]bool{
		16  	' ':			true,
		17  	'!':			true,
		18  	'"':			false,
		19  	'#':			true,
		20  	'$':			true,
		21  	'%':			true,
		22  	'&':			true,
		23  	'\'':		 true,
		24  	'(':			true,
		25  	')':			true,
		26  	'*':			true,
		27  	'+':			true,
		28  	',':			true,
		29  	'-':			true,
		30  	'.':			true,
		31  	'/':			true,
		32  	'0':			true,
		33  	'1':			true,
		34  	'2':			true,
		35  	'3':			true,
		36  	'4':			true,
		37  	'5':			true,
		38  	'6':			true,
		39  	'7':			true,
		40  	'8':			true,
		41  	'9':			true,
		42  	':':			true,
		43  	';':			true,
		44  	'<':			true,
		45  	'=':			true,
		46  	'>':			true,
		47  	'?':			true,
		48  	'@':			true,
		49  	'A':			true,
		50  	'B':			true,
		51  	'C':			true,
		52  	'D':			true,
		53  	'E':			true,
		54  	'F':			true,
		55  	'G':			true,
		56  	'H':			true,
		57  	'I':			true,
		58  	'J':			true,
		59  	'K':			true,
		60  	'L':			true,
		61  	'M':			true,
		62  	'N':			true,
		63  	'O':			true,
		64  	'P':			true,
		65  	'Q':			true,
		66  	'R':			true,
		67  	'S':			true,
		68  	'T':			true,
		69  	'U':			true,
		70  	'V':			true,
		71  	'W':			true,
		72  	'X':			true,
		73  	'Y':			true,
		74  	'Z':			true,
		75  	'[':			true,
		76  	'\\':		 false,
		77  	']':			true,
		78  	'^':			true,
		79  	'_':			true,
		80  	'`':			true,
		81  	'a':			true,
		82  	'b':			true,
		83  	'c':			true,
		84  	'd':			true,
		85  	'e':			true,
		86  	'f':			true,
		87  	'g':			true,
		88  	'h':			true,
		89  	'i':			true,
		90  	'j':			true,
		91  	'k':			true,
		92  	'l':			true,
		93  	'm':			true,
		94  	'n':			true,
		95  	'o':			true,
		96  	'p':			true,
		97  	'q':			true,
		98  	'r':			true,
		99  	's':			true,
	 100  	't':			true,
	 101  	'u':			true,
	 102  	'v':			true,
	 103  	'w':			true,
	 104  	'x':			true,
	 105  	'y':			true,
	 106  	'z':			true,
	 107  	'{':			true,
	 108  	'|':			true,
	 109  	'}':			true,
	 110  	'~':			true,
	 111  	'\u007f': true,
	 112  }
	 113  
	 114  // htmlSafeSet holds the value true if the ASCII character with the given
	 115  // array position can be safely represented inside a JSON string, embedded
	 116  // inside of HTML <script> tags, without any additional escaping.
	 117  //
	 118  // All values are true except for the ASCII control characters (0-31), the
	 119  // double quote ("), the backslash character ("\"), HTML opening and closing
	 120  // tags ("<" and ">"), and the ampersand ("&").
	 121  var htmlSafeSet = [utf8.RuneSelf]bool{
	 122  	' ':			true,
	 123  	'!':			true,
	 124  	'"':			false,
	 125  	'#':			true,
	 126  	'$':			true,
	 127  	'%':			true,
	 128  	'&':			false,
	 129  	'\'':		 true,
	 130  	'(':			true,
	 131  	')':			true,
	 132  	'*':			true,
	 133  	'+':			true,
	 134  	',':			true,
	 135  	'-':			true,
	 136  	'.':			true,
	 137  	'/':			true,
	 138  	'0':			true,
	 139  	'1':			true,
	 140  	'2':			true,
	 141  	'3':			true,
	 142  	'4':			true,
	 143  	'5':			true,
	 144  	'6':			true,
	 145  	'7':			true,
	 146  	'8':			true,
	 147  	'9':			true,
	 148  	':':			true,
	 149  	';':			true,
	 150  	'<':			false,
	 151  	'=':			true,
	 152  	'>':			false,
	 153  	'?':			true,
	 154  	'@':			true,
	 155  	'A':			true,
	 156  	'B':			true,
	 157  	'C':			true,
	 158  	'D':			true,
	 159  	'E':			true,
	 160  	'F':			true,
	 161  	'G':			true,
	 162  	'H':			true,
	 163  	'I':			true,
	 164  	'J':			true,
	 165  	'K':			true,
	 166  	'L':			true,
	 167  	'M':			true,
	 168  	'N':			true,
	 169  	'O':			true,
	 170  	'P':			true,
	 171  	'Q':			true,
	 172  	'R':			true,
	 173  	'S':			true,
	 174  	'T':			true,
	 175  	'U':			true,
	 176  	'V':			true,
	 177  	'W':			true,
	 178  	'X':			true,
	 179  	'Y':			true,
	 180  	'Z':			true,
	 181  	'[':			true,
	 182  	'\\':		 false,
	 183  	']':			true,
	 184  	'^':			true,
	 185  	'_':			true,
	 186  	'`':			true,
	 187  	'a':			true,
	 188  	'b':			true,
	 189  	'c':			true,
	 190  	'd':			true,
	 191  	'e':			true,
	 192  	'f':			true,
	 193  	'g':			true,
	 194  	'h':			true,
	 195  	'i':			true,
	 196  	'j':			true,
	 197  	'k':			true,
	 198  	'l':			true,
	 199  	'm':			true,
	 200  	'n':			true,
	 201  	'o':			true,
	 202  	'p':			true,
	 203  	'q':			true,
	 204  	'r':			true,
	 205  	's':			true,
	 206  	't':			true,
	 207  	'u':			true,
	 208  	'v':			true,
	 209  	'w':			true,
	 210  	'x':			true,
	 211  	'y':			true,
	 212  	'z':			true,
	 213  	'{':			true,
	 214  	'|':			true,
	 215  	'}':			true,
	 216  	'~':			true,
	 217  	'\u007f': true,
	 218  }
	 219  

View as plain text