File tree Expand file tree Collapse file tree 2 files changed +24
-32
lines changed
Expand file tree Collapse file tree 2 files changed +24
-32
lines changed Original file line number Diff line number Diff line change @@ -406,26 +406,22 @@ The next two functions will take as input a JSON document containing an array wi
406406simdjson::dom::parser parser{};
407407
408408bool ParseDouble(const char *j, double &d) {
409- simdjson::error_code error;
410- parser.parse(j, std::strlen(j)).at(0).get<double>().tie(d, error);
411- if (error) {
412- return false;
413- }
414- return true;
409+ simdjson::error_code error;
410+ parser.parse(j, std::strlen(j))
411+ .at(0)
412+ .get<double>()
413+ .tie(d, error);
414+ if (error) { return false; }
415+ return true;
415416}
416417
417418bool ParseString(const char *j, std::string &s) {
418- simdjson::error_code error;
419- std::string_view answer;
420- parser.parse(j,strlen(j))
419+ auto [answer, error] = parser.parse(j,strlen(j))
421420 .at(0)
422- .get<std::string_view>()
423- .tie(answer, error);
424- if (error) {
425- return false;
426- }
427- s.assign(answer.data(), answer.size());
428- return true;
421+ .get<std::string_view>();
422+ if (error) { return false; }
423+ s.assign(answer.data(), answer.size());
424+ return true;
429425}
430426```
431427
Original file line number Diff line number Diff line change @@ -189,27 +189,23 @@ simdjson::dom::parser parser;
189189
190190// See https://github.com/miloyip/nativejson-benchmark/blob/master/src/tests/simdjsontest.cpp
191191bool ParseDouble (const char *j, double &d) {
192- simdjson::error_code error;
193- parser.parse (j, std::strlen (j)).at (0 ).get <double >().tie (d, error);
194- if (error) {
195- return false ;
196- }
197- return true ;
192+ simdjson::error_code error;
193+ parser.parse (j, std::strlen (j))
194+ .at (0 )
195+ .get <double >()
196+ .tie (d, error);
197+ if (error) { return false ; }
198+ return true ;
198199}
199200
200201// See https://github.com/miloyip/nativejson-benchmark/blob/master/src/tests/simdjsontest.cpp
201202bool ParseString (const char *j, std::string &s) {
202- simdjson::error_code error;
203- std::string_view answer;
204- parser.parse (j,strlen (j))
203+ auto [answer, error] = parser.parse (j,strlen (j))
205204 .at (0 )
206- .get <std::string_view>()
207- .tie (answer, error);
208- if (error) {
209- return false ;
210- }
211- s.assign (answer.data (), answer.size ());
212- return true ;
205+ .get <std::string_view>();
206+ if (error) { return false ; }
207+ s.assign (answer.data (), answer.size ());
208+ return true ;
213209}
214210
215211
You can’t perform that action at this time.
0 commit comments