mirror of
https://github.com/dart-lang/sdk
synced 2024-09-16 04:16:51 +00:00
40611dd611
TBR=kustermann@google.com BUG= Review URL: https://codereview.chromium.org/2454993003 .
38 lines
1.1 KiB
Dart
38 lines
1.1 KiB
Dart
// Copyright (c) 2016, 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.
|
|
|
|
import 'package:expect/expect.dart';
|
|
|
|
class A {
|
|
Function fun;
|
|
A(this.fun);
|
|
}
|
|
|
|
globalFunctionPositional(int a, [int b = 42]) => a + b;
|
|
|
|
globalFunctionNamed(int a, {int b: 42}) => a + b;
|
|
|
|
class Foo {
|
|
int base;
|
|
|
|
Foo(this.base);
|
|
|
|
methodFunctionPositional(int a, [int b = 42]) => base + a + b;
|
|
|
|
methodFunctionNamed(int a, {int b: 42}) => base + a + b;
|
|
}
|
|
|
|
main() {
|
|
Expect.isTrue(new A(globalFunctionPositional).fun(1, 2) == 3);
|
|
Expect.isTrue(new A(globalFunctionPositional).fun(1) == 43);
|
|
Expect.isTrue(new A(globalFunctionNamed).fun(1, b: 2) == 3);
|
|
Expect.isTrue(new A(globalFunctionNamed).fun(1) == 43);
|
|
|
|
var foo = new Foo(100);
|
|
Expect.isTrue(new A(foo.methodFunctionPositional).fun(1, 2) == 103);
|
|
Expect.isTrue(new A(foo.methodFunctionPositional).fun(1) == 143);
|
|
Expect.isTrue(new A(foo.methodFunctionNamed).fun(1, b: 2) == 103);
|
|
Expect.isTrue(new A(foo.methodFunctionNamed).fun(1) == 143);
|
|
}
|