mirror of
https://github.com/dart-lang/sdk
synced 2024-09-16 03:07:49 +00:00
152 lines
2.6 KiB
Plaintext
152 lines
2.6 KiB
Plaintext
library;
|
|
import self as self;
|
|
import "dart:core" as core;
|
|
|
|
static method foo() → dynamic {
|
|
try {
|
|
return;
|
|
}
|
|
finally {
|
|
core::print("Hello from finally block!");
|
|
}
|
|
}
|
|
static method bar() → dynamic async {
|
|
await for (dynamic x in <dynamic>[]) {
|
|
yield x;
|
|
yield* x;
|
|
}
|
|
}
|
|
static method main() → dynamic {
|
|
do {
|
|
core::print("Hello from do-while!");
|
|
}
|
|
while (false)
|
|
do {
|
|
dynamic x = core::print("Hello from do-while!");
|
|
}
|
|
while (false)
|
|
for (core::String s in <dynamic>["Hello from for-in!"]) {
|
|
core::print(s);
|
|
}
|
|
for (core::String s in <dynamic>["Hello from for-in without block!"])
|
|
core::print(s);
|
|
dynamic s;
|
|
for (final dynamic #t1 in <dynamic>["Hello from for-in without decl!"]) {
|
|
s = #t1;
|
|
core::print(s);
|
|
}
|
|
for (final dynamic #t2 in <dynamic>["Hello from for-in without decl and block!"]) {
|
|
s = #t2;
|
|
core::print(s);
|
|
}
|
|
core::print("Hello from labeled statement!");
|
|
try {
|
|
try {
|
|
throw "Hello from rethrow!";
|
|
}
|
|
on dynamic catch(final dynamic e) {
|
|
rethrow;
|
|
}
|
|
}
|
|
on dynamic catch(final dynamic e) {
|
|
core::print(e);
|
|
}
|
|
self::foo();
|
|
core::bool done = false;
|
|
while (!done) {
|
|
done = true;
|
|
core::print("Hello from while!");
|
|
}
|
|
;
|
|
assert(true);
|
|
assert(true, "Hello from assert!");
|
|
try {
|
|
assert(false, "Hello from assert!");
|
|
}
|
|
on dynamic catch(final dynamic e) {
|
|
core::print(e);
|
|
}
|
|
#L1:
|
|
switch(1) {
|
|
#L2:
|
|
case 1:
|
|
case 2:
|
|
{
|
|
core::print("Hello from switch case!");
|
|
break #L1;
|
|
}
|
|
#L3:
|
|
default:
|
|
{
|
|
break #L1;
|
|
}
|
|
}
|
|
#L4:
|
|
switch(4) {
|
|
#L5:
|
|
case 2:
|
|
{
|
|
core::print("Hello from case 2!");
|
|
break #L4;
|
|
}
|
|
#L6:
|
|
case 1:
|
|
{
|
|
core::print("Hello from case 1!");
|
|
continue #L5;
|
|
}
|
|
#L7:
|
|
case 0:
|
|
{
|
|
core::print("Hello from case 0!");
|
|
continue #L6;
|
|
}
|
|
#L8:
|
|
case 4:
|
|
{
|
|
core::print("Hello from case 4!");
|
|
continue #L9;
|
|
}
|
|
#L9:
|
|
default:
|
|
{
|
|
continue #L7;
|
|
}
|
|
}
|
|
#L10:
|
|
switch(4) {
|
|
#L11:
|
|
case 1:
|
|
{
|
|
core::print("Hello from next case 1");
|
|
break #L10;
|
|
}
|
|
#L12:
|
|
default:
|
|
{
|
|
continue #L11;
|
|
}
|
|
}
|
|
core::int i = 0;
|
|
#L13:
|
|
do
|
|
#L14:
|
|
{
|
|
core::print("Hello from do-while!");
|
|
if((i = i.+(1)).<(3))
|
|
break #L14;
|
|
break #L13;
|
|
}
|
|
while (true)
|
|
i = 0;
|
|
#L15:
|
|
while (true)
|
|
#L16:
|
|
{
|
|
core::print("Hello from while!");
|
|
if((i = i.+(1)).<(3))
|
|
break #L16;
|
|
break #L15;
|
|
}
|
|
}
|