Commit Graph

8 Commits (a93f6452168b92dd7edcf04915817d090be90160)

Author SHA1 Message Date
Hugo Thunnissen a93f645216 Implement parsing of string concatenation tokens 4 weeks ago
Hugo Thunnissen e020bb4e05 Add testcase for derived statement starting with function + fix bug
- Derived statements starting with functions were not resolved to a type. This
was caused by bugs in `phpinspect--get-derived-statement-type-in-block' and
`phpinspect--interpret-expression-type-in-block'. The division in each
function's functionalities was blurry and both duplicated some of each other's
logic. The situation has now been cleaned up a bit.
- An extra testcase was added for derived statements starting with a function
call
- a bunch of code that broke because of the changes was fixed
4 weeks ago
Hugo Thunnissen 1ab4a3b1f5 Explicitly test and implement the resolving of function call return types 4 weeks ago
Hugo Thunnissen 5c61d4b293 Implement resolving types from typecasted statements 1 month ago
Hugo Thunnissen 8a96383407 Implement resolving variable types through inline @var annotations 1 month ago
Hugo Thunnissen 5032ae74ff Resolve types of expressions nested in list tokens
- Resolve "(new Foo())->bar"
- Resolve "if ($foo = new Bar()) { $foo->baz"
1 month ago
Hugo Thunnissen 58ef5e3599 Refactor use of project root to project obj injection + test and fix some bugs
- Test/Fix indexation of method return types
- Get rid of some technical debt (use of project-root and global variables)
- Cleanup/refactor tests
1 month ago
Hugo Thunnissen 3a0ce3ac2d Fix another infinite recursion bug
Bug occured in scenario's where array-members were self-referentially assigned
in a foreach loop.

like so:

foreach($things as $thing) {
  $thing = $this->something;
}
1 month ago