Add reflection for Access enum. This CL adds the neceassry macros to have reflection for the core::Access enum. Change-Id: I5e20757952e741a764e8cea4b398a0a77d98544f Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/168661 Commit-Queue: dan sinclair <dsinclair@chromium.org> Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: Ben Clayton <bclayton@google.com>
diff --git a/src/tint/cmd/bench/BUILD.bazel b/src/tint/cmd/bench/BUILD.bazel index 48b45c3..a273bc9 100644 --- a/src/tint/cmd/bench/BUILD.bazel +++ b/src/tint/cmd/bench/BUILD.bazel
@@ -113,6 +113,7 @@ "//src/tint/utils/macros", "//src/tint/utils/math", "//src/tint/utils/memory", + "//src/tint/utils/reflection", "//src/tint/utils/result", "//src/tint/utils/rtti", "//src/tint/utils/rtti:bench",
diff --git a/src/tint/cmd/bench/BUILD.cmake b/src/tint/cmd/bench/BUILD.cmake index 9df1c7a..ee4b122 100644 --- a/src/tint/cmd/bench/BUILD.cmake +++ b/src/tint/cmd/bench/BUILD.cmake
@@ -60,6 +60,7 @@ tint_utils_macros tint_utils_math tint_utils_memory + tint_utils_reflection tint_utils_result tint_utils_rtti tint_utils_rtti_bench
diff --git a/src/tint/cmd/bench/BUILD.gn b/src/tint/cmd/bench/BUILD.gn index 8697f0c..7eb287d 100644 --- a/src/tint/cmd/bench/BUILD.gn +++ b/src/tint/cmd/bench/BUILD.gn
@@ -114,6 +114,7 @@ "${tint_src_dir}/utils/macros", "${tint_src_dir}/utils/math", "${tint_src_dir}/utils/memory", + "${tint_src_dir}/utils/reflection", "${tint_src_dir}/utils/result", "${tint_src_dir}/utils/rtti", "${tint_src_dir}/utils/rtti:bench",
diff --git a/src/tint/lang/core/BUILD.bazel b/src/tint/lang/core/BUILD.bazel index a26c37f..ade8daa 100644 --- a/src/tint/lang/core/BUILD.bazel +++ b/src/tint/lang/core/BUILD.bazel
@@ -78,6 +78,7 @@ "//src/tint/utils/macros", "//src/tint/utils/math", "//src/tint/utils/memory", + "//src/tint/utils/reflection", "//src/tint/utils/result", "//src/tint/utils/rtti", "//src/tint/utils/text", @@ -143,6 +144,8 @@ ], deps = [ "//src/tint/lang/core", + "//src/tint/utils/macros", + "//src/tint/utils/reflection", "//src/tint/utils/traits", "@benchmark", ],
diff --git a/src/tint/lang/core/BUILD.cmake b/src/tint/lang/core/BUILD.cmake index a5c1610..ea40bb5 100644 --- a/src/tint/lang/core/BUILD.cmake +++ b/src/tint/lang/core/BUILD.cmake
@@ -82,6 +82,7 @@ tint_utils_macros tint_utils_math tint_utils_memory + tint_utils_reflection tint_utils_result tint_utils_rtti tint_utils_text @@ -150,6 +151,8 @@ tint_target_add_dependencies(tint_lang_core_bench bench tint_lang_core + tint_utils_macros + tint_utils_reflection tint_utils_traits )
diff --git a/src/tint/lang/core/BUILD.gn b/src/tint/lang/core/BUILD.gn index 88de4fd..b1186f8 100644 --- a/src/tint/lang/core/BUILD.gn +++ b/src/tint/lang/core/BUILD.gn
@@ -81,6 +81,7 @@ "${tint_src_dir}/utils/macros", "${tint_src_dir}/utils/math", "${tint_src_dir}/utils/memory", + "${tint_src_dir}/utils/reflection", "${tint_src_dir}/utils/result", "${tint_src_dir}/utils/rtti", "${tint_src_dir}/utils/text", @@ -142,6 +143,8 @@ deps = [ "${tint_src_dir}:google_benchmark", "${tint_src_dir}/lang/core", + "${tint_src_dir}/utils/macros", + "${tint_src_dir}/utils/reflection", "${tint_src_dir}/utils/traits", ] }
diff --git a/src/tint/lang/core/access.h b/src/tint/lang/core/access.h index 9ace935..d03c07b 100644 --- a/src/tint/lang/core/access.h +++ b/src/tint/lang/core/access.h
@@ -39,6 +39,7 @@ #include <cstdint> +#include "src/tint/utils/reflection/reflection.h" #include "src/tint/utils/traits/traits.h" namespace tint::core { @@ -76,4 +77,11 @@ } // namespace tint::core +namespace tint { + +/// Access reflection information +TINT_REFLECT_ENUM_RANGE(core::Access, kUndefined, kWrite); + +} // namespace tint + #endif // SRC_TINT_LANG_CORE_ACCESS_H_
diff --git a/src/tint/lang/core/access.h.tmpl b/src/tint/lang/core/access.h.tmpl index 852f978..9e9112e 100644 --- a/src/tint/lang/core/access.h.tmpl +++ b/src/tint/lang/core/access.h.tmpl
@@ -20,6 +20,7 @@ #include <cstdint> +#include "src/tint/utils/reflection/reflection.h" #include "src/tint/utils/traits/traits.h" namespace tint::core { @@ -29,4 +30,11 @@ } // namespace tint::core +namespace tint { + +/// Access reflection information +TINT_REFLECT_ENUM_RANGE(core::{{ Eval "EnumName" $enum }}, {{Eval "EnumFirst" $enum }}, {{Eval "EnumLast" $enum}}); + +} // namespace tint + #endif // SRC_TINT_LANG_CORE_ACCESS_H_
diff --git a/src/tint/lang/core/constant/BUILD.bazel b/src/tint/lang/core/constant/BUILD.bazel index b7967f5..b092c56 100644 --- a/src/tint/lang/core/constant/BUILD.bazel +++ b/src/tint/lang/core/constant/BUILD.bazel
@@ -67,6 +67,7 @@ "//src/tint/utils/macros", "//src/tint/utils/math", "//src/tint/utils/memory", + "//src/tint/utils/reflection", "//src/tint/utils/result", "//src/tint/utils/rtti", "//src/tint/utils/symbol",
diff --git a/src/tint/lang/core/constant/BUILD.cmake b/src/tint/lang/core/constant/BUILD.cmake index 3e86cd2..b7dbca1 100644 --- a/src/tint/lang/core/constant/BUILD.cmake +++ b/src/tint/lang/core/constant/BUILD.cmake
@@ -66,6 +66,7 @@ tint_utils_macros tint_utils_math tint_utils_memory + tint_utils_reflection tint_utils_result tint_utils_rtti tint_utils_symbol
diff --git a/src/tint/lang/core/constant/BUILD.gn b/src/tint/lang/core/constant/BUILD.gn index 39c11d9..8549c0b 100644 --- a/src/tint/lang/core/constant/BUILD.gn +++ b/src/tint/lang/core/constant/BUILD.gn
@@ -70,6 +70,7 @@ "${tint_src_dir}/utils/macros", "${tint_src_dir}/utils/math", "${tint_src_dir}/utils/memory", + "${tint_src_dir}/utils/reflection", "${tint_src_dir}/utils/result", "${tint_src_dir}/utils/rtti", "${tint_src_dir}/utils/symbol",
diff --git a/src/tint/lang/core/intrinsic/BUILD.bazel b/src/tint/lang/core/intrinsic/BUILD.bazel index ea936ea..141bff2 100644 --- a/src/tint/lang/core/intrinsic/BUILD.bazel +++ b/src/tint/lang/core/intrinsic/BUILD.bazel
@@ -61,6 +61,7 @@ "//src/tint/utils/macros", "//src/tint/utils/math", "//src/tint/utils/memory", + "//src/tint/utils/reflection", "//src/tint/utils/result", "//src/tint/utils/rtti", "//src/tint/utils/symbol",
diff --git a/src/tint/lang/core/intrinsic/BUILD.cmake b/src/tint/lang/core/intrinsic/BUILD.cmake index 4a6f199..6af46bb 100644 --- a/src/tint/lang/core/intrinsic/BUILD.cmake +++ b/src/tint/lang/core/intrinsic/BUILD.cmake
@@ -60,6 +60,7 @@ tint_utils_macros tint_utils_math tint_utils_memory + tint_utils_reflection tint_utils_result tint_utils_rtti tint_utils_symbol
diff --git a/src/tint/lang/core/intrinsic/BUILD.gn b/src/tint/lang/core/intrinsic/BUILD.gn index 011a65a..fbfb8ce 100644 --- a/src/tint/lang/core/intrinsic/BUILD.gn +++ b/src/tint/lang/core/intrinsic/BUILD.gn
@@ -64,6 +64,7 @@ "${tint_src_dir}/utils/macros", "${tint_src_dir}/utils/math", "${tint_src_dir}/utils/memory", + "${tint_src_dir}/utils/reflection", "${tint_src_dir}/utils/result", "${tint_src_dir}/utils/rtti", "${tint_src_dir}/utils/symbol",
diff --git a/src/tint/lang/core/type/BUILD.bazel b/src/tint/lang/core/type/BUILD.bazel index e3c6b72..485a4a8 100644 --- a/src/tint/lang/core/type/BUILD.bazel +++ b/src/tint/lang/core/type/BUILD.bazel
@@ -122,6 +122,7 @@ "//src/tint/utils/macros", "//src/tint/utils/math", "//src/tint/utils/memory", + "//src/tint/utils/reflection", "//src/tint/utils/result", "//src/tint/utils/rtti", "//src/tint/utils/symbol",
diff --git a/src/tint/lang/core/type/BUILD.cmake b/src/tint/lang/core/type/BUILD.cmake index d212503..7c9b819 100644 --- a/src/tint/lang/core/type/BUILD.cmake +++ b/src/tint/lang/core/type/BUILD.cmake
@@ -121,6 +121,7 @@ tint_utils_macros tint_utils_math tint_utils_memory + tint_utils_reflection tint_utils_result tint_utils_rtti tint_utils_symbol
diff --git a/src/tint/lang/core/type/BUILD.gn b/src/tint/lang/core/type/BUILD.gn index 8942f2a..2f0568b 100644 --- a/src/tint/lang/core/type/BUILD.gn +++ b/src/tint/lang/core/type/BUILD.gn
@@ -125,6 +125,7 @@ "${tint_src_dir}/utils/macros", "${tint_src_dir}/utils/math", "${tint_src_dir}/utils/memory", + "${tint_src_dir}/utils/reflection", "${tint_src_dir}/utils/result", "${tint_src_dir}/utils/rtti", "${tint_src_dir}/utils/symbol",
diff --git a/src/tint/lang/msl/intrinsic/BUILD.bazel b/src/tint/lang/msl/intrinsic/BUILD.bazel index de60b66..d4b9fab 100644 --- a/src/tint/lang/msl/intrinsic/BUILD.bazel +++ b/src/tint/lang/msl/intrinsic/BUILD.bazel
@@ -57,6 +57,7 @@ "//src/tint/utils/macros", "//src/tint/utils/math", "//src/tint/utils/memory", + "//src/tint/utils/reflection", "//src/tint/utils/result", "//src/tint/utils/rtti", "//src/tint/utils/symbol",
diff --git a/src/tint/lang/msl/intrinsic/BUILD.cmake b/src/tint/lang/msl/intrinsic/BUILD.cmake index 60cca31..3ede760 100644 --- a/src/tint/lang/msl/intrinsic/BUILD.cmake +++ b/src/tint/lang/msl/intrinsic/BUILD.cmake
@@ -56,6 +56,7 @@ tint_utils_macros tint_utils_math tint_utils_memory + tint_utils_reflection tint_utils_result tint_utils_rtti tint_utils_symbol
diff --git a/src/tint/lang/msl/intrinsic/BUILD.gn b/src/tint/lang/msl/intrinsic/BUILD.gn index 61d0771..2351f59 100644 --- a/src/tint/lang/msl/intrinsic/BUILD.gn +++ b/src/tint/lang/msl/intrinsic/BUILD.gn
@@ -56,6 +56,7 @@ "${tint_src_dir}/utils/macros", "${tint_src_dir}/utils/math", "${tint_src_dir}/utils/memory", + "${tint_src_dir}/utils/reflection", "${tint_src_dir}/utils/result", "${tint_src_dir}/utils/rtti", "${tint_src_dir}/utils/symbol",
diff --git a/src/tint/lang/msl/validate/BUILD.bazel b/src/tint/lang/msl/validate/BUILD.bazel index 0606047..7e5730a 100644 --- a/src/tint/lang/msl/validate/BUILD.bazel +++ b/src/tint/lang/msl/validate/BUILD.bazel
@@ -67,6 +67,7 @@ "//src/tint/utils/macros", "//src/tint/utils/math", "//src/tint/utils/memory", + "//src/tint/utils/reflection", "//src/tint/utils/result", "//src/tint/utils/rtti", "//src/tint/utils/symbol",
diff --git a/src/tint/lang/msl/validate/BUILD.cmake b/src/tint/lang/msl/validate/BUILD.cmake index e51eab9..698e899 100644 --- a/src/tint/lang/msl/validate/BUILD.cmake +++ b/src/tint/lang/msl/validate/BUILD.cmake
@@ -63,6 +63,7 @@ tint_utils_macros tint_utils_math tint_utils_memory + tint_utils_reflection tint_utils_result tint_utils_rtti tint_utils_symbol
diff --git a/src/tint/lang/msl/validate/BUILD.gn b/src/tint/lang/msl/validate/BUILD.gn index 2d587b1..cbf7c61 100644 --- a/src/tint/lang/msl/validate/BUILD.gn +++ b/src/tint/lang/msl/validate/BUILD.gn
@@ -61,6 +61,7 @@ "${tint_src_dir}/utils/macros", "${tint_src_dir}/utils/math", "${tint_src_dir}/utils/memory", + "${tint_src_dir}/utils/reflection", "${tint_src_dir}/utils/result", "${tint_src_dir}/utils/rtti", "${tint_src_dir}/utils/symbol",
diff --git a/src/tint/lang/spirv/intrinsic/BUILD.bazel b/src/tint/lang/spirv/intrinsic/BUILD.bazel index 6ebd70e..7b2f0e8 100644 --- a/src/tint/lang/spirv/intrinsic/BUILD.bazel +++ b/src/tint/lang/spirv/intrinsic/BUILD.bazel
@@ -60,6 +60,7 @@ "//src/tint/utils/macros", "//src/tint/utils/math", "//src/tint/utils/memory", + "//src/tint/utils/reflection", "//src/tint/utils/result", "//src/tint/utils/rtti", "//src/tint/utils/symbol",
diff --git a/src/tint/lang/spirv/intrinsic/BUILD.cmake b/src/tint/lang/spirv/intrinsic/BUILD.cmake index 92e0bc5..541c0f5 100644 --- a/src/tint/lang/spirv/intrinsic/BUILD.cmake +++ b/src/tint/lang/spirv/intrinsic/BUILD.cmake
@@ -59,6 +59,7 @@ tint_utils_macros tint_utils_math tint_utils_memory + tint_utils_reflection tint_utils_result tint_utils_rtti tint_utils_symbol
diff --git a/src/tint/lang/spirv/intrinsic/BUILD.gn b/src/tint/lang/spirv/intrinsic/BUILD.gn index eb892d0..e99baee 100644 --- a/src/tint/lang/spirv/intrinsic/BUILD.gn +++ b/src/tint/lang/spirv/intrinsic/BUILD.gn
@@ -59,6 +59,7 @@ "${tint_src_dir}/utils/macros", "${tint_src_dir}/utils/math", "${tint_src_dir}/utils/memory", + "${tint_src_dir}/utils/reflection", "${tint_src_dir}/utils/result", "${tint_src_dir}/utils/rtti", "${tint_src_dir}/utils/symbol",
diff --git a/src/tint/lang/spirv/type/BUILD.bazel b/src/tint/lang/spirv/type/BUILD.bazel index 9bbee2d..53c59e9 100644 --- a/src/tint/lang/spirv/type/BUILD.bazel +++ b/src/tint/lang/spirv/type/BUILD.bazel
@@ -56,6 +56,7 @@ "//src/tint/utils/macros", "//src/tint/utils/math", "//src/tint/utils/memory", + "//src/tint/utils/reflection", "//src/tint/utils/result", "//src/tint/utils/rtti", "//src/tint/utils/symbol",
diff --git a/src/tint/lang/spirv/type/BUILD.cmake b/src/tint/lang/spirv/type/BUILD.cmake index 92c1ede..7d21774 100644 --- a/src/tint/lang/spirv/type/BUILD.cmake +++ b/src/tint/lang/spirv/type/BUILD.cmake
@@ -55,6 +55,7 @@ tint_utils_macros tint_utils_math tint_utils_memory + tint_utils_reflection tint_utils_result tint_utils_rtti tint_utils_symbol
diff --git a/src/tint/lang/spirv/type/BUILD.gn b/src/tint/lang/spirv/type/BUILD.gn index 8c03245..2834593 100644 --- a/src/tint/lang/spirv/type/BUILD.gn +++ b/src/tint/lang/spirv/type/BUILD.gn
@@ -55,6 +55,7 @@ "${tint_src_dir}/utils/macros", "${tint_src_dir}/utils/math", "${tint_src_dir}/utils/memory", + "${tint_src_dir}/utils/reflection", "${tint_src_dir}/utils/result", "${tint_src_dir}/utils/rtti", "${tint_src_dir}/utils/symbol",
diff --git a/src/tint/lang/wgsl/intrinsic/BUILD.bazel b/src/tint/lang/wgsl/intrinsic/BUILD.bazel index be578ca..bfb10a6 100644 --- a/src/tint/lang/wgsl/intrinsic/BUILD.bazel +++ b/src/tint/lang/wgsl/intrinsic/BUILD.bazel
@@ -59,6 +59,7 @@ "//src/tint/utils/macros", "//src/tint/utils/math", "//src/tint/utils/memory", + "//src/tint/utils/reflection", "//src/tint/utils/result", "//src/tint/utils/rtti", "//src/tint/utils/symbol",
diff --git a/src/tint/lang/wgsl/intrinsic/BUILD.cmake b/src/tint/lang/wgsl/intrinsic/BUILD.cmake index f77068d..275c8b0 100644 --- a/src/tint/lang/wgsl/intrinsic/BUILD.cmake +++ b/src/tint/lang/wgsl/intrinsic/BUILD.cmake
@@ -58,6 +58,7 @@ tint_utils_macros tint_utils_math tint_utils_memory + tint_utils_reflection tint_utils_result tint_utils_rtti tint_utils_symbol
diff --git a/src/tint/lang/wgsl/intrinsic/BUILD.gn b/src/tint/lang/wgsl/intrinsic/BUILD.gn index 61a2bb1..bae4bd0 100644 --- a/src/tint/lang/wgsl/intrinsic/BUILD.gn +++ b/src/tint/lang/wgsl/intrinsic/BUILD.gn
@@ -58,6 +58,7 @@ "${tint_src_dir}/utils/macros", "${tint_src_dir}/utils/math", "${tint_src_dir}/utils/memory", + "${tint_src_dir}/utils/reflection", "${tint_src_dir}/utils/result", "${tint_src_dir}/utils/rtti", "${tint_src_dir}/utils/symbol",
diff --git a/src/tint/lang/wgsl/writer/ast_printer/BUILD.bazel b/src/tint/lang/wgsl/writer/ast_printer/BUILD.bazel index f4308d6..f580105 100644 --- a/src/tint/lang/wgsl/writer/ast_printer/BUILD.bazel +++ b/src/tint/lang/wgsl/writer/ast_printer/BUILD.bazel
@@ -61,6 +61,7 @@ "//src/tint/utils/macros", "//src/tint/utils/math", "//src/tint/utils/memory", + "//src/tint/utils/reflection", "//src/tint/utils/result", "//src/tint/utils/rtti", "//src/tint/utils/strconv",
diff --git a/src/tint/lang/wgsl/writer/ast_printer/BUILD.cmake b/src/tint/lang/wgsl/writer/ast_printer/BUILD.cmake index 1f2d210..7ce8c41 100644 --- a/src/tint/lang/wgsl/writer/ast_printer/BUILD.cmake +++ b/src/tint/lang/wgsl/writer/ast_printer/BUILD.cmake
@@ -62,6 +62,7 @@ tint_utils_macros tint_utils_math tint_utils_memory + tint_utils_reflection tint_utils_result tint_utils_rtti tint_utils_strconv
diff --git a/src/tint/lang/wgsl/writer/ast_printer/BUILD.gn b/src/tint/lang/wgsl/writer/ast_printer/BUILD.gn index 796fc83..3d484a5 100644 --- a/src/tint/lang/wgsl/writer/ast_printer/BUILD.gn +++ b/src/tint/lang/wgsl/writer/ast_printer/BUILD.gn
@@ -64,6 +64,7 @@ "${tint_src_dir}/utils/macros", "${tint_src_dir}/utils/math", "${tint_src_dir}/utils/memory", + "${tint_src_dir}/utils/reflection", "${tint_src_dir}/utils/result", "${tint_src_dir}/utils/rtti", "${tint_src_dir}/utils/strconv",
diff --git a/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.bazel b/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.bazel index 96fdf82..6742227 100644 --- a/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.bazel +++ b/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.bazel
@@ -61,6 +61,7 @@ "//src/tint/utils/macros", "//src/tint/utils/math", "//src/tint/utils/memory", + "//src/tint/utils/reflection", "//src/tint/utils/result", "//src/tint/utils/rtti", "//src/tint/utils/strconv",
diff --git a/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.cmake b/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.cmake index 859fa03..889fd35 100644 --- a/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.cmake +++ b/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.cmake
@@ -60,6 +60,7 @@ tint_utils_macros tint_utils_math tint_utils_memory + tint_utils_reflection tint_utils_result tint_utils_rtti tint_utils_strconv
diff --git a/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.gn b/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.gn index 71df0af..8a70111 100644 --- a/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.gn +++ b/src/tint/lang/wgsl/writer/syntax_tree_printer/BUILD.gn
@@ -60,6 +60,7 @@ "${tint_src_dir}/utils/macros", "${tint_src_dir}/utils/math", "${tint_src_dir}/utils/memory", + "${tint_src_dir}/utils/reflection", "${tint_src_dir}/utils/result", "${tint_src_dir}/utils/rtti", "${tint_src_dir}/utils/strconv",