1
0
mirror of https://github.com/danog/psalm.git synced 2024-12-12 09:19:40 +01:00
Commit Graph

67 Commits

Author SHA1 Message Date
Matthew Brown
8c236f411a Fix #3353 - allow extending nested when nested as type is mixed 2020-05-12 15:07:16 -04:00
Brown
3e16aec33c Remap generic template params where necessary
Fixes #3325
2020-05-08 22:55:18 -04:00
Brown
a089d8bd58 Fix #3296 - propagate final flag to static calls in return types 2020-05-03 20:42:06 -04:00
Brown
6024447ca0 Expand function-based template types before comparing against inherited
Fixes #3276
2020-05-01 12:40:10 -04:00
Brown
52c0346b65 Fix #3213 - make sure static is bound from a static call with set class 2020-04-22 11:34:46 -04:00
Brown
6fc18af42e Fix #3163 - map object-like arrays too 2020-04-19 18:46:24 -04:00
Brown
2188b6736f Fix #3162
Descend into inherited templates to prevent function-defined templates mapping inappopriately
2020-04-19 12:19:39 -04:00
Brown
d2d795018f Fix #3138 - fix inherited property template type inference 2020-04-18 16:57:13 -04:00
Brown
5ef82b53f6 Fix #3137 - support nested templates in class definitions 2020-04-17 01:16:15 -04:00
Brown
15df39f72f Fix #3127 - allow templated param to be accepted where static is expected 2020-04-12 20:09:49 -04:00
Brown
5db9f0e8c0 Fix #2722 - change behaviour to inherit params to match just on position
And not name + position
2020-04-08 00:54:17 -04:00
Matthew Brown
de6aee32d1 Fix #3035 - improve templating for property assignments 2020-03-28 17:18:21 -04:00
Brown
056f4aaac6 Fix #3027 - inherited properties should be templated properly 2020-03-27 18:31:48 -04:00
Matthew Brown
f94ab22a5f Be better about strict inference 2020-03-25 09:18:49 -04:00
Matthew Brown
4734583444 Don’t overwrite already-defined template 2020-03-24 23:40:01 -04:00
Brown
f6759c3d16 Check return statement types for inherited docblocks 2020-03-24 17:59:48 -04:00
Matthew Brown
311bd19a6a Fix #2983 - inherited lists should have their template types localised 2020-03-18 16:23:09 -04:00
Matthew Brown
50eb12e562 Fix implementation kink 2020-03-15 16:14:09 -04:00
Matthew Brown
532ce576cc Fix #2974 - interpret interfaces a little better 2020-03-15 15:49:13 -04:00
Matthew Brown
0af2eba4b9 Fix #2973 - don’t allow template type through 2020-03-15 11:14:06 -04:00
Matthew Brown
8926f1d050 Remove dupe test 2020-03-06 19:37:21 -05:00
Matthew Brown
b999037263 Fix #2928 - properly expand out skipped template inheritance 2020-03-06 19:24:47 -05:00
Matthew Brown
abb3800d20 Fix bad template replacement 2020-02-27 23:00:40 -05:00
Brown
35c1670602 Fix #2875 - treat intersections more similarly than before 2020-02-27 18:42:15 -05:00
Brown
712806b452 Fix #2874 - understand doubly-inherited interface templates 2020-02-24 17:58:44 -05:00
Matthew Brown
d3bfb96431 Fix #2808 - improve yield type discernment 2020-02-15 10:47:07 -05:00
Matthew Brown
47ffb59241 Fix #2764 - iterate through all possible template types where necessary 2020-02-09 18:11:50 -05:00
Brown
23f8967fb5 Fix conditional class-string template replacement 2020-02-06 19:40:18 -05:00
Brown
d5f71bf529 Localise template checks to class being tested 2020-02-06 16:38:45 -05:00
Brown
0fd0d01d2b Improve class-string templating 2020-02-06 14:35:36 -05:00
Brown
50fc50fab0 Fix #2751 - allow static methods to inherit class templates 2020-02-05 11:19:40 -05:00
Brown
a2e1dfd64e Fix #2667 - don’t check inherited signature return types for accuracy 2020-01-21 11:07:44 -05:00
Matthew Brown
146dd461ef Fix #2569 - improve template return type checks 2020-01-07 21:08:13 -05:00
Brown
024ec38aa1 Fix #2567 - still remap params in some circumstances 2020-01-07 13:01:16 -05:00
Matthew Brown
137650fe6f Fix #2556 - don’t remap params if they’ve already been remapped once 2020-01-06 09:18:16 -05:00
Matthew Brown
d3fb0181cb Fix #2527 - no crash when template cannot be resolved 2019-12-29 08:45:42 -05:00
Matthew Brown
a4191171bf Fix #2483 - treat intersecting PHPDocs from interfaces better 2019-12-20 01:42:57 +00:00
Matthew Brown
cb797c6159 Fix inherited class methods as well
Ref #2478
2019-12-18 14:39:37 +00:00
Matthew Brown
49a3f89526 Fix #2478 - process trait template inheritance sensibly 2019-12-18 13:58:37 +00:00
Matthew Brown
72f3c306d7 Fix #2471 - don’t erroneously template class-strings 2019-12-15 13:23:04 -05:00
Matthew Brown
ce2e5b27c0 Fix #2470 - only parameterise constructors according to inherited params 2019-12-14 11:38:09 -05:00
Matthew Brown
797a059a84 Prevent static methods using class instance template types 2019-12-14 09:40:09 -05:00
Matthew Brown
af52590fef Make test better 2019-12-11 00:42:09 -05:00
Matthew Brown
848cbbb487 Fix #2454 - build up template map to better understand passed-through data 2019-12-11 00:34:54 -05:00
Matthew Brown
8494f02008 Fix template handling when templating inside templated class 2019-12-10 00:50:36 -05:00
Brown
b78acf796f Fix #2445 - only generalise param when it’s generic 2019-12-09 10:58:09 -05:00
Brown
a91d2ef572 Add space 2019-11-25 16:55:44 -05:00
Brown
736ccd84cd Allow more generic iterable when yielding
Fixes #2353
2019-11-25 16:12:44 -05:00
Brown
23c37f829d Move covariant tests into their own place 2019-11-14 11:42:16 -05:00
Matthew Brown
0b1f83ff98 Fix #2346 - map covariance of templated return types when extending with more params 2019-11-14 07:45:20 -05:00