1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 23:48:11 +00:00

LibJS: Generate bytecode for throw statements

This commit is contained in:
Gunnar Beutner 2021-06-09 18:18:56 +02:00 committed by Andreas Kling
parent e9bafd768d
commit b78f1c1261
5 changed files with 35 additions and 1 deletions

View file

@ -1,6 +1,7 @@
/*
* Copyright (c) 2021, Andreas Kling <kling@serenityos.org>
* Copyright (c) 2021, Linus Groh <linusg@serenityos.org>
* Copyright (c) 2021, Gunnar Beutner <gbeutner@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
@ -395,6 +396,19 @@ public:
String to_string(Bytecode::Executable const&) const;
};
class Throw final : public Instruction {
public:
constexpr static bool IsTerminator = true;
Throw()
: Instruction(Type::Throw)
{
}
void execute(Bytecode::Interpreter&) const;
String to_string(Bytecode::Executable const&) const;
};
}
namespace JS::Bytecode {