Skip to content

Commit 6d7f377

Browse files
srawlinsCommit Queue
authored andcommitted
analyzer: mock SDK: correct declarations in math library
* `min` and `max` are external. * Random is an `abstract interface` class (and it's members can be abstract). Change-Id: I5e1e6f0d3c89aecfb1c83b09a96f0910511f8d5b Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/451540 Reviewed-by: Konstantin Shcheglov <[email protected]> Commit-Queue: Samuel Rawlins <[email protected]>
1 parent a926784 commit 6d7f377

File tree

2 files changed

+10
-7
lines changed

2 files changed

+10
-7
lines changed

pkg/analyzer/lib/src/test_utilities/mock_sdk.dart

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1535,18 +1535,19 @@ const double e = 2.718281828459045;
15351535
const double pi = 3.1415926535897932;
15361536
const double ln10 = 2.302585092994046;
15371537
1538-
T min<T extends num>(T a, T b) => throw 0;
1539-
T max<T extends num>(T a, T b) => throw 0;
1538+
external T min<T extends num>(T a, T b);
1539+
external T max<T extends num>(T a, T b);
15401540
15411541
external double cos(num radians);
15421542
external double sin(num radians);
1543-
external double sqrt(num radians);
1543+
external double sqrt(num x);
15441544
external double tan(num radians);
15451545
1546-
class Random {
1547-
bool nextBool() => true;
1548-
double nextDouble() => 2.0;
1549-
int nextInt() => 1;
1546+
abstract interface class Random {
1547+
external factory Random([int? seed]);
1548+
bool nextBool();
1549+
double nextDouble();
1550+
int nextInt(int max);
15501551
}
15511552
15521553
class Point<T extends num> {}

pkg/analyzer/test/src/dart/analysis/search_test.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -992,6 +992,8 @@ Random v2;
992992
20 2:1 |Random| REFERENCE
993993
<testLibraryFragment> v2@38
994994
31 3:1 |Random| REFERENCE
995+
dart:math new@null
996+
402 16:20 |Random| REFERENCE
995997
''');
996998
}
997999

0 commit comments

Comments
 (0)