Commit Graph

24 Commits (1ce40146b7294d257414ca4a3a6a834c0385d3e5)

Author SHA1 Message Date
Hugo Thunnissen 1ce40146b7 Bump version to 1.2.0 4 weeks ago
Hugo Thunnissen f2f9e94376 Format docstring 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 81194568e3 Use match-sequence to detect "newed" objects 4 weeks ago
Hugo Thunnissen 1ab4a3b1f5 Explicitly test and implement the resolving of function call return types 4 weeks ago
Hugo Thunnissen de248b0901 Bump version to 1.1.0 4 weeks ago
Hugo Thunnissen d38b28686a Increase version number to 1.0 4 weeks ago
Hugo Thunnissen 25ae878cfc Implement indexation of functions nested within blocks/lists
- This fixes a bug that caused laravel helper functions not to be indexed,
unless you were to open them in a buffer (the way in which live buffers are
indexed is more sophisticated and it already indexed these functions).
1 month ago
Hugo Thunnissen 2c82e844d3 Require project when resolving class property type 1 month 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 e04ab0c118 Resolve types of suggested variable completions 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
Hugo Thunnissen 2d93ec7f79 Fix infinite recursion bug in `phpinspect--get-pattern-type-in-block' 1 month ago
Hugo Thunnissen d3f100388e Resolve property types using other methods when resolving from constructor fails
Property types of classes in live buffers are now resolved from assignments in
other methods when resolving from the __construct method fails.
1 month ago
Hugo Thunnissen 2fcb326747 Add log groups for completion and resolve 1 month ago
Hugo Thunnissen dfdef3e382 Implement support for PHP8.1 property typehints 2 months ago
Hugo Thunnissen 81919175ca Implement stub index for builtin functions and types
Misc:
- Removed Cask in favor of dependency install script
- Rework makefile to provide simple build/install process
1 year ago
Hugo Thunnissen ad4b1f25a6 Update copyright statements and apply some code style improvements
ci/woodpecker/push/woodpecker Pipeline failed Details
As suggested by Stefan Monniers patch:
 - https://mail.gnu.org/archive/html/emacs-devel/2023-08/msg00367.html
1 year ago
Hugo Thunnissen 84ddaf1dc2 Fix all byte compilation warnings and errors (for real this time (probably))
ci/woodpecker/push/woodpecker Pipeline failed Details
1 year ago
Hugo Thunnissen e35caa7e15 Fix a variety of bugs
ci/woodpecker/push/woodpecker Pipeline failed Details
- phpinspect--index-tokens no longer errors upon unexpected return annotation
values
- phpinspect-fixt-imports now also fixes imports outside of classes
- Functions are no longer included in statements when deriving types
1 year ago
Hugo Thunnissen d1d34a4249 Move more functionalities from main file to separate modules 1 year ago