blob: 013d844c5710f6b188d25304b64eeac29f76d3ad [file] [log] [blame]
// Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
// @dart = 2.7
/*member: main:[]*/
main() {
asyncMethod();
asyncStarMethod();
syncStarMethod();
localFunction();
anonymousFunction();
tryCatch();
tryFinally();
tryWithRethrow();
forLoop();
forInLoop();
whileLoop();
doLoop();
multipleReturns();
codeAfterReturn();
multipleThrows();
returnAndThrow();
throwClosure();
returnClosure();
closureInInitializer();
}
/*member: _multipleReturns:code after return*/
_multipleReturns(c) {
if (c)
return;
else
return;
}
/*member: multipleReturns:[]*/
@pragma('dart2js:noInline')
multipleReturns() {
_multipleReturns(true);
_multipleReturns(false);
}
/*member: _codeAfterReturn:code after return*/
_codeAfterReturn(c) {
if (c) return;
print(c);
}
/*member: codeAfterReturn:[]*/
@pragma('dart2js:noInline')
codeAfterReturn() {
_codeAfterReturn(true);
_codeAfterReturn(false);
}
/*member: _multipleThrows:[]*/
_multipleThrows(c) {
if (c)
throw '';
else
throw '';
}
/*member: multipleThrows:[]*/
@pragma('dart2js:noInline')
multipleThrows() {
_multipleThrows(true);
_multipleThrows(false);
}
/*member: _returnAndThrow:code after return*/
_returnAndThrow(c) {
if (c)
return;
else
throw '';
}
/*member: returnAndThrow:[]*/
@pragma('dart2js:noInline')
returnAndThrow() {
_returnAndThrow(true);
_returnAndThrow(false);
}
/*member: asyncMethod:async/await*/
asyncMethod() async {}
/*member: asyncStarMethod:async/await*/
asyncStarMethod() async* {}
/*member: syncStarMethod:async/await*/
syncStarMethod() sync* {}
/*member: localFunction:closure*/
localFunction() {
// ignore: UNUSED_ELEMENT
/*[]*/ local() {}
}
/*member: anonymousFunction:closure*/
anonymousFunction() {
/*[]*/ () {};
}
/*member: tryCatch:try*/
tryCatch() {
try {} catch (e) {}
}
/*member: tryFinally:try*/
tryFinally() {
try {} finally {}
}
/*member: tryWithRethrow:try*/
tryWithRethrow() {
try {} catch (e) {
rethrow;
}
}
/*member: forLoop:loop*/
forLoop() {
for (int i = 0; i < 10; i++) {
print(i);
}
}
/*member: forInLoop:loop*/
forInLoop() {
for (var e in [0, 1, 2]) {
print(e);
}
}
/*member: whileLoop:loop*/
whileLoop() {
int i = 0;
while (i < 10) {
print(i);
i++;
}
}
/*member: doLoop:loop*/
doLoop() {
int i = 0;
do {
print(i);
i++;
} while (i < 10);
}
/*member: returnClosure:closure*/
returnClosure() {
return /*[]*/ () {};
}
/*member: throwClosure:closure*/
throwClosure() {
throw /*[]*/ () {};
}
class Class1 {
var f;
/*member: Class1.:closure*/
Class1() : f = (/*[]*/ () {}) {
print(f);
}
}
/*member: closureInInitializer:[]*/
@pragma('dart2js:noInline')
closureInInitializer() {
new Class1();
}