LibJS: Throw real TypeError, ReferenceError, etc objects

Instead of just throwing Error objects with a name string, we now throw
the real Error subclass types. :^)
This commit is contained in:
Andreas Kling 2020-04-10 12:48:31 +02:00
commit e5da1cc566
Notes: sideshowbarker 2024-07-19 07:44:57 +09:00
13 changed files with 32 additions and 29 deletions

View file

@ -70,7 +70,7 @@ Value ScriptFunction::length_getter(Interpreter& interpreter)
if (!this_object)
return {};
if (!this_object->is_function())
return interpreter.throw_exception<Error>("TypeError", "Not a function");
return interpreter.throw_exception<TypeError>("Not a function");
return Value(static_cast<i32>(static_cast<const ScriptFunction*>(this_object)->parameters().size()));
}