[tint] Namespace the strconv files
This cl moves the utils/strconv files into tint::strconv. The `std::endls` are converted to `\n` which follows the recommendations from the cpp core guidelines.
Bug: tint:1988
Change-Id: Ie3522e5fe774abc392eea31e7ef5fcd7e9be624a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/160861
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: dan sinclair <dsinclair@chromium.org>
diff --git a/src/tint/cmd/tint/BUILD.bazel b/src/tint/cmd/tint/BUILD.bazel
index 1abb879..e3065ee 100644
--- a/src/tint/cmd/tint/BUILD.bazel
+++ b/src/tint/cmd/tint/BUILD.bazel
@@ -102,11 +102,6 @@
],
"//conditions:default": [],
}) + select({
- ":tint_build_spv_reader": [
- "//src/tint/lang/spirv/reader",
- ],
- "//conditions:default": [],
- }) + select({
":tint_build_spv_reader_or_tint_build_spv_writer": [
"@spirv_tools",
],
diff --git a/src/tint/cmd/tint/BUILD.cmake b/src/tint/cmd/tint/BUILD.cmake
index bd4e4ed..76997ff 100644
--- a/src/tint/cmd/tint/BUILD.cmake
+++ b/src/tint/cmd/tint/BUILD.cmake
@@ -108,12 +108,6 @@
)
endif(TINT_BUILD_MSL_WRITER)
-if(TINT_BUILD_SPV_READER)
- tint_target_add_dependencies(tint_cmd_tint_cmd cmd
- tint_lang_spirv_reader
- )
-endif(TINT_BUILD_SPV_READER)
-
if(TINT_BUILD_SPV_READER OR TINT_BUILD_SPV_WRITER)
tint_target_add_external_dependencies(tint_cmd_tint_cmd cmd
"spirv-tools"
diff --git a/src/tint/cmd/tint/BUILD.gn b/src/tint/cmd/tint/BUILD.gn
index 4bb12ce..e00e667 100644
--- a/src/tint/cmd/tint/BUILD.gn
+++ b/src/tint/cmd/tint/BUILD.gn
@@ -105,10 +105,6 @@
]
}
- if (tint_build_spv_reader) {
- deps += [ "${tint_src_dir}/lang/spirv/reader" ]
- }
-
if (tint_build_spv_reader || tint_build_spv_writer) {
deps += [
"${tint_spirv_tools_dir}:spvtools_headers",
diff --git a/src/tint/cmd/tint/main.cc b/src/tint/cmd/tint/main.cc
index b873d1f..ca7d846 100644
--- a/src/tint/cmd/tint/main.cc
+++ b/src/tint/cmd/tint/main.cc
@@ -27,12 +27,9 @@
#include <charconv>
#include <cstdio>
-#include <fstream>
#include <iostream>
-#include <limits>
#include <memory>
#include <optional>
-#include <sstream>
#include <string>
#include <unordered_map>
#include <vector>
@@ -63,10 +60,6 @@
#include "src/tint/utils/text/string.h"
#include "src/tint/utils/text/string_stream.h"
-#if TINT_BUILD_SPV_READER
-#include "src/tint/lang/spirv/reader/reader.h"
-#endif // TINT_BUILD_SPV_READER
-
#if TINT_BUILD_WGSL_READER
#include "src/tint/lang/wgsl/reader/program_to_ir/program_to_ir.h"
#include "src/tint/lang/wgsl/reader/reader.h"
@@ -134,10 +127,10 @@
/// Prints the given hash value in a format string that the end-to-end test runner can parse.
[[maybe_unused]] void PrintHash(uint32_t hash) {
- std::cout << "<<HASH: 0x" << std::hex << hash << ">>" << std::endl;
+ std::cout << "<<HASH: 0x" << std::hex << hash << ">>\n";
}
-enum class Format {
+enum class Format : uint8_t {
kUnknown,
kNone,
kSpirv,
@@ -424,7 +417,7 @@
auto result = options.Parse(arguments);
if (!result) {
- std::cerr << result.Failure() << std::endl;
+ std::cerr << result.Failure() << "\n";
show_usage();
return false;
}
@@ -440,7 +433,7 @@
std::cerr << "override values must be of the form IDENTIFIER=VALUE";
return false;
}
- auto value = tint::ParseNumber<double>(parts[1]);
+ auto value = tint::strconv::ParseNumber<double>(parts[1]);
if (!value) {
std::cerr << "invalid override value: " << parts[1];
return false;
@@ -453,19 +446,19 @@
auto binding_points = tint::Split(*hlsl_rc_bp.value, ",");
if (binding_points.Length() != 2) {
std::cerr << "Invalid binding point for " << hlsl_rc_bp.name << ": "
- << *hlsl_rc_bp.value << std::endl;
+ << *hlsl_rc_bp.value << "\n";
return false;
}
- auto group = tint::ParseUint32(binding_points[0]);
+ auto group = tint::strconv::ParseUint32(binding_points[0]);
if (!group) {
std::cerr << "Invalid group for " << hlsl_rc_bp.name << ": " << binding_points[0]
- << std::endl;
+ << "\n";
return false;
}
- auto binding = tint::ParseUint32(binding_points[1]);
+ auto binding = tint::strconv::ParseUint32(binding_points[1]);
if (!binding) {
std::cerr << "Invalid binding for " << hlsl_rc_bp.name << ": " << binding_points[1]
- << std::endl;
+ << "\n";
return false;
}
opts->hlsl_root_constant_binding_point = tint::BindingPoint{group.Get(), binding.Get()};
@@ -477,19 +470,19 @@
auto values = tint::Split(binding, "=");
if (values.Length() != 2) {
std::cerr << "Invalid binding " << pixel_local_attachments.name << ": " << binding
- << std::endl;
+ << "\n";
return false;
}
- auto member_index = tint::ParseUint32(values[0]);
+ auto member_index = tint::strconv::ParseUint32(values[0]);
if (!member_index) {
std::cerr << "Invalid member index for " << pixel_local_attachments.name << ": "
- << values[0] << std::endl;
+ << values[0] << "\n";
return false;
}
- auto attachment_index = tint::ParseUint32(values[1]);
+ auto attachment_index = tint::strconv::ParseUint32(values[1]);
if (!attachment_index) {
std::cerr << "Invalid attachment index for " << pixel_local_attachments.name << ": "
- << values[1] << std::endl;
+ << values[1] << "\n";
return false;
}
opts->pixel_local_options.attachments.emplace(member_index.Get(),
@@ -510,7 +503,7 @@
<< ": " << binding_format << std::endl;
return false;
}
- auto member_index = tint::ParseUint32(values[0]);
+ auto member_index = tint::strconv::ParseUint32(values[0]);
if (!member_index) {
std::cerr << "Invalid member index for " << pixel_local_attachment_formats.name
<< ": " << values[0] << std::endl;
@@ -537,7 +530,7 @@
auto files = result.Get();
if (files.Length() > 1) {
std::cerr << "More than one input file specified: "
- << tint::Join(Transform(files, tint::Quote), ", ") << std::endl;
+ << tint::Join(Transform(files, tint::Quote), ", ") << "\n";
return false;
}
if (files.Length() == 1) {
@@ -567,7 +560,7 @@
file = fopen(output_file.c_str(), mode.c_str());
#endif
if (!file) {
- std::cerr << "Could not open file " << output_file << " for writing" << std::endl;
+ std::cerr << "Could not open file " << output_file << " for writing\n";
return false;
}
}
@@ -576,9 +569,9 @@
fwrite(buffer.data(), sizeof(typename ContainerT::value_type), buffer.size(), file);
if (buffer.size() != written) {
if (use_stdout) {
- std::cerr << "Could not write all output to standard output" << std::endl;
+ std::cerr << "Could not write all output to standard output\n";
} else {
- std::cerr << "Could not write to file " << output_file << std::endl;
+ std::cerr << "Could not write to file " << output_file << "\n";
fclose(file);
}
return false;
@@ -624,7 +617,7 @@
if (!tools.Disassemble(
data, &result,
SPV_BINARY_TO_TEXT_OPTION_INDENT | SPV_BINARY_TO_TEXT_OPTION_FRIENDLY_NAMES)) {
- std::cerr << spv_errors << std::endl;
+ std::cerr << spv_errors << "\n";
}
return result;
}
@@ -646,7 +639,7 @@
auto result = tint::spirv::writer::Generate(program, gen_options);
if (!result) {
tint::cmd::PrintWGSL(std::cerr, program);
- std::cerr << "Failed to generate: " << result.Failure() << std::endl;
+ std::cerr << "Failed to generate: " << result.Failure() << "\n";
return false;
}
@@ -670,7 +663,7 @@
spvtools::SpirvTools tools(SPV_ENV_VULKAN_1_1);
tools.SetMessageConsumer(
[](spv_message_level_t, const char*, const spv_position_t& pos, const char* msg) {
- std::cerr << (pos.line + 1) << ":" << (pos.column + 1) << ": " << msg << std::endl;
+ std::cerr << (pos.line + 1) << ":" << (pos.column + 1) << ": " << msg << "\n";
});
if (!tools.Validate(result.Get().spirv.data(), result.Get().spirv.size(),
spvtools::ValidatorOptions())) {
@@ -698,7 +691,7 @@
tint::wgsl::writer::Options gen_options;
auto result = tint::wgsl::writer::Generate(program, gen_options);
if (!result) {
- std::cerr << "Failed to generate: " << result.Failure() << std::endl;
+ std::cerr << "Failed to generate: " << result.Failure() << "\n";
return false;
}
@@ -767,7 +760,7 @@
auto result = tint::msl::writer::Generate(*input_program, gen_options);
if (!result) {
tint::cmd::PrintWGSL(std::cerr, program);
- std::cerr << "Failed to generate: " << result.Failure() << std::endl;
+ std::cerr << "Failed to generate: " << result.Failure() << "\n";
return false;
}
@@ -813,7 +806,7 @@
}
#endif // __APPLE__
if (res.failed) {
- std::cerr << res.output << std::endl;
+ std::cerr << res.output << "\n";
return false;
}
}
@@ -941,7 +934,7 @@
#else
(void)program;
(void)options;
- std::cerr << "HLSL writer not enabled in tint build" << std::endl;
+ std::cerr << "HLSL writer not enabled in tint build\n";
return false;
#endif // TINT_BUILD_HLSL_WRITER
}
@@ -968,7 +961,7 @@
auto result = tint::glsl::writer::Generate(prg, gen_options, entry_point_name);
if (!result) {
tint::cmd::PrintWGSL(std::cerr, prg);
- std::cerr << "Failed to generate: " << result.Failure() << std::endl;
+ std::cerr << "Failed to generate: " << result.Failure() << "\n";
return false;
}
@@ -1073,17 +1066,18 @@
const auto& name = override.key;
const auto& value = override.value;
if (name.empty()) {
- std::cerr << "empty override name" << std::endl;
+ std::cerr << "empty override name\n";
return false;
}
- if (auto num = tint::ParseNumber<decltype(tint::OverrideId::value)>(name)) {
+ if (auto num =
+ tint::strconv::ParseNumber<decltype(tint::OverrideId::value)>(name)) {
tint::OverrideId id{num.Get()};
values.emplace(id, value);
} else {
auto override_names = inspector.GetNamedOverrideIds();
auto it = override_names.find(name);
if (it == override_names.end()) {
- std::cerr << "unknown override '" << name << "'" << std::endl;
+ std::cerr << "unknown override '" << name << "'\n";
return false;
}
values.emplace(it->second, value);
@@ -1100,7 +1094,7 @@
auto transform_names = [&] {
tint::StringStream names;
for (auto& t : transforms) {
- names << " " << t.name << std::endl;
+ names << " " << t.name << "\n";
}
return names.str();
};
@@ -1137,9 +1131,9 @@
gen_options.use_syntax_tree_writer = true;
auto result = tint::wgsl::writer::Generate(info.program, gen_options);
if (!result) {
- std::cerr << "Failed to dump AST: " << result.Failure() << std::endl;
+ std::cerr << "Failed to dump AST: " << result.Failure() << "\n";
} else {
- std::cout << result->wgsl << std::endl;
+ std::cout << result->wgsl << "\n";
}
}
#endif // TINT_BUILD_SYNTAX_TREE_WRITER
@@ -1148,11 +1142,11 @@
if (options.dump_ir) {
auto result = tint::wgsl::reader::ProgramToIR(info.program);
if (!result) {
- std::cerr << "Failed to build IR from program: " << result.Failure() << std::endl;
+ std::cerr << "Failed to build IR from program: " << result.Failure() << "\n";
} else {
auto mod = result.Move();
if (options.dump_ir) {
- std::cout << tint::core::ir::Disassemble(mod) << std::endl;
+ std::cout << tint::core::ir::Disassemble(mod) << "\n";
}
}
}
@@ -1213,8 +1207,8 @@
}
}
- std::cerr << "Unknown transform: " << name << std::endl;
- std::cerr << "Available transforms: " << std::endl << transform_names() << std::endl;
+ std::cerr << "Unknown transform: " << name << "\n";
+ std::cerr << "Available transforms: \n" << transform_names() << "\n";
return false;
};
@@ -1243,7 +1237,7 @@
auto program = transform_manager.Run(info.program, std::move(transform_inputs), outputs);
if (!program.IsValid()) {
tint::cmd::PrintWGSL(std::cerr, program);
- std::cerr << program.Diagnostics() << std::endl;
+ std::cerr << program.Diagnostics() << "\n";
return 1;
}
@@ -1268,7 +1262,7 @@
case Format::kNone:
break;
default:
- std::cerr << "Unknown output format specified" << std::endl;
+ std::cerr << "Unknown output format specified\n";
return 1;
}
if (!success) {
diff --git a/src/tint/lang/glsl/writer/common/printer_support.cc b/src/tint/lang/glsl/writer/common/printer_support.cc
index d57f019..d4c62de 100644
--- a/src/tint/lang/glsl/writer/common/printer_support.cc
+++ b/src/tint/lang/glsl/writer/common/printer_support.cc
@@ -51,7 +51,7 @@
} else if (std::isnan(value)) {
out << "0.0f /* nan */";
} else {
- out << tint::writer::FloatToString(value) << "f";
+ out << tint::strconv::FloatToString(value) << "f";
}
}
@@ -61,7 +61,7 @@
} else if (std::isnan(value)) {
out << "0.0hf /* nan */";
} else {
- out << tint::writer::FloatToString(value) << "hf";
+ out << tint::strconv::FloatToString(value) << "hf";
}
}
diff --git a/src/tint/lang/hlsl/writer/ast_printer/ast_printer.cc b/src/tint/lang/hlsl/writer/ast_printer/ast_printer.cc
index 763e2ad..d66be8d 100644
--- a/src/tint/lang/hlsl/writer/ast_printer/ast_printer.cc
+++ b/src/tint/lang/hlsl/writer/ast_printer/ast_printer.cc
@@ -27,11 +27,9 @@
#include "src/tint/lang/hlsl/writer/ast_printer/ast_printer.h"
-#include <algorithm>
#include <cmath>
#include <functional>
#include <iomanip>
-#include <set>
#include <utility>
#include <vector>
@@ -41,7 +39,6 @@
#include "src/tint/lang/core/type/array.h"
#include "src/tint/lang/core/type/atomic.h"
#include "src/tint/lang/core/type/depth_multisampled_texture.h"
-#include "src/tint/lang/core/type/depth_texture.h"
#include "src/tint/lang/core/type/multisampled_texture.h"
#include "src/tint/lang/core/type/sampled_texture.h"
#include "src/tint/lang/core/type/storage_texture.h"
@@ -54,7 +51,6 @@
#include "src/tint/lang/hlsl/writer/ast_raise/remove_continue_in_switch.h"
#include "src/tint/lang/hlsl/writer/ast_raise/truncate_interstage_variables.h"
#include "src/tint/lang/wgsl/ast/call_statement.h"
-#include "src/tint/lang/wgsl/ast/id_attribute.h"
#include "src/tint/lang/wgsl/ast/internal_attribute.h"
#include "src/tint/lang/wgsl/ast/interpolate_attribute.h"
#include "src/tint/lang/wgsl/ast/transform/add_empty_entry_point.h"
@@ -141,7 +137,7 @@
} else if (std::isnan(value)) {
out << "0.0f /* nan */";
} else {
- out << tint::writer::FloatToString(value) << "f";
+ out << tint::strconv::FloatToString(value) << "f";
}
}
@@ -151,7 +147,7 @@
} else if (std::isnan(value)) {
out << "0.0h /* nan */";
} else {
- out << tint::writer::FloatToString(value) << "h";
+ out << tint::strconv::FloatToString(value) << "h";
}
}
diff --git a/src/tint/lang/msl/writer/common/printer_support.cc b/src/tint/lang/msl/writer/common/printer_support.cc
index d9e74c4..037e54e 100644
--- a/src/tint/lang/msl/writer/common/printer_support.cc
+++ b/src/tint/lang/msl/writer/common/printer_support.cc
@@ -235,7 +235,7 @@
} else if (std::isnan(value)) {
out << "NAN";
} else {
- out << tint::writer::FloatToString(value) << "f";
+ out << tint::strconv::FloatToString(value) << "f";
}
}
@@ -249,7 +249,7 @@
// There is no NaN expr for half in MSL, "NAN" is of float type.
out << "NAN";
} else {
- out << tint::writer::FloatToString(value) << "h";
+ out << tint::strconv::FloatToString(value) << "h";
}
}
diff --git a/src/tint/lang/msl/writer/common/printer_support.h b/src/tint/lang/msl/writer/common/printer_support.h
index 3cb135e..dde098f 100644
--- a/src/tint/lang/msl/writer/common/printer_support.h
+++ b/src/tint/lang/msl/writer/common/printer_support.h
@@ -32,7 +32,8 @@
#include <string>
#include "src/tint/lang/core/builtin_value.h"
-#include "src/tint/lang/core/interpolation.h"
+#include "src/tint/lang/core/interpolation_sampling.h"
+#include "src/tint/lang/core/interpolation_type.h"
#include "src/tint/lang/core/type/type.h"
#include "src/tint/utils/text/string_stream.h"
diff --git a/src/tint/lang/wgsl/reader/parser/lexer.cc b/src/tint/lang/wgsl/reader/parser/lexer.cc
index 7b19d4c..102dffa 100644
--- a/src/tint/lang/wgsl/reader/parser/lexer.cc
+++ b/src/tint/lang/wgsl/reader/parser/lexer.cc
@@ -31,11 +31,10 @@
#include <charconv>
#include <cmath>
#include <cstring>
-#include <functional>
#include <limits>
#include <optional>
+#include <string>
#include <tuple>
-#include <type_traits>
#include <utility>
#include "src/tint/lang/core/fluent_types.h"
@@ -430,9 +429,9 @@
end_ptr = &at(length() - 1) + 1;
}
- auto ret = tint::ParseDouble(std::string_view(&at(start), end - start));
+ auto ret = tint::strconv::ParseDouble(std::string_view(&at(start), end - start));
double value = ret ? ret.Get() : 0.0;
- bool overflow = !ret && ret.Failure() == tint::ParseNumberError::kResultOutOfRange;
+ bool overflow = !ret && ret.Failure() == tint::strconv::ParseNumberError::kResultOutOfRange;
// If the value didn't fit in a double, check for underflow as that is 0.0 in WGSL and not an
// error.
diff --git a/src/tint/lang/wgsl/reader/parser/lexer.h b/src/tint/lang/wgsl/reader/parser/lexer.h
index 7d10dd9..6e97551 100644
--- a/src/tint/lang/wgsl/reader/parser/lexer.h
+++ b/src/tint/lang/wgsl/reader/parser/lexer.h
@@ -29,7 +29,6 @@
#define SRC_TINT_LANG_WGSL_READER_PARSER_LEXER_H_
#include <optional>
-#include <string>
#include <vector>
#include "src/tint/lang/wgsl/reader/parser/token.h"
diff --git a/src/tint/lang/wgsl/reader/parser/lexer_test.cc b/src/tint/lang/wgsl/reader/parser/lexer_test.cc
index 105c9f6..1464396 100644
--- a/src/tint/lang/wgsl/reader/parser/lexer_test.cc
+++ b/src/tint/lang/wgsl/reader/parser/lexer_test.cc
@@ -28,6 +28,7 @@
#include "src/tint/lang/wgsl/reader/parser/lexer.h"
#include <limits>
+#include <string>
#include <tuple>
#include <vector>
diff --git a/src/tint/lang/wgsl/writer/ast_printer/ast_printer.cc b/src/tint/lang/wgsl/writer/ast_printer/ast_printer.cc
index 12688b4..8acccd8 100644
--- a/src/tint/lang/wgsl/writer/ast_printer/ast_printer.cc
+++ b/src/tint/lang/wgsl/writer/ast_printer/ast_printer.cc
@@ -27,7 +27,7 @@
#include "src/tint/lang/wgsl/writer/ast_printer/ast_printer.h"
-#include <algorithm>
+#include <string>
#include "src/tint/lang/core/texel_format.h"
#include "src/tint/lang/wgsl/ast/accessor_expression.h"
@@ -263,9 +263,9 @@
// and Inf are not allowed to be spelled in literal, it should be fine to emit f16
// literals in this way.
if (l->suffix == ast::FloatLiteralExpression::Suffix::kNone) {
- out << tint::writer::DoubleToBitPreservingString(l->value);
+ out << tint::strconv::DoubleToBitPreservingString(l->value);
} else {
- out << tint::writer::FloatToBitPreservingString(static_cast<float>(l->value))
+ out << tint::strconv::FloatToBitPreservingString(static_cast<float>(l->value))
<< l->suffix;
}
},
diff --git a/src/tint/lang/wgsl/writer/ast_printer/ast_printer.h b/src/tint/lang/wgsl/writer/ast_printer/ast_printer.h
index 71bb09a..4fa1655 100644
--- a/src/tint/lang/wgsl/writer/ast_printer/ast_printer.h
+++ b/src/tint/lang/wgsl/writer/ast_printer/ast_printer.h
@@ -28,10 +28,7 @@
#ifndef SRC_TINT_LANG_WGSL_WRITER_AST_PRINTER_AST_PRINTER_H_
#define SRC_TINT_LANG_WGSL_WRITER_AST_PRINTER_AST_PRINTER_H_
-#include <string>
-
#include "src/tint/lang/core/binary_op.h"
-#include "src/tint/lang/wgsl/sem/struct.h"
#include "src/tint/utils/generator/text_generator.h"
#include "src/tint/utils/text/string_stream.h"
diff --git a/src/tint/lang/wgsl/writer/syntax_tree_printer/syntax_tree_printer.cc b/src/tint/lang/wgsl/writer/syntax_tree_printer/syntax_tree_printer.cc
index b157a0c..529f9c2 100644
--- a/src/tint/lang/wgsl/writer/syntax_tree_printer/syntax_tree_printer.cc
+++ b/src/tint/lang/wgsl/writer/syntax_tree_printer/syntax_tree_printer.cc
@@ -27,10 +27,7 @@
#include "src/tint/lang/wgsl/writer/syntax_tree_printer/syntax_tree_printer.h"
-#include <algorithm>
-
#include "src/tint/lang/core/texel_format.h"
-#include "src/tint/lang/wgsl/ast/accessor_expression.h"
#include "src/tint/lang/wgsl/ast/alias.h"
#include "src/tint/lang/wgsl/ast/assignment_statement.h"
#include "src/tint/lang/wgsl/ast/binary_expression.h"
@@ -82,7 +79,6 @@
#include "src/tint/lang/wgsl/sem/struct.h"
#include "src/tint/lang/wgsl/sem/switch_statement.h"
#include "src/tint/utils/macros/scoped_assignment.h"
-#include "src/tint/utils/math/math.h"
#include "src/tint/utils/rtti/switch.h"
#include "src/tint/utils/strconv/float_to_string.h"
#include "src/tint/utils/text/string.h"
@@ -263,9 +259,10 @@
// NaN and Inf are not allowed to be spelled in literal, it should be fine to emit
// f16 literals in this way.
if (l->suffix == ast::FloatLiteralExpression::Suffix::kNone) {
- Line() << tint::writer::DoubleToBitPreservingString(l->value);
+ Line() << tint::strconv::DoubleToBitPreservingString(l->value);
} else {
- Line() << tint::writer::FloatToBitPreservingString(static_cast<float>(l->value))
+ Line() << tint::strconv::FloatToBitPreservingString(
+ static_cast<float>(l->value))
<< l->suffix;
}
},
diff --git a/src/tint/lang/wgsl/writer/syntax_tree_printer/syntax_tree_printer.h b/src/tint/lang/wgsl/writer/syntax_tree_printer/syntax_tree_printer.h
index d47ea65..4a94bac 100644
--- a/src/tint/lang/wgsl/writer/syntax_tree_printer/syntax_tree_printer.h
+++ b/src/tint/lang/wgsl/writer/syntax_tree_printer/syntax_tree_printer.h
@@ -28,12 +28,8 @@
#ifndef SRC_TINT_LANG_WGSL_WRITER_SYNTAX_TREE_PRINTER_SYNTAX_TREE_PRINTER_H_
#define SRC_TINT_LANG_WGSL_WRITER_SYNTAX_TREE_PRINTER_SYNTAX_TREE_PRINTER_H_
-#include <string>
-
#include "src/tint/lang/wgsl/program/program.h"
-#include "src/tint/lang/wgsl/sem/struct.h"
#include "src/tint/utils/generator/text_generator.h"
-#include "src/tint/utils/text/string_stream.h"
// Forward declarations
namespace tint::core {
diff --git a/src/tint/utils/cli/cli.h b/src/tint/utils/cli/cli.h
index b315884..b0e89e4 100644
--- a/src/tint/utils/cli/cli.h
+++ b/src/tint/utils/cli/cli.h
@@ -282,13 +282,13 @@
auto arg = arguments.front();
if constexpr (is_number) {
- auto result = ParseNumber<T>(arg);
+ auto result = strconv::ParseNumber<T>(arg);
if (result) {
value = result.Get();
arguments.pop_front();
return Success;
}
- if (result.Failure() == ParseNumberError::kResultOutOfRange) {
+ if (result.Failure() == strconv::ParseNumberError::kResultOutOfRange) {
return ErrInvalidArgument(arg, "value out of range");
}
return ErrInvalidArgument(arg, "failed to parse value");
diff --git a/src/tint/utils/strconv/float_to_string.cc b/src/tint/utils/strconv/float_to_string.cc
index ea54abc..ee48a88 100644
--- a/src/tint/utils/strconv/float_to_string.cc
+++ b/src/tint/utils/strconv/float_to_string.cc
@@ -29,14 +29,12 @@
#include <cmath>
#include <cstring>
-#include <functional>
#include <iomanip>
-#include <limits>
#include "src/tint/utils/ice/ice.h"
#include "src/tint/utils/text/string_stream.h"
-namespace tint::writer {
+namespace tint::strconv {
namespace {
@@ -187,4 +185,4 @@
return ToBitPreservingString(f);
}
-} // namespace tint::writer
+} // namespace tint::strconv
diff --git a/src/tint/utils/strconv/float_to_string.h b/src/tint/utils/strconv/float_to_string.h
index b97d74a..c272523 100644
--- a/src/tint/utils/strconv/float_to_string.h
+++ b/src/tint/utils/strconv/float_to_string.h
@@ -30,7 +30,7 @@
#include <string>
-namespace tint::writer {
+namespace tint::strconv {
/// Converts the float `f` to a string using fixed-point notation (not
/// scientific). The float will be printed with the full precision required to
@@ -58,6 +58,6 @@
/// @return the double f formatted to a string
std::string DoubleToBitPreservingString(double f);
-} // namespace tint::writer
+} // namespace tint::strconv
#endif // SRC_TINT_UTILS_STRCONV_FLOAT_TO_STRING_H_
diff --git a/src/tint/utils/strconv/float_to_string_test.cc b/src/tint/utils/strconv/float_to_string_test.cc
index 043b5f9..d0a0ce5 100644
--- a/src/tint/utils/strconv/float_to_string_test.cc
+++ b/src/tint/utils/strconv/float_to_string_test.cc
@@ -34,7 +34,7 @@
#include "gtest/gtest.h"
#include "src/tint/utils/memory/bitcast.h"
-namespace tint::writer {
+namespace tint::strconv {
namespace {
////////////////////////////////////////////////////////////////////////////////
@@ -345,4 +345,4 @@
}
} // namespace
-} // namespace tint::writer
+} // namespace tint::strconv
diff --git a/src/tint/utils/strconv/parse_num.cc b/src/tint/utils/strconv/parse_num.cc
index 09fcc3d..c1cbf85 100644
--- a/src/tint/utils/strconv/parse_num.cc
+++ b/src/tint/utils/strconv/parse_num.cc
@@ -31,7 +31,7 @@
#include "absl/strings/charconv.h"
-namespace tint {
+namespace tint::strconv {
namespace {
@@ -108,4 +108,4 @@
return Parse<uint8_t>(str);
}
-} // namespace tint
+} // namespace tint::strconv
diff --git a/src/tint/utils/strconv/parse_num.h b/src/tint/utils/strconv/parse_num.h
index 7eab873..704bd47 100644
--- a/src/tint/utils/strconv/parse_num.h
+++ b/src/tint/utils/strconv/parse_num.h
@@ -28,16 +28,13 @@
#ifndef SRC_TINT_UTILS_STRCONV_PARSE_NUM_H_
#define SRC_TINT_UTILS_STRCONV_PARSE_NUM_H_
-#include <optional>
-#include <string>
-
#include "src/tint/utils/macros/compiler.h"
#include "src/tint/utils/result/result.h"
-namespace tint {
+namespace tint::strconv {
/// Error returned by the number parsing functions
-enum class ParseNumberError {
+enum class ParseNumberError : uint8_t {
/// The number was unparsable
kUnparsable,
/// The parsed number is not representable by the target datatype
@@ -141,6 +138,6 @@
/// Re-enables the unreachable-code compiler warnings
TINT_END_DISABLE_WARNING(UNREACHABLE_CODE);
-} // namespace tint
+} // namespace tint::strconv
#endif // SRC_TINT_UTILS_STRCONV_PARSE_NUM_H_