@@ -100,31 +100,27 @@ Here is a performance comparison of various JSONPath queries on the standard boo
100100| Method | Mean | Error | StdDev | Gen0 | Gen1 | Allocated |
101101| ------------------------ | ----------:| -----------:| ----------:| -------:| -------:| ----------:|
102102| ` $..[?(@.price < 10)] `
103- | JsonCraft.JsonElement | 2.957 us | 1.1397 us | 0.0625 us | 0.2899 | - | 3.59 KB |
104103| Hyperbee.JsonElement | 5.221 us | 0.8505 us | 0.0466 us | 1.2894 | 0.0076 | 15.84 KB |
105104| JsonCons.JsonElement | 5.518 us | 1.3367 us | 0.0733 us | 1.0376 | 0.0076 | 12.73 KB |
106105| Hyperbee.JsonNode | 5.915 us | 0.8714 us | 0.0478 us | 1.4954 | 0.0153 | 18.38 KB |
107106| Newtonsoft.JObject | 8.009 us | 1.7612 us | 0.0965 us | 2.1057 | 0.0763 | 25.86 KB |
108107| JsonEverything.JsonNode | 17.850 us | 12.0238 us | 0.6591 us | 3.9063 | 0.1221 | 48.15 KB |
109108| | | | | | | |
110109| ` $..['bicycle','price'] `
111- | JsonCraft.JsonElement | 2.309 us | 0.2498 us | 0.0137 us | 0.3242 | - | 4.01 KB |
112110| Hyperbee.JsonElement | 2.701 us | 1.0824 us | 0.0593 us | 0.4158 | - | 5.12 KB |
113111| JsonCons.JsonElement | 3.058 us | 0.3820 us | 0.0209 us | 0.5760 | 0.0038 | 7.09 KB |
114112| Hyperbee.JsonNode | 3.626 us | 1.3209 us | 0.0724 us | 0.7210 | 0.0114 | 8.84 KB |
115113| Newtonsoft.JObject | 4.990 us | 1.5961 us | 0.0875 us | 1.1826 | 0.0458 | 14.55 KB |
116114| JsonEverything.JsonNode | 12.183 us | 2.7932 us | 0.1531 us | 2.3193 | 0.0610 | 28.5 KB |
117115| | | | | | | |
118116| ` $..* `
119- | JsonCraft.JsonElement | 2.023 us | 0.4743 us | 0.0260 us | 0.2327 | - | 2.88 KB |
120117| Hyperbee.JsonElement | 2.390 us | 0.7132 us | 0.0391 us | 0.5226 | 0.0038 | 6.45 KB |
121118| JsonCons.JsonElement | 3.239 us | 0.8771 us | 0.0481 us | 0.6866 | 0.0038 | 8.45 KB |
122119| Hyperbee.JsonNode | 3.864 us | 2.6714 us | 0.1464 us | 0.7629 | - | 9.54 KB |
123120| Newtonsoft.JObject | 4.864 us | 0.7073 us | 0.0388 us | 1.1520 | 0.0458 | 14.19 KB |
124121| JsonEverything.JsonNode | 17.367 us | 10.7988 us | 0.5919 us | 2.7466 | 0.0610 | 33.97 KB |
125122| | | | | | | |
126123|` $..author `
127- | JsonCraft.JsonElement | 2.071 us | 0.8571 us | 0.0470 us | 0.2327 | - | 2.88 KB |
128124| Hyperbee.JsonElement | 2.275 us | 0.5597 us | 0.0307 us | 0.4158 | - | 5.1 KB |
129125| JsonCons.JsonElement | 2.572 us | 0.2856 us | 0.0157 us | 0.4463 | 0.0038 | 5.47 KB |
130126| Hyperbee.JsonNode | 3.226 us | 0.6372 us | 0.0349 us | 0.7019 | - | 8.64 KB |
@@ -136,27 +132,23 @@ Here is a performance comparison of various JSONPath queries on the standard boo
136132| JsonCons.JsonElement | 3.348 us | 0.4197 us | 0.0230 us | 0.5836 | 0.0038 | 7.16 KB |
137133| Hyperbee.JsonNode | 3.587 us | 1.1927 us | 0.0654 us | 0.7629 | - | 9.64 KB |
138134| JsonEverything.JsonNode | 12.860 us | 6.6350 us | 0.3637 us | 2.4414 | 0.0610 | 29.98 KB |
139- | JsonCraft.JsonElement | NA | NA | NA | NA | NA | NA |
140135| Newtonsoft.JObject | NA | NA | NA | NA | NA | NA |
141136| | | | | | | |
142137| ` $..book[?@.price == 8.99 && @.category == 'fiction'] `
143138| Hyperbee.JsonElement | 3.599 us | 1.1407 us | 0.0625 us | 0.6752 | 0.0038 | 8.28 KB |
144139| Hyperbee.JsonNode | 4.593 us | 2.6977 us | 0.1479 us | 0.9460 | - | 11.91 KB |
145140| JsonCons.JsonElement | 4.684 us | 3.2355 us | 0.1774 us | 0.6866 | - | 8.48 KB |
146141| JsonEverything.JsonNode | 17.000 us | 14.9488 us | 0.8194 us | 3.1738 | - | 39.52 KB |
147- | JsonCraft.JsonElement | NA | NA | NA | NA | NA | NA |
148142| Newtonsoft.JObject | NA | NA | NA | NA | NA | NA |
149143| | | | | | | |
150144| $..book[ 0,1]
151- | JsonCraft.JsonElement | 2.184 us | 1.1145 us | 0.0611 us | 0.2518 | - | 3.09 KB |
152145| Hyperbee.JsonElement | 2.316 us | 0.6324 us | 0.0347 us | 0.4158 | - | 5.1 KB |
153146| JsonCons.JsonElement | 2.973 us | 3.2806 us | 0.1798 us | 0.4921 | 0.0038 | 6.06 KB |
154147| Hyperbee.JsonNode | 3.363 us | 2.4201 us | 0.1327 us | 0.7019 | 0.0038 | 8.64 KB |
155148| Newtonsoft.JObject | 4.709 us | 1.1244 us | 0.0616 us | 1.1749 | 0.0458 | 14.45 KB |
156149| JsonEverything.JsonNode | 11.585 us | 1.1525 us | 0.0632 us | 2.1362 | 0.0610 | 26.41 KB |
157150| | | | | | | |
158151| ` $..book[0] `
159- | JsonCraft.JsonElement | 2.097 us | 0.7390 us | 0.0405 us | 0.2441 | - | 3 KB |
160152| Hyperbee.JsonElement | 2.417 us | 0.4037 us | 0.0221 us | 0.4158 | - | 5.1 KB |
161153| JsonCons.JsonElement | 2.767 us | 1.0765 us | 0.0590 us | 0.4539 | 0.0038 | 5.59 KB |
162154| Hyperbee.JsonNode | 3.439 us | 2.6110 us | 0.1431 us | 0.7019 | - | 8.64 KB |
@@ -165,14 +157,12 @@ Here is a performance comparison of various JSONPath queries on the standard boo
165157| | | | | | | |
166158| ` $.store..price `
167159| Hyperbee.JsonElement | 2.174 us | 0.2046 us | 0.0112 us | 0.3853 | - | 4.73 KB |
168- | JsonCraft.JsonElement | 2.174 us | 0.9541 us | 0.0523 us | 0.2518 | - | 3.13 KB |
169160| JsonCons.JsonElement | 2.657 us | 1.2199 us | 0.0669 us | 0.4539 | - | 5.57 KB |
170161| Hyperbee.JsonNode | 3.219 us | 1.6130 us | 0.0884 us | 0.6828 | - | 8.38 KB |
171162| Newtonsoft.JObject | 4.751 us | 0.3461 us | 0.0190 us | 1.1673 | 0.0381 | 14.34 KB |
172163| JsonEverything.JsonNode | 12.312 us | 4.6283 us | 0.2537 us | 2.1362 | 0.0610 | 26.63 KB |
173164| | | | | | | |
174165| ` $.store.* `
175- | JsonCraft.JsonElement | 1.415 us | 0.5540 us | 0.0304 us | 0.2022 | - | 2.49 KB |
176166| Hyperbee.JsonElement | 1.564 us | 0.4252 us | 0.0233 us | 0.2289 | - | 2.81 KB |
177167| JsonCons.JsonElement | 1.699 us | 0.5680 us | 0.0311 us | 0.2651 | - | 3.27 KB |
178168| Hyperbee.JsonNode | 1.762 us | 0.0234 us | 0.0013 us | 0.2365 | 0.0019 | 2.9 KB |
@@ -181,54 +171,47 @@ Here is a performance comparison of various JSONPath queries on the standard boo
181171| | | | | | | |
182172| ` $.store.bicycle.color `
183173| Hyperbee.JsonElement | 1.415 us | 0.3898 us | 0.0214 us | 0.1755 | - | 2.17 KB |
184- | JsonCraft.JsonElement | 1.532 us | 0.2165 us | 0.0119 us | 0.1984 | - | 2.45 KB |
185174| JsonCons.JsonElement | 1.671 us | 0.2610 us | 0.0143 us | 0.2632 | - | 3.23 KB |
186175| Hyperbee.JsonNode | 1.706 us | 0.4849 us | 0.0266 us | 0.2346 | - | 2.88 KB |
187176| JsonEverything.JsonNode | 2.629 us | 1.6792 us | 0.0920 us | 0.4654 | 0.0038 | 5.74 KB |
188177| Newtonsoft.JObject | 4.336 us | 1.2294 us | 0.0674 us | 1.1826 | 0.0381 | 14.49 KB |
189178| | | | | | | |
190179| ` $.store.book[-1:] `
191- | JsonCraft.JsonElement | 1.479 us | 0.1113 us | 0.0061 us | 0.2098 | - | 2.58 KB |
192180| Hyperbee.JsonElement | 1.515 us | 0.3284 us | 0.0180 us | 0.1945 | - | 2.41 KB |
193181| JsonCons.JsonElement | 1.813 us | 0.0749 us | 0.0041 us | 0.2861 | 0.0019 | 3.52 KB |
194182| Hyperbee.JsonNode | 1.821 us | 0.1880 us | 0.0103 us | 0.2422 | - | 2.97 KB |
195183| JsonEverything.JsonNode | 2.686 us | 0.5270 us | 0.0289 us | 0.4654 | 0.0038 | 5.72 KB |
196184| Newtonsoft.JObject | 4.390 us | 0.6167 us | 0.0338 us | 1.1826 | 0.0534 | 14.52 KB |
197185| | | | | | | |
198186| ` $.store.book[:2] `
199- | JsonCraft.JsonElement | 1.547 us | 0.3302 us | 0.0181 us | 0.2098 | - | 2.58 KB |
200187| Hyperbee.JsonElement | 1.554 us | 1.0503 us | 0.0576 us | 0.1945 | - | 2.41 KB |
201188| JsonCons.JsonElement | 1.867 us | 0.9304 us | 0.0510 us | 0.2880 | - | 3.54 KB |
202189| Hyperbee.JsonNode | 1.869 us | 0.2955 us | 0.0162 us | 0.2289 | - | 2.97 KB |
203190| JsonEverything.JsonNode | 3.112 us | 1.4792 us | 0.0811 us | 0.4883 | - | 6.02 KB |
204191| Newtonsoft.JObject | 4.344 us | 4.3641 us | 0.2392 us | 1.1826 | 0.0305 | 14.51 KB |
205192| | | | | | | |
206193| ` $.store.book[?(@.author && @.title)] `
207- | JsonCraft.JsonElement | 1.924 us | 0.1844 us | 0.0101 us | 0.2689 | 0.0019 | 3.3 KB |
208194| Hyperbee.JsonElement | 2.331 us | 0.8201 us | 0.0450 us | 0.3395 | - | 4.18 KB |
209195| JsonCons.JsonElement | 2.776 us | 0.5326 us | 0.0292 us | 0.4539 | 0.0038 | 5.58 KB |
210196| Hyperbee.JsonNode | 3.377 us | 0.4035 us | 0.0221 us | 0.6561 | 0.0076 | 8.08 KB |
211197| Newtonsoft.JObject | 4.779 us | 2.3452 us | 0.1285 us | 1.3199 | 0.0458 | 16.18 KB |
212198| JsonEverything.JsonNode | 6.403 us | 1.9211 us | 0.1053 us | 1.4648 | 0.0305 | 18.32 KB |
213199| | | | | | | |
214200| ` $.store.book[?(@.category == 'fiction')] `
215- | JsonCraft.JsonElement | 2.038 us | 0.5141 us | 0.0282 us | 0.2747 | - | 3.38 KB |
216201| Hyperbee.JsonElement | 2.317 us | 0.2970 us | 0.0163 us | 0.3510 | - | 4.34 KB |
217202| JsonCons.JsonElement | 2.643 us | 0.8319 us | 0.0456 us | 0.4082 | 0.0038 | 5.01 KB |
218203| Hyperbee.JsonNode | 3.393 us | 0.3912 us | 0.0214 us | 0.6561 | - | 8.2 KB |
219204| Newtonsoft.JObject | 4.663 us | 1.3455 us | 0.0737 us | 1.2817 | 0.0458 | 15.74 KB |
220205| JsonEverything.JsonNode | 6.502 us | 4.8220 us | 0.2643 us | 1.3428 | 0.0305 | 16.49 KB |
221206| | | | | | | |
222207| ` $.store.book[?(@.price < 10)].title `
223- | JsonCraft.JsonElement | 2.349 us | 0.1454 us | 0.0080 us | 0.2747 | - | 3.37 KB |
224208| Hyperbee.JsonElement | 2.379 us | 0.2508 us | 0.0137 us | 0.3548 | - | 4.35 KB |
225209| JsonCons.JsonElement | 3.008 us | 1.7216 us | 0.0944 us | 0.4196 | - | 5.18 KB |
226210| Hyperbee.JsonNode | 3.453 us | 0.6436 us | 0.0353 us | 0.6561 | - | 8.09 KB |
227211| Newtonsoft.JObject | 4.762 us | 1.8678 us | 0.1024 us | 1.2894 | 0.0534 | 15.89 KB |
228212| JsonEverything.JsonNode | 6.891 us | 1.2944 us | 0.0709 us | 1.4114 | 0.0381 | 17.38 KB |
229213| | | | | | | |
230214| ` $.store.book[?(@.price > 10 && @.price < 20)] `
231- | JsonCraft.JsonElement | 2.637 us | 0.3234 us | 0.0177 us | 0.3090 | - | 3.82 KB |
232215| Hyperbee.JsonElement | 2.730 us | 0.9871 us | 0.0541 us | 0.4349 | 0.0038 | 5.37 KB |
233216| JsonCons.JsonElement | 3.726 us | 0.1036 us | 0.0057 us | 0.5074 | 0.0038 | 6.23 KB |
234217| Hyperbee.JsonNode | 4.091 us | 0.3535 us | 0.0194 us | 0.7324 | - | 9.14 KB |
@@ -240,27 +223,23 @@ Here is a performance comparison of various JSONPath queries on the standard boo
240223| JsonCons.JsonElement | 2.763 us | 1.0265 us | 0.0563 us | 0.4044 | - | 4.97 KB |
241224| Hyperbee.JsonNode | 3.416 us | 2.2807 us | 0.1250 us | 0.6409 | - | 7.89 KB |
242225| JsonEverything.JsonNode | 6.221 us | 5.2637 us | 0.2885 us | 1.2512 | 0.0305 | 15.47 KB |
243- | JsonCraft.JsonElement | NA | NA | NA | NA | NA | NA |
244226| Newtonsoft.JObject | NA | NA | NA | NA | NA | NA |
245227| | | | | | | |
246228| ` $.store.book['category','author'] `
247- | JsonCraft.JsonElement | 1.575 us | 0.1797 us | 0.0099 us | 0.2403 | - | 2.95 KB |
248229| Hyperbee.JsonElement | 1.931 us | 0.2480 us | 0.0136 us | 0.2117 | - | 2.61 KB |
249230| JsonCons.JsonElement | 1.955 us | 0.6808 us | 0.0373 us | 0.2937 | 0.0019 | 3.61 KB |
250231| JsonEverything.JsonNode | 2.794 us | 4.9383 us | 0.2707 us | 0.4272 | - | 5.41 KB |
251232| Hyperbee.JsonNode | 2.973 us | 1.8205 us | 0.0998 us | 0.5188 | - | 6.42 KB |
252233| Newtonsoft.JObject | 4.169 us | 1.0726 us | 0.0588 us | 1.2054 | 0.0534 | 14.85 KB |
253234| | | | | | | |
254235| ` $.store.book[*].author `
255- | JsonCraft.JsonElement | 1.718 us | 0.1185 us | 0.0065 us | 0.2136 | 0.0019 | 2.63 KB |
256236| Hyperbee.JsonElement | 1.910 us | 0.2440 us | 0.0134 us | 0.2480 | - | 3.05 KB |
257237| JsonCons.JsonElement | 1.972 us | 1.2539 us | 0.0687 us | 0.2861 | - | 3.55 KB |
258238| Hyperbee.JsonNode | 2.945 us | 0.7789 us | 0.0427 us | 0.5569 | 0.0076 | 6.83 KB |
259239| Newtonsoft.JObject | 4.415 us | 1.5198 us | 0.0833 us | 1.1902 | 0.0534 | 14.64 KB |
260240| JsonEverything.JsonNode | 5.322 us | 0.6684 us | 0.0366 us | 1.0071 | - | 12.45 KB |
261241| | | | | | | |
262242| ` $.store.book[*] `
263- | JsonCraft.JsonElement | 1.428 us | 0.1454 us | 0.0080 us | 0.1984 | - | 2.45 KB |
264243| Hyperbee.JsonElement | 1.707 us | 0.3096 us | 0.0170 us | 0.2155 | - | 2.65 KB |
265244| JsonCons.JsonElement | 1.725 us | 1.0244 us | 0.0562 us | 0.2728 | - | 3.35 KB |
266245| Hyperbee.JsonNode | 1.948 us | 0.1280 us | 0.0070 us | 0.2575 | - | 3.17 KB |
@@ -269,30 +248,26 @@ Here is a performance comparison of various JSONPath queries on the standard boo
269248| | | | | | | |
270249| ` $.store.book[0,1] `
271250| Hyperbee.JsonElement | 1.542 us | 0.2708 us | 0.0148 us | 0.1945 | - | 2.41 KB |
272- | JsonCraft.JsonElement | 1.570 us | 1.4388 us | 0.0789 us | 0.2136 | - | 2.64 KB |
273251| Hyperbee.JsonNode | 1.862 us | 0.2584 us | 0.0142 us | 0.2403 | - | 2.97 KB |
274252| JsonCons.JsonElement | 1.922 us | 0.6784 us | 0.0372 us | 0.3014 | - | 3.73 KB |
275253| JsonEverything.JsonNode | 3.016 us | 0.8618 us | 0.0472 us | 0.4883 | - | 6.07 KB |
276254| Newtonsoft.JObject | 4.287 us | 1.0252 us | 0.0562 us | 1.1902 | 0.0534 | 14.59 KB |
277255| | | | | | | |
278256| ` $.store.book[0].title `
279257| Hyperbee.JsonElement | 1.457 us | 0.3260 us | 0.0179 us | 0.1755 | - | 2.17 KB |
280- | JsonCraft.JsonElement | 1.768 us | 1.8446 us | 0.1011 us | 0.2041 | - | 2.51 KB |
281258| JsonCons.JsonElement | 1.808 us | 0.5749 us | 0.0315 us | 0.2689 | - | 3.3 KB |
282259| Hyperbee.JsonNode | 1.926 us | 0.6973 us | 0.0382 us | 0.2937 | - | 3.63 KB |
283260| JsonEverything.JsonNode | 3.203 us | 0.4522 us | 0.0248 us | 0.5951 | - | 7.38 KB |
284261| Newtonsoft.JObject | 4.559 us | 3.8857 us | 0.2130 us | 1.1902 | 0.0458 | 14.62 KB |
285262| | | | | | | |
286263| ` $.store.book[0] `
287264| Hyperbee.JsonElement | 1.349 us | 0.5027 us | 0.0276 us | 0.1755 | - | 2.17 KB |
288- | JsonCraft.JsonElement | 1.493 us | 0.5471 us | 0.0300 us | 0.1984 | - | 2.44 KB |
289265| Hyperbee.JsonNode | 1.657 us | 0.3633 us | 0.0199 us | 0.2327 | - | 2.86 KB |
290266| JsonCons.JsonElement | 1.733 us | 0.3863 us | 0.0212 us | 0.2613 | - | 3.21 KB |
291267| JsonEverything.JsonNode | 2.670 us | 0.6862 us | 0.0376 us | 0.4616 | 0.0038 | 5.68 KB |
292268| Newtonsoft.JObject | 4.155 us | 1.3012 us | 0.0713 us | 1.1749 | 0.0381 | 14.48 KB |
293269| | | | | | | |
294270| ` $ `
295- | JsonCraft.JsonElement | 1.299 us | 0.3820 us | 0.0209 us | 0.1793 | - | 2.22 KB |
296271| Hyperbee.JsonElement | 1.312 us | 0.2933 us | 0.0161 us | 0.1755 | - | 2.17 KB |
297272| Hyperbee.JsonNode | 1.322 us | 0.3885 us | 0.0213 us | 0.1411 | - | 1.75 KB |
298273| JsonEverything.JsonNode | 1.361 us | 0.2123 us | 0.0116 us | 0.1526 | - | 1.88 KB |
0 commit comments