ast::Builder: Remove zero-init Source constructors
Builder now has a SetSource() method that can be used to specify the source for the future built nodes
Bug: tint:396
Bug: tint:390
Change-Id: I9b49bc31c4bf92b3baf5946c413dfe770de0e23d
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/35740
Auto-Submit: Ben Clayton <bclayton@google.com>
Commit-Queue: dan sinclair <dsinclair@chromium.org>
Reviewed-by: dan sinclair <dsinclair@chromium.org>
diff --git a/src/ast/builder.h b/src/ast/builder.h
index 42efe59..a4f4b64 100644
--- a/src/ast/builder.h
+++ b/src/ast/builder.h
@@ -300,7 +300,7 @@
template <typename T, typename... ARGS>
TypeConstructorExpression* Construct(ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, ty.Of<T>(), ExprList(std::forward<ARGS>(args)...));
+ ty.Of<T>(), ExprList(std::forward<ARGS>(args)...));
}
/// @param type the type to construct
@@ -310,7 +310,7 @@
template <typename... ARGS>
TypeConstructorExpression* Construct(type::Type* type, ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, type, ExprList(std::forward<ARGS>(args)...));
+ type, ExprList(std::forward<ARGS>(args)...));
}
/// @param args the arguments for the vector constructor
@@ -319,7 +319,7 @@
template <typename T, typename... ARGS>
TypeConstructorExpression* vec2(ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, ty.vec2<T>(), ExprList(std::forward<ARGS>(args)...));
+ ty.vec2<T>(), ExprList(std::forward<ARGS>(args)...));
}
/// @param args the arguments for the vector constructor
@@ -328,7 +328,7 @@
template <typename T, typename... ARGS>
TypeConstructorExpression* vec3(ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, ty.vec3<T>(), ExprList(std::forward<ARGS>(args)...));
+ ty.vec3<T>(), ExprList(std::forward<ARGS>(args)...));
}
/// @param args the arguments for the vector constructor
@@ -337,7 +337,7 @@
template <typename T, typename... ARGS>
TypeConstructorExpression* vec4(ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, ty.vec4<T>(), ExprList(std::forward<ARGS>(args)...));
+ ty.vec4<T>(), ExprList(std::forward<ARGS>(args)...));
}
/// @param args the arguments for the matrix constructor
@@ -346,7 +346,7 @@
template <typename T, typename... ARGS>
TypeConstructorExpression* mat2x2(ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, ty.mat2x2<T>(), ExprList(std::forward<ARGS>(args)...));
+ ty.mat2x2<T>(), ExprList(std::forward<ARGS>(args)...));
}
/// @param args the arguments for the matrix constructor
@@ -355,7 +355,7 @@
template <typename T, typename... ARGS>
TypeConstructorExpression* mat2x3(ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, ty.mat2x3<T>(), ExprList(std::forward<ARGS>(args)...));
+ ty.mat2x3<T>(), ExprList(std::forward<ARGS>(args)...));
}
/// @param args the arguments for the matrix constructor
@@ -364,7 +364,7 @@
template <typename T, typename... ARGS>
TypeConstructorExpression* mat2x4(ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, ty.mat2x4<T>(), ExprList(std::forward<ARGS>(args)...));
+ ty.mat2x4<T>(), ExprList(std::forward<ARGS>(args)...));
}
/// @param args the arguments for the matrix constructor
@@ -373,7 +373,7 @@
template <typename T, typename... ARGS>
TypeConstructorExpression* mat3x2(ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, ty.mat3x2<T>(), ExprList(std::forward<ARGS>(args)...));
+ ty.mat3x2<T>(), ExprList(std::forward<ARGS>(args)...));
}
/// @param args the arguments for the matrix constructor
@@ -382,7 +382,7 @@
template <typename T, typename... ARGS>
TypeConstructorExpression* mat3x3(ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, ty.mat3x3<T>(), ExprList(std::forward<ARGS>(args)...));
+ ty.mat3x3<T>(), ExprList(std::forward<ARGS>(args)...));
}
/// @param args the arguments for the matrix constructor
@@ -391,7 +391,7 @@
template <typename T, typename... ARGS>
TypeConstructorExpression* mat3x4(ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, ty.mat3x4<T>(), ExprList(std::forward<ARGS>(args)...));
+ ty.mat3x4<T>(), ExprList(std::forward<ARGS>(args)...));
}
/// @param args the arguments for the matrix constructor
@@ -400,7 +400,7 @@
template <typename T, typename... ARGS>
TypeConstructorExpression* mat4x2(ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, ty.mat4x2<T>(), ExprList(std::forward<ARGS>(args)...));
+ ty.mat4x2<T>(), ExprList(std::forward<ARGS>(args)...));
}
/// @param args the arguments for the matrix constructor
@@ -409,7 +409,7 @@
template <typename T, typename... ARGS>
TypeConstructorExpression* mat4x3(ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, ty.mat4x3<T>(), ExprList(std::forward<ARGS>(args)...));
+ ty.mat4x3<T>(), ExprList(std::forward<ARGS>(args)...));
}
/// @param args the arguments for the matrix constructor
@@ -418,7 +418,7 @@
template <typename T, typename... ARGS>
TypeConstructorExpression* mat4x4(ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, ty.mat4x4<T>(), ExprList(std::forward<ARGS>(args)...));
+ ty.mat4x4<T>(), ExprList(std::forward<ARGS>(args)...));
}
/// @param args the arguments for the array constructor
@@ -427,7 +427,7 @@
template <typename T, int N = 0, typename... ARGS>
TypeConstructorExpression* array(ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, ty.array<T, N>(), ExprList(std::forward<ARGS>(args)...));
+ ty.array<T, N>(), ExprList(std::forward<ARGS>(args)...));
}
/// @param subtype the array element type
@@ -440,7 +440,7 @@
uint32_t n,
ARGS&&... args) {
return create<TypeConstructorExpression>(
- Source{}, ty.array(subtype, n), ExprList(std::forward<ARGS>(args)...));
+ ty.array(subtype, n), ExprList(std::forward<ARGS>(args)...));
}
/// @param name the variable name
@@ -544,8 +544,8 @@
/// @returns a `ArrayAccessorExpression` that indexes `arr` with `idx`
template <typename ARR, typename IDX>
Expression* Index(ARR&& arr, IDX&& idx) {
- return create<ArrayAccessorExpression>(
- Source{}, Expr(std::forward<ARR>(arr)), Expr(std::forward<IDX>(idx)));
+ return create<ArrayAccessorExpression>(Expr(std::forward<ARR>(arr)),
+ Expr(std::forward<IDX>(idx)));
}
/// @param obj the object for the member accessor expression
@@ -553,8 +553,8 @@
/// @returns a `MemberAccessorExpression` that indexes `obj` with `idx`
template <typename OBJ, typename IDX>
Expression* Member(OBJ&& obj, IDX&& idx) {
- return create<MemberAccessorExpression>(
- Source{}, Expr(std::forward<OBJ>(obj)), Expr(std::forward<IDX>(idx)));
+ return create<MemberAccessorExpression>(Expr(std::forward<OBJ>(obj)),
+ Expr(std::forward<IDX>(idx)));
}
/// Creates a new Node owned by the Module, with the explicit Source.