ast::TypesBuilder: Change const fields to getters
This is required in order to support move operators for TypesBuilder.
Bug: tint:390
Change-Id: I9667bda5f5be267df092f5cd94dc40db053ae6e2
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/38555
Reviewed-by: dan sinclair <dsinclair@chromium.org>
diff --git a/src/ast/bitcast_expression_test.cc b/src/ast/bitcast_expression_test.cc
index 186e4b7..56e2568 100644
--- a/src/ast/bitcast_expression_test.cc
+++ b/src/ast/bitcast_expression_test.cc
@@ -27,16 +27,16 @@
TEST_F(BitcastExpressionTest, Create) {
auto* expr = Expr("expr");
- auto* exp = create<BitcastExpression>(ty.f32, expr);
- ASSERT_EQ(exp->type(), ty.f32);
+ auto* exp = create<BitcastExpression>(ty.f32(), expr);
+ ASSERT_EQ(exp->type(), ty.f32());
ASSERT_EQ(exp->expr(), expr);
}
TEST_F(BitcastExpressionTest, CreateWithSource) {
auto* expr = Expr("expr");
- auto* exp =
- create<BitcastExpression>(Source{Source::Location{20, 2}}, ty.f32, expr);
+ auto* exp = create<BitcastExpression>(Source{Source::Location{20, 2}},
+ ty.f32(), expr);
auto src = exp->source();
EXPECT_EQ(src.range.begin.line, 20u);
EXPECT_EQ(src.range.begin.column, 2u);
@@ -45,14 +45,14 @@
TEST_F(BitcastExpressionTest, IsBitcast) {
auto* expr = Expr("expr");
- auto* exp = create<BitcastExpression>(ty.f32, expr);
+ auto* exp = create<BitcastExpression>(ty.f32(), expr);
EXPECT_TRUE(exp->Is<BitcastExpression>());
}
TEST_F(BitcastExpressionTest, IsValid) {
auto* expr = Expr("expr");
- auto* exp = create<BitcastExpression>(ty.f32, expr);
+ auto* exp = create<BitcastExpression>(ty.f32(), expr);
EXPECT_TRUE(exp->IsValid());
}
@@ -64,20 +64,20 @@
}
TEST_F(BitcastExpressionTest, IsValid_MissingExpr) {
- auto* exp = create<BitcastExpression>(ty.f32, nullptr);
+ auto* exp = create<BitcastExpression>(ty.f32(), nullptr);
EXPECT_FALSE(exp->IsValid());
}
TEST_F(BitcastExpressionTest, IsValid_InvalidExpr) {
auto* expr = Expr("");
- auto* e = create<BitcastExpression>(ty.f32, expr);
+ auto* e = create<BitcastExpression>(ty.f32(), expr);
EXPECT_FALSE(e->IsValid());
}
TEST_F(BitcastExpressionTest, ToStr) {
auto* expr = Expr("expr");
- auto* exp = create<BitcastExpression>(ty.f32, expr);
+ auto* exp = create<BitcastExpression>(ty.f32(), expr);
std::ostringstream out;
exp->to_str(out, 2);
diff --git a/src/ast/builder.cc b/src/ast/builder.cc
index de757c1..9e3062e 100644
--- a/src/ast/builder.cc
+++ b/src/ast/builder.cc
@@ -18,12 +18,7 @@
namespace ast {
TypesBuilder::TypesBuilder(Program* p)
- : bool_(p->create<type::Bool>()),
- f32(p->create<type::F32>()),
- i32(p->create<type::I32>()),
- u32(p->create<type::U32>()),
- void_(p->create<type::Void>()),
- program_(p) {}
+ : program_(p) {}
Builder::Builder(Program* p) : program(p), ty(p), mod(p) {}
diff --git a/src/ast/builder.h b/src/ast/builder.h
index ed5baeb..bbb6ecf 100644
--- a/src/ast/builder.h
+++ b/src/ast/builder.h
@@ -59,23 +59,27 @@
/// @param program the program
explicit TypesBuilder(Program* program);
- /// A boolean type
- type::Bool* const bool_;
- /// A f32 type
- type::F32* const f32;
- /// A i32 type
- type::I32* const i32;
- /// A u32 type
- type::U32* const u32;
- /// A void type
- type::Void* const void_;
-
/// @return the tint AST type for the C type `T`.
template <typename T>
type::Type* Of() const {
return CToAST<T>::get(this);
}
+ /// @returns A boolean type
+ type::Bool* bool_() const { return program_->create<type::Bool>(); }
+
+ /// @returns A f32 type
+ type::F32* f32() const { return program_->create<type::F32>(); }
+
+ /// @returns A i32 type
+ type::I32* i32() const { return program_->create<type::I32>(); }
+
+ /// @returns A u32 type
+ type::U32* u32() const { return program_->create<type::U32>(); }
+
+ /// @returns A void type
+ type::Void* void_() const { return program_->create<type::Void>(); }
+
/// @return the tint AST type for a 2-element vector of the C type `T`.
template <typename T>
type::Vector* vec2() const {
@@ -310,19 +314,21 @@
/// @param val the boolan value
/// @return a boolean literal with the given value
- BoolLiteral* Literal(bool val) { return create<BoolLiteral>(ty.bool_, val); }
+ BoolLiteral* Literal(bool val) {
+ return create<BoolLiteral>(ty.bool_(), val);
+ }
/// @param val the float value
/// @return a float literal with the given value
- FloatLiteral* Literal(f32 val) { return create<FloatLiteral>(ty.f32, val); }
+ FloatLiteral* Literal(f32 val) { return create<FloatLiteral>(ty.f32(), val); }
/// @param val the unsigned int value
/// @return a UintLiteral with the given value
- UintLiteral* Literal(u32 val) { return create<UintLiteral>(ty.u32, val); }
+ UintLiteral* Literal(u32 val) { return create<UintLiteral>(ty.u32(), val); }
/// @param val the integer value
/// @return the SintLiteral with the given value
- SintLiteral* Literal(i32 val) { return create<SintLiteral>(ty.i32, val); }
+ SintLiteral* Literal(i32 val) { return create<SintLiteral>(ty.i32(), val); }
/// @param args the arguments for the type constructor
/// @return an `TypeConstructorExpression` of type `ty`, with the values
@@ -763,23 +769,23 @@
// Various template specializations for TypesBuilder::CToAST.
template <>
struct TypesBuilder::CToAST<Builder::i32> {
- static type::Type* get(const TypesBuilder* t) { return t->i32; }
+ static type::Type* get(const TypesBuilder* t) { return t->i32(); }
};
template <>
struct TypesBuilder::CToAST<Builder::u32> {
- static type::Type* get(const TypesBuilder* t) { return t->u32; }
+ static type::Type* get(const TypesBuilder* t) { return t->u32(); }
};
template <>
struct TypesBuilder::CToAST<Builder::f32> {
- static type::Type* get(const TypesBuilder* t) { return t->f32; }
+ static type::Type* get(const TypesBuilder* t) { return t->f32(); }
};
template <>
struct TypesBuilder::CToAST<bool> {
- static type::Type* get(const TypesBuilder* t) { return t->bool_; }
+ static type::Type* get(const TypesBuilder* t) { return t->bool_(); }
};
template <>
struct TypesBuilder::CToAST<void> {
- static type::Type* get(const TypesBuilder* t) { return t->void_; }
+ static type::Type* get(const TypesBuilder* t) { return t->void_(); }
};
//! @endcond
diff --git a/src/ast/case_statement_test.cc b/src/ast/case_statement_test.cc
index ae60ba1..ad54986 100644
--- a/src/ast/case_statement_test.cc
+++ b/src/ast/case_statement_test.cc
@@ -30,7 +30,7 @@
TEST_F(CaseStatementTest, Creation_i32) {
CaseSelectorList b;
- auto* selector = create<SintLiteral>(ty.i32, 2);
+ auto* selector = create<SintLiteral>(ty.i32(), 2);
b.push_back(selector);
auto* discard = create<DiscardStatement>();
@@ -45,7 +45,7 @@
TEST_F(CaseStatementTest, Creation_u32) {
CaseSelectorList b;
- auto* selector = create<SintLiteral>(ty.u32, 2);
+ auto* selector = create<SintLiteral>(ty.u32(), 2);
b.push_back(selector);
auto* discard = create<DiscardStatement>();
@@ -60,7 +60,7 @@
TEST_F(CaseStatementTest, Creation_WithSource) {
CaseSelectorList b;
- b.push_back(create<SintLiteral>(ty.i32, 2));
+ b.push_back(create<SintLiteral>(ty.i32(), 2));
auto* body = create<BlockStatement>(StatementList{
create<DiscardStatement>(),
@@ -81,7 +81,7 @@
TEST_F(CaseStatementTest, IsDefault_WithSelectors) {
CaseSelectorList b;
- b.push_back(create<SintLiteral>(ty.i32, 2));
+ b.push_back(create<SintLiteral>(ty.i32(), 2));
auto* c = create<CaseStatement>(b, create<BlockStatement>(StatementList{}));
EXPECT_FALSE(c->IsDefault());
@@ -101,7 +101,7 @@
TEST_F(CaseStatementTest, IsValid_NullBodyStatement) {
CaseSelectorList b;
- b.push_back(create<SintLiteral>(ty.i32, 2));
+ b.push_back(create<SintLiteral>(ty.i32(), 2));
auto* body = create<BlockStatement>(StatementList{
create<DiscardStatement>(),
@@ -113,7 +113,7 @@
TEST_F(CaseStatementTest, IsValid_InvalidBodyStatement) {
CaseSelectorList b;
- b.push_back(create<SintLiteral>(ty.i32, 2));
+ b.push_back(create<SintLiteral>(ty.i32(), 2));
auto* body = create<BlockStatement>(
@@ -127,7 +127,7 @@
TEST_F(CaseStatementTest, ToStr_WithSelectors_i32) {
CaseSelectorList b;
- b.push_back(create<SintLiteral>(ty.i32, -2));
+ b.push_back(create<SintLiteral>(ty.i32(), -2));
auto* body = create<BlockStatement>(StatementList{
create<DiscardStatement>(),
@@ -144,7 +144,7 @@
TEST_F(CaseStatementTest, ToStr_WithSelectors_u32) {
CaseSelectorList b;
- b.push_back(create<UintLiteral>(ty.u32, 2));
+ b.push_back(create<UintLiteral>(ty.u32(), 2));
auto* body = create<BlockStatement>(StatementList{
create<DiscardStatement>(),
@@ -161,8 +161,8 @@
TEST_F(CaseStatementTest, ToStr_WithMultipleSelectors) {
CaseSelectorList b;
- b.push_back(create<SintLiteral>(ty.i32, 1));
- b.push_back(create<SintLiteral>(ty.i32, 2));
+ b.push_back(create<SintLiteral>(ty.i32(), 1));
+ b.push_back(create<SintLiteral>(ty.i32(), 2));
auto* body = create<BlockStatement>(StatementList{
create<DiscardStatement>(),
diff --git a/src/ast/expression_test.cc b/src/ast/expression_test.cc
index c6887e3..9dde377 100644
--- a/src/ast/expression_test.cc
+++ b/src/ast/expression_test.cc
@@ -35,13 +35,13 @@
TEST_F(ExpressionTest, set_result_type) {
FakeExpr e;
- e.set_result_type(ty.i32);
+ e.set_result_type(ty.i32());
ASSERT_NE(e.result_type(), nullptr);
EXPECT_TRUE(e.result_type()->Is<type::I32>());
}
TEST_F(ExpressionTest, set_result_type_alias) {
- auto* a = ty.alias("a", ty.i32);
+ auto* a = ty.alias("a", ty.i32());
auto* b = ty.alias("b", a);
FakeExpr e;
diff --git a/src/ast/float_literal_test.cc b/src/ast/float_literal_test.cc
index 41be541..fd4dfe7 100644
--- a/src/ast/float_literal_test.cc
+++ b/src/ast/float_literal_test.cc
@@ -28,13 +28,13 @@
using FloatLiteralTest = TestHelper;
TEST_F(FloatLiteralTest, Value) {
- auto* f = create<FloatLiteral>(ty.f32, 47.2f);
+ auto* f = create<FloatLiteral>(ty.f32(), 47.2f);
ASSERT_TRUE(f->Is<FloatLiteral>());
EXPECT_EQ(f->value(), 47.2f);
}
TEST_F(FloatLiteralTest, Is) {
- ast::Literal* l = create<FloatLiteral>(ty.f32, 42.f);
+ ast::Literal* l = create<FloatLiteral>(ty.f32(), 42.f);
EXPECT_FALSE(l->Is<BoolLiteral>());
EXPECT_FALSE(l->Is<SintLiteral>());
EXPECT_FALSE(l->Is<IntLiteral>());
@@ -44,13 +44,13 @@
}
TEST_F(FloatLiteralTest, ToStr) {
- auto* f = create<FloatLiteral>(ty.f32, 42.1f);
+ auto* f = create<FloatLiteral>(ty.f32(), 42.1f);
EXPECT_EQ(f->to_str(), "42.099998");
}
TEST_F(FloatLiteralTest, ToName) {
- auto* f = create<FloatLiteral>(ty.f32, 42.1f);
+ auto* f = create<FloatLiteral>(ty.f32(), 42.1f);
EXPECT_EQ(f->name(), "__float42.0999985");
}
diff --git a/src/ast/function_test.cc b/src/ast/function_test.cc
index d5beabd..636042a 100644
--- a/src/ast/function_test.cc
+++ b/src/ast/function_test.cc
@@ -31,22 +31,22 @@
TEST_F(FunctionTest, Creation) {
VariableList params;
- params.push_back(Var("var", StorageClass::kNone, ty.i32));
+ params.push_back(Var("var", StorageClass::kNone, ty.i32()));
auto* var = params[0];
- auto* f =
- Func("func", params, ty.void_, StatementList{}, FunctionDecorationList{});
+ auto* f = Func("func", params, ty.void_(), StatementList{},
+ FunctionDecorationList{});
EXPECT_EQ(f->symbol(), mod->Symbols().Register("func"));
ASSERT_EQ(f->params().size(), 1u);
- EXPECT_EQ(f->return_type(), ty.void_);
+ EXPECT_EQ(f->return_type(), ty.void_());
EXPECT_EQ(f->params()[0], var);
}
TEST_F(FunctionTest, Creation_WithSource) {
VariableList params;
- params.push_back(Var("var", StorageClass::kNone, ty.i32));
+ params.push_back(Var("var", StorageClass::kNone, ty.i32()));
- auto* f = Func(Source{Source::Location{20, 2}}, "func", params, ty.void_,
+ auto* f = Func(Source{Source::Location{20, 2}}, "func", params, ty.void_(),
StatementList{}, FunctionDecorationList{});
auto src = f->source();
EXPECT_EQ(src.range.begin.line, 20u);
@@ -54,8 +54,8 @@
}
TEST_F(FunctionTest, AddDuplicateReferencedVariables) {
- auto* v = Var("var", StorageClass::kInput, ty.i32);
- auto* f = Func("func", VariableList{}, ty.void_, StatementList{},
+ auto* v = Var("var", StorageClass::kInput, ty.i32());
+ auto* f = Func("func", VariableList{}, ty.void_(), StatementList{},
FunctionDecorationList{});
f->add_referenced_module_variable(v);
@@ -65,34 +65,34 @@
f->add_referenced_module_variable(v);
ASSERT_EQ(f->referenced_module_variables().size(), 1u);
- auto* v2 = Var("var2", StorageClass::kOutput, ty.i32);
+ auto* v2 = Var("var2", StorageClass::kOutput, ty.i32());
f->add_referenced_module_variable(v2);
ASSERT_EQ(f->referenced_module_variables().size(), 2u);
EXPECT_EQ(f->referenced_module_variables()[1], v2);
}
TEST_F(FunctionTest, GetReferenceLocations) {
- auto* loc1 = Var("loc1", StorageClass::kInput, ty.i32, nullptr,
+ auto* loc1 = Var("loc1", StorageClass::kInput, ty.i32(), nullptr,
ast::VariableDecorationList{
create<LocationDecoration>(0),
});
- auto* loc2 = Var("loc2", StorageClass::kInput, ty.i32, nullptr,
+ auto* loc2 = Var("loc2", StorageClass::kInput, ty.i32(), nullptr,
ast::VariableDecorationList{
create<LocationDecoration>(1),
});
- auto* builtin1 = Var("builtin1", StorageClass::kInput, ty.i32, nullptr,
+ auto* builtin1 = Var("builtin1", StorageClass::kInput, ty.i32(), nullptr,
ast::VariableDecorationList{
create<BuiltinDecoration>(Builtin::kPosition),
});
- auto* builtin2 = Var("builtin2", StorageClass::kInput, ty.i32, nullptr,
+ auto* builtin2 = Var("builtin2", StorageClass::kInput, ty.i32(), nullptr,
ast::VariableDecorationList{
create<BuiltinDecoration>(Builtin::kFragDepth),
});
- auto* f = Func("func", VariableList{}, ty.void_, StatementList{},
+ auto* f = Func("func", VariableList{}, ty.void_(), StatementList{},
FunctionDecorationList{});
f->add_referenced_module_variable(loc1);
@@ -110,27 +110,27 @@
}
TEST_F(FunctionTest, GetReferenceBuiltins) {
- auto* loc1 = Var("loc1", StorageClass::kInput, ty.i32, nullptr,
+ auto* loc1 = Var("loc1", StorageClass::kInput, ty.i32(), nullptr,
ast::VariableDecorationList{
create<LocationDecoration>(0),
});
- auto* loc2 = Var("loc2", StorageClass::kInput, ty.i32, nullptr,
+ auto* loc2 = Var("loc2", StorageClass::kInput, ty.i32(), nullptr,
ast::VariableDecorationList{
create<LocationDecoration>(1),
});
- auto* builtin1 = Var("builtin1", StorageClass::kInput, ty.i32, nullptr,
+ auto* builtin1 = Var("builtin1", StorageClass::kInput, ty.i32(), nullptr,
ast::VariableDecorationList{
create<BuiltinDecoration>(Builtin::kPosition),
});
- auto* builtin2 = Var("builtin2", StorageClass::kInput, ty.i32, nullptr,
+ auto* builtin2 = Var("builtin2", StorageClass::kInput, ty.i32(), nullptr,
ast::VariableDecorationList{
create<BuiltinDecoration>(Builtin::kFragDepth),
});
- auto* f = Func("func", VariableList{}, ty.void_, StatementList{},
+ auto* f = Func("func", VariableList{}, ty.void_(), StatementList{},
FunctionDecorationList{});
f->add_referenced_module_variable(loc1);
@@ -148,7 +148,7 @@
}
TEST_F(FunctionTest, AddDuplicateEntryPoints) {
- auto* f = Func("func", VariableList{}, ty.void_, StatementList{},
+ auto* f = Func("func", VariableList{}, ty.void_(), StatementList{},
FunctionDecorationList{});
auto main_sym = mod->Symbols().Register("main");
@@ -163,9 +163,9 @@
TEST_F(FunctionTest, IsValid) {
VariableList params;
- params.push_back(Var("var", StorageClass::kNone, ty.i32));
+ params.push_back(Var("var", StorageClass::kNone, ty.i32()));
- auto* f = Func("func", params, ty.void_,
+ auto* f = Func("func", params, ty.void_(),
StatementList{
create<DiscardStatement>(),
},
@@ -175,16 +175,16 @@
TEST_F(FunctionTest, IsValid_InvalidName) {
VariableList params;
- params.push_back(Var("var", StorageClass::kNone, ty.i32));
+ params.push_back(Var("var", StorageClass::kNone, ty.i32()));
auto* f =
- Func("", params, ty.void_, StatementList{}, FunctionDecorationList{});
+ Func("", params, ty.void_(), StatementList{}, FunctionDecorationList{});
EXPECT_FALSE(f->IsValid());
}
TEST_F(FunctionTest, IsValid_MissingReturnType) {
VariableList params;
- params.push_back(Var("var", StorageClass::kNone, ty.i32));
+ params.push_back(Var("var", StorageClass::kNone, ty.i32()));
auto* f =
Func("func", params, nullptr, StatementList{}, FunctionDecorationList{});
@@ -193,11 +193,11 @@
TEST_F(FunctionTest, IsValid_NullParam) {
VariableList params;
- params.push_back(Var("var", StorageClass::kNone, ty.i32));
+ params.push_back(Var("var", StorageClass::kNone, ty.i32()));
params.push_back(nullptr);
- auto* f =
- Func("func", params, ty.void_, StatementList{}, FunctionDecorationList{});
+ auto* f = Func("func", params, ty.void_(), StatementList{},
+ FunctionDecorationList{});
EXPECT_FALSE(f->IsValid());
}
@@ -205,16 +205,16 @@
VariableList params;
params.push_back(Var("var", StorageClass::kNone, nullptr));
- auto* f =
- Func("func", params, ty.void_, StatementList{}, FunctionDecorationList{});
+ auto* f = Func("func", params, ty.void_(), StatementList{},
+ FunctionDecorationList{});
EXPECT_FALSE(f->IsValid());
}
TEST_F(FunctionTest, IsValid_NullBodyStatement) {
VariableList params;
- params.push_back(Var("var", StorageClass::kNone, ty.i32));
+ params.push_back(Var("var", StorageClass::kNone, ty.i32()));
- auto* f = Func("func", params, ty.void_,
+ auto* f = Func("func", params, ty.void_(),
StatementList{
create<DiscardStatement>(),
nullptr,
@@ -226,9 +226,9 @@
TEST_F(FunctionTest, IsValid_InvalidBodyStatement) {
VariableList params;
- params.push_back(Var("var", StorageClass::kNone, ty.i32));
+ params.push_back(Var("var", StorageClass::kNone, ty.i32()));
- auto* f = Func("func", params, ty.void_,
+ auto* f = Func("func", params, ty.void_(),
StatementList{
create<DiscardStatement>(),
nullptr,
@@ -238,7 +238,7 @@
}
TEST_F(FunctionTest, ToStr) {
- auto* f = Func("func", VariableList{}, ty.void_,
+ auto* f = Func("func", VariableList{}, ty.void_(),
StatementList{
create<DiscardStatement>(),
},
@@ -255,7 +255,7 @@
}
TEST_F(FunctionTest, ToStr_WithDecoration) {
- auto* f = Func("func", VariableList{}, ty.void_,
+ auto* f = Func("func", VariableList{}, ty.void_(),
StatementList{
create<DiscardStatement>(),
},
@@ -274,9 +274,9 @@
TEST_F(FunctionTest, ToStr_WithParams) {
VariableList params;
- params.push_back(Var("var", StorageClass::kNone, ty.i32));
+ params.push_back(Var("var", StorageClass::kNone, ty.i32()));
- auto* f = Func("func", params, ty.void_,
+ auto* f = Func("func", params, ty.void_(),
StatementList{
create<DiscardStatement>(),
},
@@ -299,25 +299,25 @@
}
TEST_F(FunctionTest, TypeName) {
- auto* f = Func("func", VariableList{}, ty.void_, StatementList{},
+ auto* f = Func("func", VariableList{}, ty.void_(), StatementList{},
FunctionDecorationList{});
EXPECT_EQ(f->type_name(), "__func__void");
}
TEST_F(FunctionTest, TypeName_WithParams) {
VariableList params;
- params.push_back(Var("var1", StorageClass::kNone, ty.i32));
- params.push_back(Var("var2", StorageClass::kNone, ty.f32));
+ params.push_back(Var("var1", StorageClass::kNone, ty.i32()));
+ params.push_back(Var("var2", StorageClass::kNone, ty.f32()));
- auto* f =
- Func("func", params, ty.void_, StatementList{}, FunctionDecorationList{});
+ auto* f = Func("func", params, ty.void_(), StatementList{},
+ FunctionDecorationList{});
EXPECT_EQ(f->type_name(), "__func__void__i32__f32");
}
TEST_F(FunctionTest, GetLastStatement) {
VariableList params;
auto* stmt = create<DiscardStatement>();
- auto* f = Func("func", params, ty.void_, StatementList{stmt},
+ auto* f = Func("func", params, ty.void_(), StatementList{stmt},
FunctionDecorationList{});
EXPECT_EQ(f->get_last_statement(), stmt);
@@ -325,14 +325,14 @@
TEST_F(FunctionTest, GetLastStatement_nullptr) {
VariableList params;
- auto* f =
- Func("func", params, ty.void_, StatementList{}, FunctionDecorationList{});
+ auto* f = Func("func", params, ty.void_(), StatementList{},
+ FunctionDecorationList{});
EXPECT_EQ(f->get_last_statement(), nullptr);
}
TEST_F(FunctionTest, WorkgroupSize_NoneSet) {
- auto* f = Func("func", VariableList{}, ty.void_, StatementList{},
+ auto* f = Func("func", VariableList{}, ty.void_(), StatementList{},
FunctionDecorationList{});
uint32_t x = 0;
uint32_t y = 0;
@@ -345,7 +345,7 @@
TEST_F(FunctionTest, WorkgroupSize) {
auto* f =
- Func("func", VariableList{}, ty.void_, StatementList{},
+ Func("func", VariableList{}, ty.void_(), StatementList{},
FunctionDecorationList{create<WorkgroupDecoration>(2u, 4u, 6u)});
uint32_t x = 0;
@@ -360,7 +360,7 @@
using FunctionListTest = TestHelper;
TEST_F(FunctionListTest, FindSymbol) {
- auto* func = Func("main", VariableList{}, ty.f32, StatementList{},
+ auto* func = Func("main", VariableList{}, ty.f32(), StatementList{},
ast::FunctionDecorationList{});
FunctionList list;
list.Add(func);
@@ -373,11 +373,11 @@
}
TEST_F(FunctionListTest, FindSymbolStage) {
- auto* fs = Func("main", VariableList{}, ty.f32, StatementList{},
+ auto* fs = Func("main", VariableList{}, ty.f32(), StatementList{},
ast::FunctionDecorationList{
create<ast::StageDecoration>(PipelineStage::kFragment),
});
- auto* vs = Func("main", VariableList{}, ty.f32, StatementList{},
+ auto* vs = Func("main", VariableList{}, ty.f32(), StatementList{},
ast::FunctionDecorationList{
create<ast::StageDecoration>(PipelineStage::kVertex),
});
@@ -392,7 +392,7 @@
TEST_F(FunctionListTest, FindSymbolStageMissing) {
FunctionList list;
- list.Add(Func("main", VariableList{}, ty.f32, StatementList{},
+ list.Add(Func("main", VariableList{}, ty.f32(), StatementList{},
ast::FunctionDecorationList{
create<ast::StageDecoration>(PipelineStage::kFragment),
}));
@@ -402,7 +402,7 @@
TEST_F(FunctionListTest, HasStage) {
FunctionList list;
- list.Add(Func("main", VariableList{}, ty.f32, StatementList{},
+ list.Add(Func("main", VariableList{}, ty.f32(), StatementList{},
ast::FunctionDecorationList{
create<ast::StageDecoration>(PipelineStage::kFragment),
}));
diff --git a/src/ast/int_literal_test.cc b/src/ast/int_literal_test.cc
index e207f83..58abbfb 100644
--- a/src/ast/int_literal_test.cc
+++ b/src/ast/int_literal_test.cc
@@ -30,12 +30,12 @@
using IntLiteralTest = TestHelper;
TEST_F(IntLiteralTest, Sint_IsInt) {
- auto* i = create<SintLiteral>(ty.i32, 47);
+ auto* i = create<SintLiteral>(ty.i32(), 47);
ASSERT_TRUE(i->Is<IntLiteral>());
}
TEST_F(IntLiteralTest, Uint_IsInt) {
- auto* i = create<UintLiteral>(ty.i32, 42);
+ auto* i = create<UintLiteral>(ty.i32(), 42);
EXPECT_TRUE(i->Is<IntLiteral>());
}
diff --git a/src/ast/intrinsic_texture_helper_test.cc b/src/ast/intrinsic_texture_helper_test.cc
index b1a16c3..ac48c3e 100644
--- a/src/ast/intrinsic_texture_helper_test.cc
+++ b/src/ast/intrinsic_texture_helper_test.cc
@@ -139,11 +139,11 @@
ast::Builder* b) const {
switch (texture_data_type) {
case ast::intrinsic::test::TextureDataType::kF32:
- return b->ty.f32;
+ return b->ty.f32();
case ast::intrinsic::test::TextureDataType::kU32:
- return b->ty.u32;
+ return b->ty.u32();
case ast::intrinsic::test::TextureDataType::kI32:
- return b->ty.i32;
+ return b->ty.i32();
}
assert(false /* unreachable */);
diff --git a/src/ast/null_literal_test.cc b/src/ast/null_literal_test.cc
index 93b6d44..e50bd42 100644
--- a/src/ast/null_literal_test.cc
+++ b/src/ast/null_literal_test.cc
@@ -28,7 +28,7 @@
using NullLiteralTest = TestHelper;
TEST_F(NullLiteralTest, Is) {
- ast::Literal* l = create<NullLiteral>(ty.i32);
+ ast::Literal* l = create<NullLiteral>(ty.i32());
EXPECT_FALSE(l->Is<BoolLiteral>());
EXPECT_FALSE(l->Is<SintLiteral>());
EXPECT_FALSE(l->Is<FloatLiteral>());
@@ -38,13 +38,13 @@
}
TEST_F(NullLiteralTest, ToStr) {
- auto* i = create<NullLiteral>(ty.i32);
+ auto* i = create<NullLiteral>(ty.i32());
EXPECT_EQ(i->to_str(), "null __i32");
}
TEST_F(NullLiteralTest, Name_I32) {
- auto* i = create<NullLiteral>(ty.i32);
+ auto* i = create<NullLiteral>(ty.i32());
EXPECT_EQ("__null__i32", i->name());
}
diff --git a/src/ast/scalar_constructor_expression_test.cc b/src/ast/scalar_constructor_expression_test.cc
index 563a086..c4a4559 100644
--- a/src/ast/scalar_constructor_expression_test.cc
+++ b/src/ast/scalar_constructor_expression_test.cc
@@ -25,7 +25,7 @@
using ScalarConstructorExpressionTest = TestHelper;
TEST_F(ScalarConstructorExpressionTest, Creation) {
- auto* b = create<BoolLiteral>(ty.bool_, true);
+ auto* b = create<BoolLiteral>(ty.bool_(), true);
auto* c = create<ScalarConstructorExpression>(b);
EXPECT_EQ(c->literal(), b);
}
diff --git a/src/ast/sint_literal_test.cc b/src/ast/sint_literal_test.cc
index 3cdb7bb..2fc5993 100644
--- a/src/ast/sint_literal_test.cc
+++ b/src/ast/sint_literal_test.cc
@@ -29,13 +29,13 @@
using SintLiteralTest = TestHelper;
TEST_F(SintLiteralTest, Value) {
- auto* i = create<SintLiteral>(ty.i32, 47);
+ auto* i = create<SintLiteral>(ty.i32(), 47);
ASSERT_TRUE(i->Is<SintLiteral>());
EXPECT_EQ(i->value(), 47);
}
TEST_F(SintLiteralTest, Is) {
- ast::Literal* l = create<SintLiteral>(ty.i32, 42);
+ ast::Literal* l = create<SintLiteral>(ty.i32(), 42);
EXPECT_FALSE(l->Is<BoolLiteral>());
EXPECT_TRUE(l->Is<SintLiteral>());
EXPECT_FALSE(l->Is<FloatLiteral>());
@@ -44,13 +44,13 @@
}
TEST_F(SintLiteralTest, ToStr) {
- auto* i = create<SintLiteral>(ty.i32, -42);
+ auto* i = create<SintLiteral>(ty.i32(), -42);
EXPECT_EQ(i->to_str(), "-42");
}
TEST_F(SintLiteralTest, Name_I32) {
- auto* i = create<SintLiteral>(ty.i32, 2);
+ auto* i = create<SintLiteral>(ty.i32(), 2);
EXPECT_EQ("__sint__i32_2", i->name());
}
diff --git a/src/ast/struct_member_test.cc b/src/ast/struct_member_test.cc
index 2591a64..55ffc64 100644
--- a/src/ast/struct_member_test.cc
+++ b/src/ast/struct_member_test.cc
@@ -28,9 +28,9 @@
using StructMemberTest = TestHelper;
TEST_F(StructMemberTest, Creation) {
- auto* st = Member("a", ty.i32, {MemberOffset(4)});
+ auto* st = Member("a", ty.i32(), {MemberOffset(4)});
EXPECT_EQ(st->symbol(), Symbol(1));
- EXPECT_EQ(st->type(), ty.i32);
+ EXPECT_EQ(st->type(), ty.i32());
EXPECT_EQ(st->decorations().size(), 1u);
EXPECT_TRUE(st->decorations()[0]->Is<StructMemberOffsetDecoration>());
EXPECT_EQ(st->source().range.begin.line, 0u);
@@ -42,9 +42,9 @@
TEST_F(StructMemberTest, CreationWithSource) {
auto* st = Member(
Source{Source::Range{Source::Location{27, 4}, Source::Location{27, 8}}},
- "a", ty.i32);
+ "a", ty.i32());
EXPECT_EQ(st->symbol(), Symbol(1));
- EXPECT_EQ(st->type(), ty.i32);
+ EXPECT_EQ(st->type(), ty.i32());
EXPECT_EQ(st->decorations().size(), 0u);
EXPECT_EQ(st->source().range.begin.line, 27u);
EXPECT_EQ(st->source().range.begin.column, 4u);
@@ -53,12 +53,12 @@
}
TEST_F(StructMemberTest, IsValid) {
- auto* st = Member("a", ty.i32);
+ auto* st = Member("a", ty.i32());
EXPECT_TRUE(st->IsValid());
}
TEST_F(StructMemberTest, IsValid_EmptySymbol) {
- auto* st = Member("", ty.i32);
+ auto* st = Member("", ty.i32());
EXPECT_FALSE(st->IsValid());
}
@@ -68,19 +68,19 @@
}
TEST_F(StructMemberTest, IsValid_Null_Decoration) {
- auto* st = Member("a", ty.i32, {MemberOffset(4), nullptr});
+ auto* st = Member("a", ty.i32(), {MemberOffset(4), nullptr});
EXPECT_FALSE(st->IsValid());
}
TEST_F(StructMemberTest, ToStr) {
- auto* st = Member("a", ty.i32, {MemberOffset(4)});
+ auto* st = Member("a", ty.i32(), {MemberOffset(4)});
std::ostringstream out;
st->to_str(out, 2);
EXPECT_EQ(demangle(out.str()), " StructMember{[[ offset 4 ]] a: __i32}\n");
}
TEST_F(StructMemberTest, ToStrNoDecorations) {
- auto* st = Member("a", ty.i32);
+ auto* st = Member("a", ty.i32());
std::ostringstream out;
st->to_str(out, 2);
EXPECT_EQ(demangle(out.str()), " StructMember{a: __i32}\n");
diff --git a/src/ast/struct_test.cc b/src/ast/struct_test.cc
index a34a2a6..8274c5a 100644
--- a/src/ast/struct_test.cc
+++ b/src/ast/struct_test.cc
@@ -30,7 +30,7 @@
using StructTest = TestHelper;
TEST_F(StructTest, Creation) {
- auto* s = create<Struct>(StructMemberList{Member("a", ty.i32)},
+ auto* s = create<Struct>(StructMemberList{Member("a", ty.i32())},
StructDecorationList{});
EXPECT_EQ(s->members().size(), 1u);
EXPECT_TRUE(s->decorations().empty());
@@ -44,7 +44,7 @@
StructDecorationList decos;
decos.push_back(create<StructBlockDecoration>());
- auto* s = create<Struct>(StructMemberList{Member("a", ty.i32)}, decos);
+ auto* s = create<Struct>(StructMemberList{Member("a", ty.i32())}, decos);
EXPECT_EQ(s->members().size(), 1u);
ASSERT_EQ(s->decorations().size(), 1u);
EXPECT_TRUE(s->decorations()[0]->Is<StructBlockDecoration>());
@@ -60,7 +60,7 @@
auto* s = create<Struct>(
Source{Source::Range{Source::Location{27, 4}, Source::Location{27, 8}}},
- StructMemberList{Member("a", ty.i32)}, decos);
+ StructMemberList{Member("a", ty.i32())}, decos);
EXPECT_EQ(s->members().size(), 1u);
ASSERT_EQ(s->decorations().size(), 1u);
EXPECT_TRUE(s->decorations()[0]->Is<StructBlockDecoration>());
@@ -76,13 +76,13 @@
}
TEST_F(StructTest, IsValid_Null_StructMember) {
- auto* s = create<Struct>(StructMemberList{Member("a", ty.i32), nullptr},
+ auto* s = create<Struct>(StructMemberList{Member("a", ty.i32()), nullptr},
StructDecorationList{});
EXPECT_FALSE(s->IsValid());
}
TEST_F(StructTest, IsValid_Invalid_StructMember) {
- auto* s = create<Struct>(StructMemberList{Member("", ty.i32)},
+ auto* s = create<Struct>(StructMemberList{Member("", ty.i32())},
ast::StructDecorationList{});
EXPECT_FALSE(s->IsValid());
}
@@ -90,7 +90,7 @@
TEST_F(StructTest, ToStr) {
StructDecorationList decos;
decos.push_back(create<StructBlockDecoration>());
- auto* s = create<Struct>(StructMemberList{Member("a", ty.i32)}, decos);
+ auto* s = create<Struct>(StructMemberList{Member("a", ty.i32())}, decos);
std::ostringstream out;
s->to_str(out, 2);
diff --git a/src/ast/switch_statement_test.cc b/src/ast/switch_statement_test.cc
index 5f05e6a..d51eb55 100644
--- a/src/ast/switch_statement_test.cc
+++ b/src/ast/switch_statement_test.cc
@@ -30,7 +30,7 @@
TEST_F(SwitchStatementTest, Creation) {
CaseSelectorList lit;
- lit.push_back(create<SintLiteral>(ty.i32, 1));
+ lit.push_back(create<SintLiteral>(ty.i32(), 1));
auto* ident = Expr("ident");
CaseStatementList body;
@@ -56,7 +56,7 @@
TEST_F(SwitchStatementTest, IsSwitch) {
CaseSelectorList lit;
- lit.push_back(create<SintLiteral>(ty.i32, 2));
+ lit.push_back(create<SintLiteral>(ty.i32(), 2));
auto* ident = Expr("ident");
CaseStatementList body;
@@ -69,7 +69,7 @@
TEST_F(SwitchStatementTest, IsValid) {
CaseSelectorList lit;
- lit.push_back(create<SintLiteral>(ty.i32, 2));
+ lit.push_back(create<SintLiteral>(ty.i32(), 2));
auto* ident = Expr("ident");
CaseStatementList body;
@@ -82,7 +82,7 @@
TEST_F(SwitchStatementTest, IsValid_Null_Condition) {
CaseSelectorList lit;
- lit.push_back(create<SintLiteral>(ty.i32, 2));
+ lit.push_back(create<SintLiteral>(ty.i32(), 2));
CaseStatementList body;
body.push_back(
@@ -94,7 +94,7 @@
TEST_F(SwitchStatementTest, IsValid_Invalid_Condition) {
CaseSelectorList lit;
- lit.push_back(create<SintLiteral>(ty.i32, 2));
+ lit.push_back(create<SintLiteral>(ty.i32(), 2));
auto* ident = Expr("");
CaseStatementList body;
@@ -107,7 +107,7 @@
TEST_F(SwitchStatementTest, IsValid_Null_BodyStatement) {
CaseSelectorList lit;
- lit.push_back(create<SintLiteral>(ty.i32, 2));
+ lit.push_back(create<SintLiteral>(ty.i32(), 2));
auto* ident = Expr("ident");
CaseStatementList body;
@@ -148,7 +148,7 @@
TEST_F(SwitchStatementTest, ToStr) {
CaseSelectorList lit;
- lit.push_back(create<SintLiteral>(ty.i32, 2));
+ lit.push_back(create<SintLiteral>(ty.i32(), 2));
auto* ident = Expr("ident");
CaseStatementList body;
diff --git a/src/ast/type_constructor_expression_test.cc b/src/ast/type_constructor_expression_test.cc
index b7bbfb0..4f1b3b1 100644
--- a/src/ast/type_constructor_expression_test.cc
+++ b/src/ast/type_constructor_expression_test.cc
@@ -33,8 +33,8 @@
ExpressionList expr;
expr.push_back(Expr("expr"));
- auto* t = create<TypeConstructorExpression>(ty.f32, expr);
- EXPECT_EQ(t->type(), ty.f32);
+ auto* t = create<TypeConstructorExpression>(ty.f32(), expr);
+ EXPECT_EQ(t->type(), ty.f32());
ASSERT_EQ(t->values().size(), 1u);
EXPECT_EQ(t->values()[0], expr[0]);
}
@@ -44,7 +44,7 @@
expr.push_back(Expr("expr"));
auto* t = create<TypeConstructorExpression>(Source{Source::Location{20, 2}},
- ty.f32, expr);
+ ty.f32(), expr);
auto src = t->source();
EXPECT_EQ(src.range.begin.line, 20u);
EXPECT_EQ(src.range.begin.column, 2u);
@@ -54,7 +54,7 @@
ExpressionList expr;
expr.push_back(Expr("expr"));
- auto* t = create<TypeConstructorExpression>(ty.f32, expr);
+ auto* t = create<TypeConstructorExpression>(ty.f32(), expr);
EXPECT_TRUE(t->Is<TypeConstructorExpression>());
}
@@ -62,14 +62,14 @@
ExpressionList expr;
expr.push_back(Expr("expr"));
- auto* t = create<TypeConstructorExpression>(ty.f32, expr);
+ auto* t = create<TypeConstructorExpression>(ty.f32(), expr);
EXPECT_TRUE(t->IsValid());
}
TEST_F(TypeConstructorExpressionTest, IsValid_EmptyValue) {
ExpressionList expr;
- auto* t = create<TypeConstructorExpression>(ty.f32, expr);
+ auto* t = create<TypeConstructorExpression>(ty.f32(), expr);
EXPECT_TRUE(t->IsValid());
}
@@ -86,7 +86,7 @@
expr.push_back(Expr("expr"));
expr.push_back(nullptr);
- auto* t = create<TypeConstructorExpression>(ty.f32, expr);
+ auto* t = create<TypeConstructorExpression>(ty.f32(), expr);
EXPECT_FALSE(t->IsValid());
}
@@ -94,12 +94,12 @@
ExpressionList expr;
expr.push_back(Expr(""));
- auto* t = create<TypeConstructorExpression>(ty.f32, expr);
+ auto* t = create<TypeConstructorExpression>(ty.f32(), expr);
EXPECT_FALSE(t->IsValid());
}
TEST_F(TypeConstructorExpressionTest, ToStr) {
- type::Vector vec(ty.f32, 3);
+ type::Vector vec(ty.f32(), 3);
ExpressionList expr;
expr.push_back(Expr("expr_1"));
expr.push_back(Expr("expr_2"));
diff --git a/src/ast/uint_literal_test.cc b/src/ast/uint_literal_test.cc
index db3e1bb..1216bb2 100644
--- a/src/ast/uint_literal_test.cc
+++ b/src/ast/uint_literal_test.cc
@@ -28,13 +28,13 @@
using UintLiteralTest = TestHelper;
TEST_F(UintLiteralTest, Value) {
- auto* u = create<UintLiteral>(ty.u32, 47);
+ auto* u = create<UintLiteral>(ty.u32(), 47);
ASSERT_TRUE(u->Is<UintLiteral>());
EXPECT_EQ(u->value(), 47u);
}
TEST_F(UintLiteralTest, Is) {
- ast::Literal* l = create<UintLiteral>(ty.u32, 42);
+ ast::Literal* l = create<UintLiteral>(ty.u32(), 42);
EXPECT_FALSE(l->Is<BoolLiteral>());
EXPECT_FALSE(l->Is<SintLiteral>());
EXPECT_FALSE(l->Is<FloatLiteral>());
@@ -43,7 +43,7 @@
}
TEST_F(UintLiteralTest, ToStr) {
- auto* u = create<UintLiteral>(ty.u32, 42);
+ auto* u = create<UintLiteral>(ty.u32(), 42);
EXPECT_EQ(u->to_str(), "42");
}
diff --git a/src/ast/variable_decl_statement_test.cc b/src/ast/variable_decl_statement_test.cc
index 60b878b..62294fa 100644
--- a/src/ast/variable_decl_statement_test.cc
+++ b/src/ast/variable_decl_statement_test.cc
@@ -25,14 +25,14 @@
using VariableDeclStatementTest = TestHelper;
TEST_F(VariableDeclStatementTest, Creation) {
- auto* var = Var("a", StorageClass::kNone, ty.f32);
+ auto* var = Var("a", StorageClass::kNone, ty.f32());
auto* stmt = create<VariableDeclStatement>(var);
EXPECT_EQ(stmt->variable(), var);
}
TEST_F(VariableDeclStatementTest, Creation_WithSource) {
- auto* var = Var("a", StorageClass::kNone, ty.f32);
+ auto* var = Var("a", StorageClass::kNone, ty.f32());
auto* stmt =
create<VariableDeclStatement>(Source{Source::Location{20, 2}}, var);
@@ -42,20 +42,20 @@
}
TEST_F(VariableDeclStatementTest, IsVariableDecl) {
- auto* var = Var("a", StorageClass::kNone, ty.f32);
+ auto* var = Var("a", StorageClass::kNone, ty.f32());
auto* stmt = create<VariableDeclStatement>(var);
EXPECT_TRUE(stmt->Is<VariableDeclStatement>());
}
TEST_F(VariableDeclStatementTest, IsValid) {
- auto* var = Var("a", StorageClass::kNone, ty.f32);
+ auto* var = Var("a", StorageClass::kNone, ty.f32());
auto* stmt = create<VariableDeclStatement>(var);
EXPECT_TRUE(stmt->IsValid());
}
TEST_F(VariableDeclStatementTest, IsValid_InvalidVariable) {
- auto* var = Var("", StorageClass::kNone, ty.f32);
+ auto* var = Var("", StorageClass::kNone, ty.f32());
auto* stmt = create<VariableDeclStatement>(var);
EXPECT_FALSE(stmt->IsValid());
}
@@ -66,7 +66,7 @@
}
TEST_F(VariableDeclStatementTest, ToStr) {
- auto* var = Var("a", StorageClass::kNone, ty.f32);
+ auto* var = Var("a", StorageClass::kNone, ty.f32());
auto* stmt =
create<VariableDeclStatement>(Source{Source::Location{20, 2}}, var);
diff --git a/src/ast/variable_test.cc b/src/ast/variable_test.cc
index 331d17f..a7d2319 100644
--- a/src/ast/variable_test.cc
+++ b/src/ast/variable_test.cc
@@ -27,11 +27,11 @@
using VariableTest = TestHelper;
TEST_F(VariableTest, Creation) {
- auto* v = Var("my_var", StorageClass::kFunction, ty.i32);
+ auto* v = Var("my_var", StorageClass::kFunction, ty.i32());
EXPECT_EQ(v->symbol(), Symbol(1));
EXPECT_EQ(v->storage_class(), StorageClass::kFunction);
- EXPECT_EQ(v->type(), ty.i32);
+ EXPECT_EQ(v->type(), ty.i32());
EXPECT_EQ(v->source().range.begin.line, 0u);
EXPECT_EQ(v->source().range.begin.column, 0u);
EXPECT_EQ(v->source().range.end.line, 0u);
@@ -41,11 +41,11 @@
TEST_F(VariableTest, CreationWithSource) {
auto* v = Var(
Source{Source::Range{Source::Location{27, 4}, Source::Location{27, 5}}},
- "i", StorageClass::kPrivate, ty.f32, nullptr, VariableDecorationList{});
+ "i", StorageClass::kPrivate, ty.f32(), nullptr, VariableDecorationList{});
EXPECT_EQ(v->symbol(), Symbol(1));
EXPECT_EQ(v->storage_class(), StorageClass::kPrivate);
- EXPECT_EQ(v->type(), ty.f32);
+ EXPECT_EQ(v->type(), ty.f32());
EXPECT_EQ(v->source().range.begin.line, 27u);
EXPECT_EQ(v->source().range.begin.column, 4u);
EXPECT_EQ(v->source().range.end.line, 27u);
@@ -55,12 +55,12 @@
TEST_F(VariableTest, CreationEmpty) {
auto* v = Var(
Source{Source::Range{Source::Location{27, 4}, Source::Location{27, 7}}},
- "a_var", StorageClass::kWorkgroup, ty.i32, nullptr,
+ "a_var", StorageClass::kWorkgroup, ty.i32(), nullptr,
VariableDecorationList{});
EXPECT_EQ(v->symbol(), Symbol(1));
EXPECT_EQ(v->storage_class(), StorageClass::kWorkgroup);
- EXPECT_EQ(v->type(), ty.i32);
+ EXPECT_EQ(v->type(), ty.i32());
EXPECT_EQ(v->source().range.begin.line, 27u);
EXPECT_EQ(v->source().range.begin.column, 4u);
EXPECT_EQ(v->source().range.end.line, 27u);
@@ -68,18 +68,18 @@
}
TEST_F(VariableTest, IsValid) {
- auto* v = Var("my_var", StorageClass::kNone, ty.i32);
+ auto* v = Var("my_var", StorageClass::kNone, ty.i32());
EXPECT_TRUE(v->IsValid());
}
TEST_F(VariableTest, IsValid_WithConstructor) {
- auto* v = Var("my_var", StorageClass::kNone, ty.i32, Expr("ident"),
+ auto* v = Var("my_var", StorageClass::kNone, ty.i32(), Expr("ident"),
ast::VariableDecorationList{});
EXPECT_TRUE(v->IsValid());
}
TEST_F(VariableTest, IsValid_MissingSymbol) {
- auto* v = Var("", StorageClass::kNone, ty.i32);
+ auto* v = Var("", StorageClass::kNone, ty.i32());
EXPECT_FALSE(v->IsValid());
}
@@ -94,13 +94,13 @@
}
TEST_F(VariableTest, IsValid_InvalidConstructor) {
- auto* v = Var("my_var", StorageClass::kNone, ty.i32, Expr(""),
+ auto* v = Var("my_var", StorageClass::kNone, ty.i32(), Expr(""),
ast::VariableDecorationList{});
EXPECT_FALSE(v->IsValid());
}
TEST_F(VariableTest, to_str) {
- auto* v = Var("my_var", StorageClass::kFunction, ty.f32, nullptr,
+ auto* v = Var("my_var", StorageClass::kFunction, ty.f32(), nullptr,
ast::VariableDecorationList{});
std::ostringstream out;
v->to_str(out, 2);
@@ -113,7 +113,7 @@
}
TEST_F(VariableTest, WithDecorations) {
- auto* var = Var("my_var", StorageClass::kFunction, ty.i32, nullptr,
+ auto* var = Var("my_var", StorageClass::kFunction, ty.i32(), nullptr,
VariableDecorationList{
create<LocationDecoration>(1),
create<BuiltinDecoration>(Builtin::kPosition),
@@ -130,7 +130,7 @@
}
TEST_F(VariableTest, ConstantId) {
- auto* var = Var("my_var", StorageClass::kFunction, ty.i32, nullptr,
+ auto* var = Var("my_var", StorageClass::kFunction, ty.i32(), nullptr,
VariableDecorationList{
create<ConstantIdDecoration>(1200),
});
@@ -139,7 +139,7 @@
}
TEST_F(VariableTest, Decorated_to_str) {
- auto* var = Var("my_var", StorageClass::kFunction, ty.f32, Expr("expr"),
+ auto* var = Var("my_var", StorageClass::kFunction, ty.f32(), Expr("expr"),
VariableDecorationList{
create<BindingDecoration>(2),
create<GroupDecoration>(1),