summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibJS/Forward.h
diff options
context:
space:
mode:
Diffstat (limited to 'Userland/Libraries/LibJS/Forward.h')
-rw-r--r--Userland/Libraries/LibJS/Forward.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/Userland/Libraries/LibJS/Forward.h b/Userland/Libraries/LibJS/Forward.h
index 76249f8eae..a10569b2d5 100644
--- a/Userland/Libraries/LibJS/Forward.h
+++ b/Userland/Libraries/LibJS/Forward.h
@@ -6,12 +6,18 @@
#pragma once
-#define JS_DECLARE_NATIVE_FUNCTION(name) \
+#define JS_DECLARE_OLD_NATIVE_FUNCTION(name) \
static JS::Value name(JS::VM&, JS::GlobalObject&)
-#define JS_DEFINE_NATIVE_FUNCTION(name) \
+#define JS_DEFINE_OLD_NATIVE_FUNCTION(name) \
JS::Value name([[maybe_unused]] JS::VM& vm, [[maybe_unused]] JS::GlobalObject& global_object)
+#define JS_DECLARE_NATIVE_FUNCTION(name) \
+ static JS::ThrowCompletionOr<JS::Value> name(JS::VM&, JS::GlobalObject&)
+
+#define JS_DEFINE_NATIVE_FUNCTION(name) \
+ JS::ThrowCompletionOr<JS::Value> name([[maybe_unused]] JS::VM& vm, [[maybe_unused]] JS::GlobalObject& global_object)
+
// NOTE: Proxy is not included here as it doesn't have a prototype - m_proxy_constructor is initialized separately.
#define JS_ENUMERATE_NATIVE_OBJECTS_EXCLUDING_TEMPLATES \
__JS_ENUMERATE(AggregateError, aggregate_error, AggregateErrorPrototype, AggregateErrorConstructor, void) \