1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 01:27:34 +00:00

LibJS: Implement basic execution of "switch" statements

The "break" keyword now unwinds to the nearest ScopeType::Breakable.
There's no support for break labels yet, but we'll get there too.
This commit is contained in:
Andreas Kling 2020-03-29 14:34:25 +02:00
parent 1923051c5b
commit 2285f84596
6 changed files with 57 additions and 2 deletions

View file

@ -0,0 +1,10 @@
var a = "foo";
switch (a + "bar") {
case 1:
break;
case "foobar":
case 2:
console.log("PASS");
break;
}

View file

@ -0,0 +1,6 @@
var a = "foo";
switch (100) {
default:
console.log("PASS");
}

View file

@ -0,0 +1,10 @@
switch (1 + 2) {
case 3:
console.log("PASS");
break;
case 5:
case 1:
break;
default:
break;
}