| // Copyright (c) 2014, 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.9 |
| |
| import "package:expect/expect.dart"; |
| |
| class Foo { |
| var field = 0; |
| } |
| |
| bar(x, y) { |
| return x * 100 + y; |
| } |
| |
| foo(z) { |
| var x = 0, y = x; |
| if (z > 0) { |
| x = 10; |
| } |
| if (z > 10) { |
| y = 20; |
| } |
| return bar(x, y); |
| } |
| |
| baz(z) { |
| var f = new Foo() |
| ..field = 10 |
| ..field = z; |
| return f; |
| } |
| |
| main() { |
| Expect.equals(0, foo(0)); |
| Expect.equals(1000, foo(5)); |
| Expect.equals(1020, foo(15)); |
| |
| Expect.equals(20, baz(20).field); |
| Expect.equals(30, baz(30).field); |
| } |