Resolver: Generate mapping for ast::Type -> sem::Type
Currently untestable as nothing currently calls Type(const ast::Type* ty).
Bug: tint:724
Change-Id: I92dd772acd758b0960a7e9a19f15c91414ab505c
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/49527
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
diff --git a/src/program_builder.h b/src/program_builder.h
index 4a18623..1805696 100644
--- a/src/program_builder.h
+++ b/src/program_builder.h
@@ -1788,7 +1788,15 @@
/// @param expr the AST expression
/// @return the resolved semantic type for the expression, or nullptr if the
/// expression has no resolved type.
- sem::Type* TypeOf(ast::Expression* expr) const;
+ sem::Type* TypeOf(const ast::Expression* expr) const;
+
+ /// Helper for returning the resolved semantic type of the AST type `type`.
+ /// @note As the Resolver is run when the Program is built, this will only be
+ /// useful for the Resolver itself and tests that use their own Resolver.
+ /// @param expr the AST type
+ /// @return the resolved semantic type for the type, or nullptr if the type
+ /// has no resolved type.
+ const sem::Type* TypeOf(const ast::Type* expr) const;
/// Wraps the ast::Literal in a statement. This is used by tests that
/// construct a partial AST and require the Resolver to reach these