Skip to content

Commit 3a4d50c

Browse files
TODO: narrow spans for more ExpressionError cases?
1 parent 3eba888 commit 3a4d50c

1 file changed

Lines changed: 29 additions & 19 deletions

File tree

naga/src/valid/expression.rs

Lines changed: 29 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -154,18 +154,24 @@ impl ExpressionError {
154154
Self::InvalidBaseType(handle) => just(handle),
155155
Self::InvalidIndexType(handle) => just(handle),
156156
Self::NegativeIndex(handle) => just(handle),
157-
Self::IndexOutOfBounds(..) => Vec::new(),
157+
Self::IndexOutOfBounds(handle, _) => Vec::new(),
158158
Self::FunctionArgumentDoesntExist(..) => Vec::new(),
159159
Self::InvalidPointerType(handle) => just(handle),
160160
Self::InvalidArrayType(handle) => just(handle),
161161
Self::InvalidRayQueryType(handle) => just(handle),
162162
Self::InvalidSplatType(handle) => just(handle),
163163
Self::InvalidVectorType(handle) => just(handle),
164-
Self::InvalidSwizzleComponent(..) => Vec::new(),
165-
Self::Compose(..) => Vec::new(),
166-
Self::IndexableLength(..) => Vec::new(),
164+
Self::InvalidSwizzleComponent(swizzle_component, vector_size) => Vec::new(),
165+
Self::Compose(ref compose_error) => Vec::new(),
166+
Self::IndexableLength(indexable_length_error) => Vec::new(),
167167
Self::InvalidUnaryOperandType(_unary_operator, handle) => just(handle),
168-
Self::InvalidBinaryOperandTypes { .. } => Vec::new(),
168+
Self::InvalidBinaryOperandTypes {
169+
op,
170+
lhs_expr,
171+
ref lhs_type,
172+
rhs_expr,
173+
ref rhs_type,
174+
} => Vec::new(),
169175
Self::SelectValuesTypeMismatch {
170176
accept,
171177
ref accept_ty,
@@ -183,38 +189,42 @@ impl ExpressionError {
183189
}
184190
Self::InvalidBooleanVector(handle) => just(handle),
185191
Self::InvalidFloatArgument(handle) => just(handle),
186-
Self::Type(..) => Vec::new(),
192+
Self::Type(resolve_error) => Vec::new(),
187193
Self::ExpectedGlobalVariable => Vec::new(),
188194
Self::ExpectedGlobalOrArgument => Vec::new(),
189-
Self::ExpectedBindingArrayType(..) => Vec::new(),
190-
Self::ExpectedImageType(..) => Vec::new(),
191-
Self::ExpectedSamplerType(..) => Vec::new(),
192-
Self::InvalidImageClass(..) => Vec::new(),
195+
Self::ExpectedBindingArrayType(handle) => Vec::new(),
196+
Self::ExpectedImageType(handle) => Vec::new(),
197+
Self::ExpectedSamplerType(handle) => Vec::new(),
198+
Self::InvalidImageClass(image_class) => Vec::new(),
193199
Self::InvalidDerivative => Vec::new(),
194200
Self::InvalidImageArrayIndex => Vec::new(),
195201
Self::InvalidImageOtherIndex => Vec::new(),
196202
Self::InvalidImageArrayIndexType(handle) => just(handle),
197203
Self::InvalidImageOtherIndexType(handle) => just(handle),
198204
Self::InvalidImageCoordinateType(_image_dimension, handle) => just(handle),
199-
Self::ComparisonSamplingMismatch { .. } => Vec::new(),
205+
Self::ComparisonSamplingMismatch {
206+
image,
207+
sampler,
208+
has_ref,
209+
} => Vec::new(),
200210
Self::InvalidSampleOffsetExprType => Vec::new(),
201211
Self::InvalidSampleOffset(_image_dimension, handle) => just(handle),
202212
Self::InvalidDepthReference(handle) => just(handle),
203213
Self::InvalidDepthSampleLevel => Vec::new(),
204214
Self::InvalidGatherLevel => Vec::new(),
205-
Self::InvalidGatherComponent(..) => Vec::new(),
206-
Self::InvalidGatherDimension(..) => Vec::new(),
215+
Self::InvalidGatherComponent(swizzle_component) => Vec::new(),
216+
Self::InvalidGatherDimension(image_dimension) => Vec::new(),
207217
Self::InvalidSampleLevelExactType(handle) => just(handle),
208218
Self::InvalidSampleLevelBiasType(handle) => just(handle),
209-
Self::InvalidSampleLevelBiasDimension(..) => Vec::new(),
219+
Self::InvalidSampleLevelBiasDimension(image_dimension) => Vec::new(),
210220
Self::InvalidSampleLevelGradientType(_image_dimension, handle) => just(handle),
211221
Self::InvalidCastArgument => Vec::new(),
212-
Self::WrongArgumentCount(..) => Vec::new(),
222+
Self::WrongArgumentCount(math_function) => Vec::new(),
213223
Self::InvalidArgumentType(_math_function, _, handle) => just(handle),
214-
Self::InvalidWorkGroupUniformLoadResultType(..) => Vec::new(),
215-
Self::MissingCapabilities(..) => Vec::new(),
216-
Self::Literal(..) => Vec::new(),
217-
Self::UnsupportedWidth(..) => Vec::new(),
224+
Self::InvalidWorkGroupUniformLoadResultType(handle) => Vec::new(),
225+
Self::MissingCapabilities(capabilities) => Vec::new(),
226+
Self::Literal(ref literal_error) => Vec::new(),
227+
Self::UnsupportedWidth(math_function, scalar_kind, _) => Vec::new(),
218228
}
219229
.into_iter()
220230
}

0 commit comments

Comments
 (0)