Tianyu Geng
765cad8448
FIR checker: substitute type parameters in dispatch receiver type
...
Consider the following code:
```
fun test(a: List<String>) {
a.first()
}
```
The dispatch receiver type of `first` in this case is `List<T>` before
this change. After this change, it's `List<String>`.
In addition, this change also replace the dispatch receiver type with
the more specific type if available. For example, consider the following
```
class MyList: ArrayList<String>()
fun test(a: MyList) {
a.get(0)
}
```
The dispatch receiver type of `get` is `MyList`, instead of
`ArrayList<String>`. That is, a fake override is created in this case.
2021-09-17 01:59:06 +03:00
..
2021-06-29 21:03:29 +03:00
2020-12-16 19:52:25 +03:00
2020-12-16 19:52:30 +03:00
2020-06-19 15:53:04 +03:00
2020-12-16 19:52:25 +03:00
2020-06-19 15:53:04 +03:00
2020-12-16 19:52:25 +03:00
2020-12-16 19:52:30 +03:00
2021-09-17 01:59:06 +03:00
2021-09-17 01:59:06 +03:00
2020-12-16 19:52:30 +03:00
2020-08-11 16:17:01 +03:00
2021-04-06 12:30:34 +03:00
2020-06-19 15:53:00 +03:00
2020-06-19 15:53:04 +03:00
2020-12-16 19:52:25 +03:00
2020-12-16 19:52:30 +03:00
2021-07-19 13:40:28 +03:00
2021-04-06 12:30:34 +03:00
2021-04-12 23:49:55 +03:00
2021-06-29 21:03:29 +03:00
2020-12-16 19:52:25 +03:00
2020-12-16 19:52:30 +03:00
2021-06-29 21:03:29 +03:00
2021-04-06 12:30:34 +03:00
2020-12-16 19:52:30 +03:00
2021-06-29 21:03:29 +03:00
2021-02-19 10:39:57 +03:00
2020-06-19 15:52:58 +03:00
2021-07-19 13:40:28 +03:00
2021-04-06 12:30:34 +03:00
2021-04-19 15:11:13 +03:00
2021-04-19 15:11:13 +03:00
2021-01-29 16:55:26 +03:00
2021-04-15 15:23:56 +03:00
2021-04-06 12:30:34 +03:00
2021-06-29 21:03:29 +03:00
2021-04-06 12:30:34 +03:00
2021-06-29 21:03:28 +03:00
2021-04-06 12:30:34 +03:00
2021-06-29 21:03:27 +03:00
2021-06-28 17:21:42 +03:00
2020-03-25 15:36:19 +03:00
2021-09-17 01:59:06 +03:00
2021-09-17 01:59:06 +03:00
2020-12-16 19:52:30 +03:00
2021-06-29 21:03:29 +03:00
2021-04-06 12:30:34 +03:00
2020-12-16 19:52:30 +03:00
2021-06-29 10:46:41 +03:00
2021-04-06 12:30:34 +03:00
2021-08-04 17:33:08 +03:00
2021-04-15 15:23:56 +03:00
2021-04-06 12:30:34 +03:00
2021-02-10 12:29:34 +03:00
2021-06-29 21:03:29 +03:00
2021-04-06 12:30:34 +03:00
2020-12-16 19:52:30 +03:00
2021-06-29 21:03:29 +03:00
2020-12-16 19:52:25 +03:00
2020-06-19 15:53:04 +03:00
2020-12-16 19:52:25 +03:00
2020-12-16 19:52:30 +03:00
2020-11-12 14:46:37 +03:00
2020-12-16 19:52:25 +03:00
2020-12-16 19:52:30 +03:00
2021-08-26 10:08:52 +03:00
2021-08-26 10:08:52 +03:00
2021-08-26 10:08:52 +03:00
2020-07-21 13:54:17 +03:00
2020-12-16 19:52:25 +03:00
2021-05-05 18:20:51 +03:00