Brown
|
6419788a49
|
Remove false from template param as necessary
Fixes #3737
|
2020-07-03 01:07:50 -04:00 |
|
Brown
|
7a7cd91c24
|
Fix #3631 - better treatment for assignments in complex conditionals
|
2020-06-24 13:16:52 -04:00 |
|
Brown
|
4d6fc4d0ca
|
Fix get_class($foo) === static::class checks
|
2020-06-23 13:11:19 -04:00 |
|
Brown
|
1f86afece7
|
Revert "Fix #3631 - apply assertions to RHS of equality in conditional"
This reverts commit 9c17795545 .
|
2020-06-22 20:01:27 -04:00 |
|
Brown
|
9c17795545
|
Fix #3631 - apply assertions to RHS of equality in conditional
|
2020-06-22 15:16:16 -04:00 |
|
Brown
|
137647a1a0
|
Fix #3603 - better typed value comparisons for loose equality
|
2020-06-18 09:31:38 -04:00 |
|
Brown
|
45ea5d0bfe
|
Add a couple more shortcuts for common pattern
Fixes #3563
|
2020-06-12 11:18:34 -04:00 |
|
Brown
|
9b413cfccc
|
Improved understanding of array_key_exists
Fixes #3463
|
2020-05-27 09:03:36 -04:00 |
|
Brown
|
5ee1487a01
|
Make ExpressionAnalyzer more beautiful
|
2020-05-18 15:13:27 -04:00 |
|
Brown
|
21798efed2
|
Fix #3388 - eliminate null after < 0 check
|
2020-05-18 08:52:44 -04:00 |
|
Matthew Brown
|
4dd0a2b775
|
Fix #3380 - allow comparisons between template param and empty array
|
2020-05-16 16:41:07 -04:00 |
|
Nobu Funaki
|
abef8008bc
|
Fix InvalidCast after is_callable([$val, '__toString']) check (#3372)
Support is_callable() with an array argument similar to method_exists()
|
2020-05-16 08:50:43 -04:00 |
|
Brown
|
8ab5a0f504
|
Probably safe to un-negate a class string assertion without autoloader
|
2020-04-30 12:48:21 -04:00 |
|
Brown
|
bb46c30e38
|
Fix #3191 - don’t generate complex assertion from class-string
|
2020-04-19 12:53:50 -04:00 |
|
Brown
|
672baea6fc
|
Fix #3116 - allow class to be compared to a templated class-string
|
2020-04-10 00:26:11 -04:00 |
|
Brown
|
971ae50bea
|
Do prep work for #3024 - improve handling of absent class references
|
2020-03-26 12:35:27 -04:00 |
|
Brown
|
467da32f84
|
Fix instanceof static and isa (static::class) handling
|
2020-03-24 18:58:15 -04:00 |
|
Matthew Brown
|
bfb919d26a
|
Break out methods into their own classes
|
2020-03-11 23:04:52 -04:00 |
|
Matthew Brown
|
952045e2ba
|
Fix return type checks
|
2020-02-22 11:28:24 -05:00 |
|
Matthew Brown
|
1a3129b0e0
|
Fix test condition
|
2020-02-22 10:53:30 -05:00 |
|
Matthew Brown
|
1c218c020e
|
Fix #1684 - detect error in assertion on return type of direct call
|
2020-02-22 10:41:57 -05:00 |
|
Matthew Brown
|
653353709a
|
Use MethodIdentifier object instead of string
|
2020-02-14 20:54:26 -05:00 |
|
Brown
|
f141f7c526
|
Improve --diff checks by including trait-using classes in dependents
|
2020-02-11 16:39:33 -05:00 |
|
Matthew Brown
|
43c7b00cd0
|
Fix #2734 - allow is_a to operate on templated class-strings
|
2020-02-02 12:26:28 -05:00 |
|
Matthew Brown
|
b582c49f51
|
Fix #2645 - add workarounds for some edgecases
|
2020-01-17 10:25:05 -05:00 |
|
Matthew Brown
|
42073a800a
|
Remove unevaluated code
|
2020-01-14 00:55:56 -05:00 |
|
Matthew Brown
|
e1daf26202
|
Improve support for null coalesce checks
|
2020-01-14 00:53:38 -05:00 |
|
Brown
|
2c7197ab4b
|
Fix #2578 - improve inference of functions beginning with assert
|
2020-01-09 15:45:17 -05:00 |
|
Brown
|
8e786a17dd
|
Deal with a reconciled var more accurately
Ref #2426
|
2020-01-06 11:09:07 -05:00 |
|
Matthew Brown
|
9fa2db1b6c
|
Move Union::getTypes to Union::getAtomicTypes
|
2020-01-04 12:20:26 -05:00 |
|
Matthew Brown
|
366e2d30a3
|
Improve assertions support a bit more
|
2019-12-30 10:48:50 -05:00 |
|
Matthew Brown
|
19faa31865
|
Allow assertions on nested properties
|
2019-12-30 10:01:31 -05:00 |
|
Brown
|
05783eb616
|
Find issues with impossible property values
|
2019-12-11 17:08:02 -05:00 |
|
Matthew Brown
|
c9f43782fd
|
Fix mixed method issues after defining new type
|
2019-12-08 10:17:40 -05:00 |
|
Brown
|
f97a8f0d5b
|
Use more accurate way to determine list size
|
2019-11-26 16:34:19 -05:00 |
|
Brown
|
0bcb7863f3
|
Use better system for storing inferred types and assertions
|
2019-11-25 11:44:54 -05:00 |
|
Brown
|
0b0534d41b
|
Add more list annotations to Psalm’s codebase
|
2019-10-09 09:17:43 -04:00 |
|
Brown
|
f8f8b633b1
|
Suppress a bunch of PossiblyUndefinedArrayOffset issues
|
2019-10-01 15:44:43 -04:00 |
|
Brown
|
f6b0de08f8
|
Remove unnecessary assertion
|
2019-09-19 15:41:44 -04:00 |
|
Brown
|
e6f90ab83f
|
Fix #2146 - check count args length
|
2019-09-19 15:07:49 -04:00 |
|
Brown
|
43041836dd
|
Fix #2026 - add support for calling __toString implicitly after method_exists
|
2019-08-16 11:33:58 -04:00 |
|
Matthew Brown
|
3f78082720
|
Fix is_string call
|
2019-08-10 09:16:32 -04:00 |
|
Matthew Brown
|
460120ec45
|
Fix #1994 - make assert-if-true work for $this properties
|
2019-08-10 09:12:02 -04:00 |
|
Matthew Brown
|
5a4a133f50
|
Fix #1970 - allow comparison to templated param class
|
2019-07-24 22:13:51 -04:00 |
|
Matthew Brown
|
5c4ac97546
|
Fix #1915 - allow @psalm-assert-if-true to operate on $this
|
2019-07-07 15:06:03 -04:00 |
|
Matthew Brown
|
cd33430616
|
Fix #1885 - allow comparison to templated class string
|
2019-07-05 22:57:38 -04:00 |
|
LeSuisse
|
f29826b958
|
Fully qualify constants and function calls (#1849)
This should give a small performance boost.
Part of #1837.
The change is enforced via phpcs and can be autofixed
with phpcbf.
|
2019-06-26 16:52:29 -04:00 |
|
Matthew Brown
|
d845cdf0c5
|
Fix #1458 by making instanceof static same as === static
|
2019-06-20 08:37:57 -04:00 |
|
Brown
|
c81a9a8737
|
Fix #1742 - allow is_countable assertion to mean something
|
2019-06-07 15:49:10 -04:00 |
|
Matthew Brown
|
4002504ff0
|
Allow trait_exists to inform type for ReflectionClass
|
2019-05-31 09:43:46 -04:00 |
|