summaryrefslogtreecommitdiffhomepage
path: root/vendor/toml++/impl/json_formatter.inl
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/toml++/impl/json_formatter.inl')
-rw-r--r--vendor/toml++/impl/json_formatter.inl187
1 files changed, 92 insertions, 95 deletions
diff --git a/vendor/toml++/impl/json_formatter.inl b/vendor/toml++/impl/json_formatter.inl
index ceffbd4..16bffc9 100644
--- a/vendor/toml++/impl/json_formatter.inl
+++ b/vendor/toml++/impl/json_formatter.inl
@@ -1,121 +1,118 @@
-//# This file is a part of toml++ and is subject to the the terms of the MIT license.
-//# Copyright (c) Mark Gillard <mark.gillard@outlook.com.au>
-//# See https://github.com/marzer/tomlplusplus/blob/master/LICENSE for the full license text.
-// SPDX-License-Identifier: MIT
+// # This file is a part of toml++ and is subject to the the terms of the MIT license.
+// # Copyright (c) Mark Gillard <mark.gillard@outlook.com.au>
+// # See https://github.com/marzer/tomlplusplus/blob/master/LICENSE for the full license text.
+// SPDX-License-Identifier: MIT
#pragma once
#include "preprocessor.hpp"
-//# {{
+// # {{
#if !TOML_IMPLEMENTATION
#error This is an implementation-only header.
#endif
-//# }}
+// # }}
#if TOML_ENABLE_FORMATTERS
+#include "array.hpp"
+#include "header_start.hpp"
#include "json_formatter.hpp"
#include "print_to_stream.hpp"
#include "table.hpp"
-#include "array.hpp"
-#include "header_start.hpp"
-TOML_NAMESPACE_START
-{
- TOML_EXTERNAL_LINKAGE
- void json_formatter::print(const toml::table& tbl)
- {
- if (tbl.empty())
- {
- print_unformatted("{}"sv);
- return;
- }
+TOML_NAMESPACE_START {
+ TOML_EXTERNAL_LINKAGE
+ void json_formatter::print(const toml::table& tbl) {
+ if (tbl.empty()) {
+ print_unformatted("{}"sv);
+ return;
+ }
- print_unformatted('{');
+ print_unformatted('{');
- if (indent_sub_tables())
- increase_indent();
- bool first = false;
- for (auto&& [k, v] : tbl)
- {
- if (first)
- print_unformatted(',');
- first = true;
- print_newline(true);
- print_indent();
+ if (indent_sub_tables()) increase_indent();
+ bool first = false;
+ for (auto&& [k, v] : tbl) {
+ if (first) print_unformatted(',');
+ first = true;
+ print_newline(true);
+ print_indent();
- print_string(k.str(), false);
- if (terse_kvps())
- print_unformatted(":"sv);
- else
- print_unformatted(" : "sv);
+ print_string(k.str(), false);
+ if (terse_kvps())
+ print_unformatted(":"sv);
+ else
+ print_unformatted(" : "sv);
- const auto type = v.type();
- TOML_ASSUME(type != node_type::none);
- switch (type)
- {
- case node_type::table: print(*reinterpret_cast<const table*>(&v)); break;
- case node_type::array: print(*reinterpret_cast<const array*>(&v)); break;
- default: print_value(v, type);
- }
- }
- if (indent_sub_tables())
- decrease_indent();
- print_newline(true);
- print_indent();
+ const auto type = v.type();
+ TOML_ASSUME(type != node_type::none);
+ switch (type) {
+ case node_type::table:
+ print(*reinterpret_cast<const table*>(&v));
+ break;
+ case node_type::array:
+ print(*reinterpret_cast<const array*>(&v));
+ break;
+ default:
+ print_value(v, type);
+ }
+ }
+ if (indent_sub_tables()) decrease_indent();
+ print_newline(true);
+ print_indent();
- print_unformatted('}');
- }
+ print_unformatted('}');
+ }
- TOML_EXTERNAL_LINKAGE
- void json_formatter::print(const toml::array& arr)
- {
- if (arr.empty())
- {
- print_unformatted("[]"sv);
- return;
- }
+ TOML_EXTERNAL_LINKAGE
+ void json_formatter::print(const toml::array& arr) {
+ if (arr.empty()) {
+ print_unformatted("[]"sv);
+ return;
+ }
- print_unformatted('[');
- if (indent_array_elements())
- increase_indent();
- for (size_t i = 0; i < arr.size(); i++)
- {
- if (i > 0u)
- print_unformatted(',');
- print_newline(true);
- print_indent();
+ print_unformatted('[');
+ if (indent_array_elements()) increase_indent();
+ for (size_t i = 0; i < arr.size(); i++) {
+ if (i > 0u) print_unformatted(',');
+ print_newline(true);
+ print_indent();
- auto& v = arr[i];
- const auto type = v.type();
- TOML_ASSUME(type != node_type::none);
- switch (type)
- {
- case node_type::table: print(*reinterpret_cast<const table*>(&v)); break;
- case node_type::array: print(*reinterpret_cast<const array*>(&v)); break;
- default: print_value(v, type);
- }
- }
- if (indent_array_elements())
- decrease_indent();
- print_newline(true);
- print_indent();
- print_unformatted(']');
- }
+ auto& v = arr[i];
+ const auto type = v.type();
+ TOML_ASSUME(type != node_type::none);
+ switch (type) {
+ case node_type::table:
+ print(*reinterpret_cast<const table*>(&v));
+ break;
+ case node_type::array:
+ print(*reinterpret_cast<const array*>(&v));
+ break;
+ default:
+ print_value(v, type);
+ }
+ }
+ if (indent_array_elements()) decrease_indent();
+ print_newline(true);
+ print_indent();
+ print_unformatted(']');
+ }
- TOML_EXTERNAL_LINKAGE
- void json_formatter::print()
- {
- if (dump_failed_parse_result())
- return;
+ TOML_EXTERNAL_LINKAGE
+ void json_formatter::print() {
+ if (dump_failed_parse_result()) return;
- switch (auto source_type = source().type())
- {
- case node_type::table: print(*reinterpret_cast<const table*>(&source())); break;
- case node_type::array: print(*reinterpret_cast<const array*>(&source())); break;
- default: print_value(source(), source_type);
- }
- }
+ switch (auto source_type = source().type()) {
+ case node_type::table:
+ print(*reinterpret_cast<const table*>(&source()));
+ break;
+ case node_type::array:
+ print(*reinterpret_cast<const array*>(&source()));
+ break;
+ default:
+ print_value(source(), source_type);
+ }
+ }
}
TOML_NAMESPACE_END;
#include "header_end.hpp"
-#endif // TOML_ENABLE_FORMATTERS
+#endif // TOML_ENABLE_FORMATTERS