mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 07:37:35 +00:00
LibJS: Add ThrowCompletionOr versions of the JS native function macros
The old versions were renamed to JS_DECLARE_OLD_NATIVE_FUNCTION and JS_DEFINE_OLD_NATIVE_FUNCTION, and will be eventually removed once all native functions were converted to the new format.
This commit is contained in:
parent
3355b52cca
commit
20163c0584
180 changed files with 1478 additions and 1472 deletions
|
@ -16,7 +16,7 @@ void WebAssemblyInstancePrototype::initialize(JS::GlobalObject& global_object)
|
|||
define_native_accessor("exports", exports_getter, {}, JS::Attribute::Enumerable | JS::Attribute::Configurable);
|
||||
}
|
||||
|
||||
JS_DEFINE_NATIVE_FUNCTION(WebAssemblyInstancePrototype::exports_getter)
|
||||
JS_DEFINE_OLD_NATIVE_FUNCTION(WebAssemblyInstancePrototype::exports_getter)
|
||||
{
|
||||
auto this_value = vm.this_value(global_object);
|
||||
auto* this_object = TRY_OR_DISCARD(this_value.to_object(global_object));
|
||||
|
|
|
@ -25,7 +25,7 @@ public:
|
|||
virtual void initialize(JS::GlobalObject&) override;
|
||||
|
||||
private:
|
||||
JS_DECLARE_NATIVE_FUNCTION(exports_getter);
|
||||
JS_DECLARE_OLD_NATIVE_FUNCTION(exports_getter);
|
||||
static JS::Handle<WebAssemblyInstancePrototype> s_instance;
|
||||
};
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ void WebAssemblyMemoryPrototype::initialize(JS::GlobalObject& global_object)
|
|||
define_native_function("grow", grow, 1, JS::Attribute::Writable | JS::Attribute::Enumerable | JS::Attribute::Configurable);
|
||||
}
|
||||
|
||||
JS_DEFINE_NATIVE_FUNCTION(WebAssemblyMemoryPrototype::grow)
|
||||
JS_DEFINE_OLD_NATIVE_FUNCTION(WebAssemblyMemoryPrototype::grow)
|
||||
{
|
||||
auto page_count = TRY_OR_DISCARD(vm.argument(0).to_u32(global_object));
|
||||
auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
|
||||
|
@ -40,7 +40,7 @@ JS_DEFINE_NATIVE_FUNCTION(WebAssemblyMemoryPrototype::grow)
|
|||
return JS::Value(static_cast<u32>(previous_size));
|
||||
}
|
||||
|
||||
JS_DEFINE_NATIVE_FUNCTION(WebAssemblyMemoryPrototype::buffer_getter)
|
||||
JS_DEFINE_OLD_NATIVE_FUNCTION(WebAssemblyMemoryPrototype::buffer_getter)
|
||||
{
|
||||
auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
|
||||
if (!is<WebAssemblyMemoryObject>(this_object)) {
|
||||
|
|
|
@ -27,8 +27,8 @@ public:
|
|||
virtual void initialize(JS::GlobalObject&) override;
|
||||
|
||||
private:
|
||||
JS_DECLARE_NATIVE_FUNCTION(grow);
|
||||
JS_DECLARE_NATIVE_FUNCTION(buffer_getter);
|
||||
JS_DECLARE_OLD_NATIVE_FUNCTION(grow);
|
||||
JS_DECLARE_OLD_NATIVE_FUNCTION(buffer_getter);
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -87,7 +87,7 @@ void WebAssemblyObject::visit_edges(Visitor& visitor)
|
|||
}
|
||||
}
|
||||
|
||||
JS_DEFINE_NATIVE_FUNCTION(WebAssemblyObject::validate)
|
||||
JS_DEFINE_OLD_NATIVE_FUNCTION(WebAssemblyObject::validate)
|
||||
{
|
||||
// FIXME: Implement this once module validation is implemented in LibWasm.
|
||||
dbgln("Hit WebAssemblyObject::validate() stub!");
|
||||
|
@ -127,7 +127,7 @@ Result<size_t, JS::Value> parse_module(JS::GlobalObject& global_object, JS::Obje
|
|||
return WebAssemblyObject::s_compiled_modules.size() - 1;
|
||||
}
|
||||
|
||||
JS_DEFINE_NATIVE_FUNCTION(WebAssemblyObject::compile)
|
||||
JS_DEFINE_OLD_NATIVE_FUNCTION(WebAssemblyObject::compile)
|
||||
{
|
||||
// FIXME: This shouldn't block!
|
||||
auto buffer_or_error = vm.argument(0).to_object(global_object);
|
||||
|
@ -308,7 +308,7 @@ Result<size_t, JS::Value> WebAssemblyObject::instantiate_module(Wasm::Module con
|
|||
return s_instantiated_modules.size() - 1;
|
||||
}
|
||||
|
||||
JS_DEFINE_NATIVE_FUNCTION(WebAssemblyObject::instantiate)
|
||||
JS_DEFINE_OLD_NATIVE_FUNCTION(WebAssemblyObject::instantiate)
|
||||
{
|
||||
// FIXME: This shouldn't block!
|
||||
auto buffer_or_error = vm.argument(0).to_object(global_object);
|
||||
|
|
|
@ -60,9 +60,9 @@ public:
|
|||
static Wasm::AbstractMachine s_abstract_machine;
|
||||
|
||||
private:
|
||||
JS_DECLARE_NATIVE_FUNCTION(validate);
|
||||
JS_DECLARE_NATIVE_FUNCTION(compile);
|
||||
JS_DECLARE_NATIVE_FUNCTION(instantiate);
|
||||
JS_DECLARE_OLD_NATIVE_FUNCTION(validate);
|
||||
JS_DECLARE_OLD_NATIVE_FUNCTION(compile);
|
||||
JS_DECLARE_OLD_NATIVE_FUNCTION(instantiate);
|
||||
};
|
||||
|
||||
class WebAssemblyMemoryObject final : public JS::Object {
|
||||
|
|
|
@ -19,7 +19,7 @@ void WebAssemblyTablePrototype::initialize(JS::GlobalObject& global_object)
|
|||
define_native_function("set", set, 1, JS::Attribute::Writable | JS::Attribute::Enumerable | JS::Attribute::Configurable);
|
||||
}
|
||||
|
||||
JS_DEFINE_NATIVE_FUNCTION(WebAssemblyTablePrototype::grow)
|
||||
JS_DEFINE_OLD_NATIVE_FUNCTION(WebAssemblyTablePrototype::grow)
|
||||
{
|
||||
auto delta = TRY_OR_DISCARD(vm.argument(0).to_u32(global_object));
|
||||
|
||||
|
@ -56,7 +56,7 @@ JS_DEFINE_NATIVE_FUNCTION(WebAssemblyTablePrototype::grow)
|
|||
return JS::Value(static_cast<u32>(initial_size));
|
||||
}
|
||||
|
||||
JS_DEFINE_NATIVE_FUNCTION(WebAssemblyTablePrototype::get)
|
||||
JS_DEFINE_OLD_NATIVE_FUNCTION(WebAssemblyTablePrototype::get)
|
||||
{
|
||||
auto index = TRY_OR_DISCARD(vm.argument(0).to_u32(global_object));
|
||||
|
||||
|
@ -84,7 +84,7 @@ JS_DEFINE_NATIVE_FUNCTION(WebAssemblyTablePrototype::get)
|
|||
return to_js_value(wasm_value, global_object);
|
||||
}
|
||||
|
||||
JS_DEFINE_NATIVE_FUNCTION(WebAssemblyTablePrototype::set)
|
||||
JS_DEFINE_OLD_NATIVE_FUNCTION(WebAssemblyTablePrototype::set)
|
||||
{
|
||||
auto index = TRY_OR_DISCARD(vm.argument(0).to_u32(global_object));
|
||||
|
||||
|
@ -121,7 +121,7 @@ JS_DEFINE_NATIVE_FUNCTION(WebAssemblyTablePrototype::set)
|
|||
return JS::js_undefined();
|
||||
}
|
||||
|
||||
JS_DEFINE_NATIVE_FUNCTION(WebAssemblyTablePrototype::length_getter)
|
||||
JS_DEFINE_OLD_NATIVE_FUNCTION(WebAssemblyTablePrototype::length_getter)
|
||||
{
|
||||
auto* this_object = TRY_OR_DISCARD(vm.this_value(global_object).to_object(global_object));
|
||||
if (!is<WebAssemblyTableObject>(this_object)) {
|
||||
|
|
|
@ -27,10 +27,10 @@ public:
|
|||
virtual void initialize(JS::GlobalObject& global_object) override;
|
||||
|
||||
private:
|
||||
JS_DECLARE_NATIVE_FUNCTION(grow);
|
||||
JS_DECLARE_NATIVE_FUNCTION(get);
|
||||
JS_DECLARE_NATIVE_FUNCTION(set);
|
||||
JS_DECLARE_NATIVE_FUNCTION(length_getter);
|
||||
JS_DECLARE_OLD_NATIVE_FUNCTION(grow);
|
||||
JS_DECLARE_OLD_NATIVE_FUNCTION(get);
|
||||
JS_DECLARE_OLD_NATIVE_FUNCTION(set);
|
||||
JS_DECLARE_OLD_NATIVE_FUNCTION(length_getter);
|
||||
};
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue