diff --git a/src/node_builtins.cc b/src/node_builtins.cc index 253ecaad12dace..6c6c4dd3236b47 100644 --- a/src/node_builtins.cc +++ b/src/node_builtins.cc @@ -64,6 +64,11 @@ BuiltinLoader::BuiltinLoader() #endif // HAVE_AMARO } +std::ranges::keys_view> +BuiltinLoader::GetBuiltinIds() const { + return std::views::keys(*source_.read()); +} + bool BuiltinLoader::Exists(const char* id) { auto source = source_.read(); return source->find(id) != source->end(); diff --git a/src/node_builtins.h b/src/node_builtins.h index 83ddad2127227d..7a7b84337feb67 100644 --- a/src/node_builtins.h +++ b/src/node_builtins.h @@ -127,9 +127,9 @@ class NODE_EXTERN_PRIVATE BuiltinLoader { void CopySourceAndCodeCacheReferenceFrom(const BuiltinLoader* other); - [[nodiscard]] auto GetBuiltinIds() const { - return std::views::keys(*source_.read()); - } + [[nodiscard]] std::ranges::keys_view< + std::ranges::ref_view> + GetBuiltinIds() const; void SetEagerCompile() { should_eager_compile_ = true; }