1f497f9feSJoshua M. Clulow
2*fe73c3d8SBryan Cantrilltst	|empty array|
3*fe73c3d8SBryan Cantrillin	|[]|
4*fe73c3d8SBryan Cantrillsel	|0|
5*fe73c3d8SBryan Cantrillout	|<NULL>|
6*fe73c3d8SBryan Cantrill
7*fe73c3d8SBryan Cantrilltst	|one-element array: integer|
8*fe73c3d8SBryan Cantrillin	|[1]|
9*fe73c3d8SBryan Cantrillsel	|0|
10*fe73c3d8SBryan Cantrillout	|1|
11*fe73c3d8SBryan Cantrillsel	|1|
12*fe73c3d8SBryan Cantrillout	|<NULL>|
13*fe73c3d8SBryan Cantrillsel	|100|
14*fe73c3d8SBryan Cantrillout	|<NULL>|
15*fe73c3d8SBryan Cantrillsel	|-1|
16*fe73c3d8SBryan Cantrillout	|<NULL>|
17*fe73c3d8SBryan Cantrill
18*fe73c3d8SBryan Cantrilltst	|one-element array: hex integer (not in spec, not supported)|
19*fe73c3d8SBryan Cantrillin	|[0x1000]|
20*fe73c3d8SBryan Cantrillsel	|0|
21*fe73c3d8SBryan Cantrillout	|<NULL>|
22*fe73c3d8SBryan Cantrill
23*fe73c3d8SBryan Cantrilltst	|one-element array: float|
24*fe73c3d8SBryan Cantrillin	|[1.5001]|
25*fe73c3d8SBryan Cantrillsel	|0|
26*fe73c3d8SBryan Cantrillout	|1.5001|
27*fe73c3d8SBryan Cantrill
28*fe73c3d8SBryan Cantrilltst	|one-element array: float + exponent|
29*fe73c3d8SBryan Cantrillin	|[16.3e10]|
30*fe73c3d8SBryan Cantrillsel	|0|
31*fe73c3d8SBryan Cantrillout	|16.3e10|
32*fe73c3d8SBryan Cantrill
33*fe73c3d8SBryan Cantrilltst	|one-element array: integer + whitespace|
34*fe73c3d8SBryan Cantrillin	|[ 	   5	]|
35*fe73c3d8SBryan Cantrillsel	|0|
36*fe73c3d8SBryan Cantrillout	|5|
37*fe73c3d8SBryan Cantrill
38*fe73c3d8SBryan Cantrilltst	|one-element array: integer + exponent + whitespace|
39*fe73c3d8SBryan Cantrillin	|[ 	    	 16E10  	 ]|
40*fe73c3d8SBryan Cantrillsel	|0|
41*fe73c3d8SBryan Cantrillout	|16E10|
42*fe73c3d8SBryan Cantrill
43*fe73c3d8SBryan Cantrilltst	|one-element array: string|
44*fe73c3d8SBryan Cantrillin	|["alpha"]|
45*fe73c3d8SBryan Cantrillsel	|0|
46*fe73c3d8SBryan Cantrillout	|alpha|
47*fe73c3d8SBryan Cantrill
48*fe73c3d8SBryan Cantrilltst	|alternative first-element indexing|
49*fe73c3d8SBryan Cantrillin	|[1,5,10,15,20]|
50*fe73c3d8SBryan Cantrillsel	|[0]|
51*fe73c3d8SBryan Cantrillout	|1|
52*fe73c3d8SBryan Cantrillsel	|[3]|
53*fe73c3d8SBryan Cantrillout	|15|
54*fe73c3d8SBryan Cantrillsel	|[4]|
55*fe73c3d8SBryan Cantrillout	|20|
56*fe73c3d8SBryan Cantrillsel	|[5]|
57*fe73c3d8SBryan Cantrillout	|<NULL>|
58*fe73c3d8SBryan Cantrill
59*fe73c3d8SBryan Cantrilltst	|one-element array: object|
60*fe73c3d8SBryan Cantrillin	|[ { "first": true, "second": false }]|
61*fe73c3d8SBryan Cantrillsel	|0.first|
62*fe73c3d8SBryan Cantrillout	|true|
63*fe73c3d8SBryan Cantrillsel	|0.second|
64*fe73c3d8SBryan Cantrillout	|false|
65*fe73c3d8SBryan Cantrillsel	|0.third|
66*fe73c3d8SBryan Cantrillout	|<NULL>|
67*fe73c3d8SBryan Cantrill
68*fe73c3d8SBryan Cantrilltst	|many-element array: integers|
69*fe73c3d8SBryan Cantrillin	|[0,1,1,2,3,5,8,13,21,34,55,89,144,233,377]|
70*fe73c3d8SBryan Cantrillsel	|10|
71*fe73c3d8SBryan Cantrillout	|55|
72*fe73c3d8SBryan Cantrillsel	|14|
73*fe73c3d8SBryan Cantrillout	|377|
74*fe73c3d8SBryan Cantrillsel	|19|
75*fe73c3d8SBryan Cantrillout	|<NULL>|
76*fe73c3d8SBryan Cantrill
77*fe73c3d8SBryan Cantrilltst	|many-element array: multiple types|
78*fe73c3d8SBryan Cantrillin	|["string",32,true,{"a":9,"b":false},100.3e10,false,200.5,{"key":"val"},null]|
79*fe73c3d8SBryan Cantrillsel	|0|
80*fe73c3d8SBryan Cantrillout	|string|
81*fe73c3d8SBryan Cantrillsel	|0.notobject|
82*fe73c3d8SBryan Cantrillout	|<NULL>|
83*fe73c3d8SBryan Cantrillsel	|1|
84*fe73c3d8SBryan Cantrillout	|32|
85*fe73c3d8SBryan Cantrillsel	|2|
86*fe73c3d8SBryan Cantrillout	|true|
87*fe73c3d8SBryan Cantrillsel	|3|
88*fe73c3d8SBryan Cantrillout	|{"a":9,"b":false}|
89*fe73c3d8SBryan Cantrillsel	|3.a|
90*fe73c3d8SBryan Cantrillout	|9|
91*fe73c3d8SBryan Cantrillsel	|3.b|
92*fe73c3d8SBryan Cantrillout	|false|
93*fe73c3d8SBryan Cantrillsel	|3.c|
94*fe73c3d8SBryan Cantrillout	|<NULL>|
95*fe73c3d8SBryan Cantrillsel	|4|
96*fe73c3d8SBryan Cantrillout	|100.3e10|
97*fe73c3d8SBryan Cantrillsel	|5|
98*fe73c3d8SBryan Cantrillout	|false|
99*fe73c3d8SBryan Cantrillsel	|6|
100*fe73c3d8SBryan Cantrillout	|200.5|
101*fe73c3d8SBryan Cantrillsel	|7|
102*fe73c3d8SBryan Cantrillout	|{"key":"val"}|
103*fe73c3d8SBryan Cantrillsel	|7.key|
104*fe73c3d8SBryan Cantrillout	|val|
105*fe73c3d8SBryan Cantrillsel	|7.key.notobject|
106*fe73c3d8SBryan Cantrillout	|<NULL>|
107*fe73c3d8SBryan Cantrillsel	|7.nonexist|
108*fe73c3d8SBryan Cantrillout	|<NULL>|
109*fe73c3d8SBryan Cantrillsel	|8|
110*fe73c3d8SBryan Cantrillout	|null|
111*fe73c3d8SBryan Cantrillsel	|9|
112*fe73c3d8SBryan Cantrillout	|<NULL>|
113*fe73c3d8SBryan Cantrill
114*fe73c3d8SBryan Cantrilltst	|many-element array: multiple types + whitespace|
115*fe73c3d8SBryan Cantrillin	|
116f497f9feSJoshua M. Clulow[	"string" ,	32 , true	,	 {"a":  9,	"b": false},		100.3e10, false, 200.5,{"key" 	:
117f497f9feSJoshua M. Clulow "val"},		 null ]		|
118*fe73c3d8SBryan Cantrillsel	|0|
119*fe73c3d8SBryan Cantrillout	|string|
120*fe73c3d8SBryan Cantrillsel	|0.notobject|
121*fe73c3d8SBryan Cantrillout	|<NULL>|
122*fe73c3d8SBryan Cantrillsel	|1|
123*fe73c3d8SBryan Cantrillout	|32|
124*fe73c3d8SBryan Cantrillsel	|2|
125*fe73c3d8SBryan Cantrillout	|true|
126*fe73c3d8SBryan Cantrillsel	|3|
127*fe73c3d8SBryan Cantrillout	|{"a":  9,	"b": false}|
128*fe73c3d8SBryan Cantrillsel	|3.a|
129*fe73c3d8SBryan Cantrillout	|9|
130*fe73c3d8SBryan Cantrillsel	|3.b|
131*fe73c3d8SBryan Cantrillout	|false|
132*fe73c3d8SBryan Cantrillsel	|3.c|
133*fe73c3d8SBryan Cantrillout	|<NULL>|
134*fe73c3d8SBryan Cantrillsel	|4|
135*fe73c3d8SBryan Cantrillout	|100.3e10|
136*fe73c3d8SBryan Cantrillsel	|5|
137*fe73c3d8SBryan Cantrillout	|false|
138*fe73c3d8SBryan Cantrillsel	|6|
139*fe73c3d8SBryan Cantrillout	|200.5|
140*fe73c3d8SBryan Cantrillsel	|7|
141*fe73c3d8SBryan Cantrillout	|{"key" 	:
142f497f9feSJoshua M. Clulow "val"}|
143*fe73c3d8SBryan Cantrillsel	|7.key|
144*fe73c3d8SBryan Cantrillout	|val|
145*fe73c3d8SBryan Cantrillsel	|7.key.notobject|
146*fe73c3d8SBryan Cantrillout	|<NULL>|
147*fe73c3d8SBryan Cantrillsel	|7.nonexist|
148*fe73c3d8SBryan Cantrillout	|<NULL>|
149*fe73c3d8SBryan Cantrillsel	|8|
150*fe73c3d8SBryan Cantrillout	|null|
151*fe73c3d8SBryan Cantrillsel	|9|
152*fe73c3d8SBryan Cantrillout	|<NULL>|
153*fe73c3d8SBryan Cantrill
154*fe73c3d8SBryan Cantrilltst	|two-element array: various string escape codes|
155*fe73c3d8SBryan Cantrillin	|["abcd \" \\ \/ \b \f \n \r \t \u0000 \uf00F ", "final"]|
156*fe73c3d8SBryan Cantrillsel	|0|
157*fe73c3d8SBryan Cantrillout	|abcd \" \\ \/ \b \f \n \r \t \u0000 \uf00F |
158*fe73c3d8SBryan Cantrillsel	|1|
159*fe73c3d8SBryan Cantrillout	|final|
160*fe73c3d8SBryan Cantrill
161*fe73c3d8SBryan Cantrilltst	|three-element array: broken escape code|
162*fe73c3d8SBryan Cantrillin	|["fine here", "dodgey \u00AZ", "wont get here"]|
163*fe73c3d8SBryan Cantrillsel	|0|
164*fe73c3d8SBryan Cantrillout	|fine here|
165*fe73c3d8SBryan Cantrillsel	|1|
166*fe73c3d8SBryan Cantrillout	|<NULL>|
167*fe73c3d8SBryan Cantrillsel	|2|
168*fe73c3d8SBryan Cantrillout	|<NULL>|
169*fe73c3d8SBryan Cantrill
170*fe73c3d8SBryan Cantrilltst	|nested objects|
171*fe73c3d8SBryan Cantrillin	|{ "top": { "mid"  : { "legs": "feet" }, "number": 9, "array":[0,1,{"a":true,"bb":[1,2,false,{"x":"yz"}]}]}}|
172*fe73c3d8SBryan Cantrillsel	|top|
173*fe73c3d8SBryan Cantrillout	|{ "mid"  : { "legs": "feet" }, "number": 9, "array":[0,1,{"a":true,"bb":[1,2,false,{"x":"yz"}]}]}|
174*fe73c3d8SBryan Cantrillsel	|fargo|
175*fe73c3d8SBryan Cantrillout	|<NULL>|
176*fe73c3d8SBryan Cantrillsel	|top.mid|
177*fe73c3d8SBryan Cantrillout	|{ "legs": "feet" }|
178*fe73c3d8SBryan Cantrillsel	|top.centre|
179*fe73c3d8SBryan Cantrillout	|<NULL>|
180*fe73c3d8SBryan Cantrillsel	|top.mid.legs|
181*fe73c3d8SBryan Cantrillout	|feet|
182*fe73c3d8SBryan Cantrillsel	|top.mid.number|
183*fe73c3d8SBryan Cantrillout	|<NULL>|
184*fe73c3d8SBryan Cantrillsel	|top.mid.array|
185*fe73c3d8SBryan Cantrillout	|<NULL>|
186*fe73c3d8SBryan Cantrillsel	|top.number|
187*fe73c3d8SBryan Cantrillout	|9|
188*fe73c3d8SBryan Cantrillsel	|top.array|
189*fe73c3d8SBryan Cantrillout	|[0,1,{"a":true,"bb":[1,2,false,{"x":"yz"}]}]|
190*fe73c3d8SBryan Cantrillsel	|top.array[0]|
191*fe73c3d8SBryan Cantrillout	|0|
192*fe73c3d8SBryan Cantrillsel	|top.array[1]|
193*fe73c3d8SBryan Cantrillout	|1|
194*fe73c3d8SBryan Cantrillsel	|top.array[2]|
195*fe73c3d8SBryan Cantrillout	|{"a":true,"bb":[1,2,false,{"x":"yz"}]}|
196*fe73c3d8SBryan Cantrillsel	|top.array[2].a|
197*fe73c3d8SBryan Cantrillout	|true|
198*fe73c3d8SBryan Cantrillsel	|top.array[2].b|
199*fe73c3d8SBryan Cantrillout	|<NULL>|
200*fe73c3d8SBryan Cantrillsel	|top.array[2].bb|
201*fe73c3d8SBryan Cantrillout	|[1,2,false,{"x":"yz"}]|
202*fe73c3d8SBryan Cantrillsel	|top.array[2].bb[0]|
203*fe73c3d8SBryan Cantrillout	|1|
204*fe73c3d8SBryan Cantrillsel	|top.array[2].bb[1]|
205*fe73c3d8SBryan Cantrillout	|2|
206*fe73c3d8SBryan Cantrillsel	|top.array[2].bb[2]|
207*fe73c3d8SBryan Cantrillout	|false|
208*fe73c3d8SBryan Cantrillsel	|top.array[2].bb[3]|
209*fe73c3d8SBryan Cantrillout	|{"x":"yz"}|
210*fe73c3d8SBryan Cantrillsel	|top.array[2].bb[3].x|
211*fe73c3d8SBryan Cantrillout	|yz|
212*fe73c3d8SBryan Cantrillsel	|top.array[2].bb[3].x.nofurther|
213*fe73c3d8SBryan Cantrillout	|<NULL>|
214*fe73c3d8SBryan Cantrillsel	|top.array[2].bb[4]|
215*fe73c3d8SBryan Cantrillout	|<NULL>|
216*fe73c3d8SBryan Cantrillsel	|top.array[3]|
217*fe73c3d8SBryan Cantrillout	|<NULL>|
218f497f9feSJoshua M. Clulow
219