| 459 | // Examples with subfields |
| 460 | |
| 461 | void decode_csv_with_subfields() |
| 462 | { |
| 463 | const std::string s = R"(calculationPeriodCenters,paymentCenters,resetCenters |
| 464 | NY;LON,TOR,LON |
| 465 | NY,LON,TOR;LON |
| 466 | "NY";"LON","TOR","LON" |
| 467 | "NY","LON","TOR";"LON" |
| 468 | )"; |
| 469 | auto options1 = csv::csv_options{} |
| 470 | .assume_header(true) |
| 471 | .subfield_delimiter(';'); |
| 472 | |
| 473 | auto j1 = csv::decode_csv<jsoncons::json>(s,options1); |
| 474 | |
| 475 | auto print_options = jsoncons::json_options{} |
| 476 | .array_array_line_splits(jsoncons::line_split_kind::same_line) |
| 477 | .float_format(jsoncons::float_chars_format::fixed); |
| 478 | |
| 479 | std::cout << "(1)\n" << pretty_print(j1,print_options) << "\n\n"; |
| 480 | |
| 481 | auto options2 = csv::csv_options{} |
| 482 | .mapping_kind(csv::csv_mapping_kind::n_rows) |
| 483 | .subfield_delimiter(';'); |
| 484 | |
| 485 | auto j2 = csv::decode_csv<jsoncons::json>(s,options2); |
| 486 | std::cout << "(2)\n" << pretty_print(j2,print_options) << "\n\n"; |
| 487 | |
| 488 | auto options3 = csv::csv_options{} |
| 489 | .assume_header(true) |
| 490 | .mapping_kind(csv::csv_mapping_kind::m_columns) |
| 491 | .subfield_delimiter(';'); |
| 492 | |
| 493 | auto j3 = csv::decode_csv<jsoncons::json>(s,options3); |
| 494 | std::cout << "(3)\n" << pretty_print(j3,print_options) << "\n\n"; |
| 495 | } |
| 496 | |
| 497 | void encode_json_with_subfields() |
| 498 | { |
no test coverage detected