tint/resolver: Pass std::function by ref
Avoids a copy
Change-Id: Ief4e7985b41c50f102be27a8a3fa9a690166511f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/116868
Auto-Submit: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
diff --git a/src/tint/resolver/intrinsic_table.cc b/src/tint/resolver/intrinsic_table.cc
index 0cd18e8..7c58444 100644
--- a/src/tint/resolver/intrinsic_table.cc
+++ b/src/tint/resolver/intrinsic_table.cc
@@ -1143,7 +1143,7 @@
utils::VectorRef<const type::Type*> args,
sem::EvaluationStage earliest_eval_stage,
TemplateState templates,
- OnNoMatch on_no_match) const;
+ const OnNoMatch& on_no_match) const;
/// Evaluates the single overload for the provided argument types.
/// @param overload the overload being considered
@@ -1505,7 +1505,7 @@
utils::VectorRef<const type::Type*> args,
sem::EvaluationStage earliest_eval_stage,
TemplateState templates,
- OnNoMatch on_no_match) const {
+ const OnNoMatch& on_no_match) const {
size_t num_matched = 0;
size_t match_idx = 0;
utils::Vector<Candidate, kNumFixedCandidates> candidates;