Hugo Thunnissen
1ec0e0cfa2
Limit token lookback range and start completion from the first non-blank character
...
ci/woodpecker/push/woodpecker Pipeline was successful
Details
When editing files where tokens occur sparingly, like in HTML templates, looking
back for the last token that occured is very expensive and never useful.
1 year ago
Hugo Thunnissen
281c5e4ae6
Remove some overly verbose logging
ci/woodpecker/push/woodpecker Pipeline was successful
Details
1 year ago
Hugo Thunnissen
9d6ce5726d
Use `phpinspect-edtrack-original-position-at-point' for edit end determination
1 year ago
Hugo Thunnissen
5548734ef7
Implement parser interruption on user input
ci/woodpecker/push/woodpecker Pipeline was successful
Details
1 year ago
Hugo Thunnissen
91e24b97d4
Make bmap-token-meta error on unexpected input
...
Searching for an object that doesn't exist as a token can be really expensive,
so it's better to error on unexpected input and fix code on the calling side.
1 year ago
Hugo Thunnissen
6627f6f76f
Remove commented parser code
ci/woodpecker/push/woodpecker Pipeline was successful
Details
1 year ago
Hugo Thunnissen
7f76ba4c11
Fix some bugs introduced by the incremental parsing feature
...
ci/woodpecker/push/woodpecker Pipeline was successful
Details
Among other things:
- use-keyword parser handler result being registered for two positions due to
wrong use of "root" parser parameter.
- phpinspect-fix-imports was broken
1 year ago
Hugo Thunnissen
ad5ede01ad
Implement Incremental Parsing
ci/woodpecker/push/woodpecker Pipeline was successful
Details
1 year ago
Hugo Thunnissen
0ca527dbbd
Adapt `phpinspect-purge-parser-cache' to new parser caching approach
ci/woodpecker/push/woodpecker Pipeline was successful
Details
1 year ago
Hugo Thunnissen
58ad65932b
Add `phpinspect-parser' type and `phpinspect-defparser' macro
ci/woodpecker/push/woodpecker Pipeline was successful
Details
1 year ago
Hugo Thunnissen
e7b1f22e8c
Sort tokens by size when returning tokens around point
1 year ago
Hugo Thunnissen
3838e02820
Prevent worker thread from associating with the current buffer
ci/woodpecker/push/woodpecker Pipeline was successful
Details
1 year ago
Hugo Thunnissen
0e00d7e5a6
Wakeup worker when stop is requested and worker thread is paused
...
This makes the worker thread stop execution immediately after the stop is
requested in stead of after the next wakeup.
1 year ago
Hugo Thunnissen
f9f3440850
Make file contents insertion asynchronous in background threads
...
ci/woodpecker/push/woodpecker Pipeline was successful
Details
This allows for a more lenient pausing regime in the worker thread, as file
content insertion, which is the longest running action while indexing, no longer
makes the main thread wait.
Implementation uses host system's cat program, but defers to
insert-file-contents when this is not available.
1 year ago
Hugo Thunnissen
47335f3450
Refactor phpinspect--project to phpinspect-project
ci/woodpecker/push/woodpecker Pipeline was successful
Details
1 year ago
Hugo Thunnissen
c2b06fe265
Another attempt at fixing CI
ci/woodpecker/push/woodpecker Pipeline was successful
Details
2 years ago
Hugo Thunnissen
7e7914befa
Convert CI definition to new (woodpecker) format
2 years ago
Hugo Thunnissen
9882ed2c60
Test/fix type inference of objects in nested arrays
continuous-integration/drone/push Build was killed
Details
2 years ago
Hugo Thunnissen
f030a685d2
Alter interpret-expression-type to interpret array-member assignment
...
continuous-integration/drone/push Build was killed
Details
interpret-expression-type now interprets assignment values provided through
array access as derived statements. This makes type inference work for cases
like `[$foo[0]]`, where it did not before.
2 years ago
Hugo Thunnissen
0c0c1ca381
Add test for phpinspect-get-pattern-type-in-block
continuous-integration/drone/push Build was killed
Details
2 years ago
Hugo Thunnissen
8cd4dc2025
Remove commented code + tidy some formatting
2 years ago
Hugo Thunnissen
224bbd7916
Implement array member type inference
...
phpinspect now understands typed arrays!
2 years ago
Hugo Thunnissen
ae3acbdbe1
Disable auto-reindexing by default
continuous-integration/drone/push Build is passing
Details
2 years ago
Hugo Thunnissen
97377c2922
Fix bugs in phpinspect-fix-imports
continuous-integration/drone/push Build is passing
Details
2 years ago
Hugo Thunnissen
1b1cf45638
Fix bug in extended classes' method merging + add some tests
continuous-integration/drone/push Build is passing
Details
2 years ago
Hugo Thunnissen
e65b268cea
Implement @method annotation indexation
continuous-integration/drone/push Build is passing
Details
2 years ago
Hugo Thunnissen
350850c07a
Fix phpinspect-index-static-methods test
continuous-integration/drone/push Build is passing
Details
2 years ago
Hugo Thunnissen
dbf0ec0390
Transition from index script to autoloader
continuous-integration/drone/push Build is failing
Details
2 years ago
Hugo Thunnissen
ca8d0972ff
Implement psr-0 and psr-4 autoloaders
2 years ago
Hugo Thunnissen
ef9a7336cf
Replace virtual-directory with more general virtual-fs implementation
2 years ago
Hugo Thunnissen
153ff71fcf
WIP: Implement psr0 and psr4 autoload strategies
continuous-integration/drone/push Build is passing
Details
2 years ago
Hugo Thunnissen
43ab1bd99b
Make sure that the worker is running during tests
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone Build is passing
Details
2 years ago
Hugo Thunnissen
56eaa3b36d
Replace index-thread with more generic and encapsulated worker type
...
continuous-integration/drone/push Build is failing
Details
The new implementaiton makes the background thread more extensible in terms of
the types of tasks that it can execute. It also allows for the injection of a
worker as dependency of project instances, which will make automated testing
easier in the future.
2 years ago
Hugo Thunnissen
1816495538
Use thread-live-p in stead of thread-alive-p for emacs 28.1 support
continuous-integration/drone/push Build is passing
Details
2 years ago
Hugo Thunnissen
2fd575dbf5
Add drone.yml
continuous-integration/drone/push Build is failing
Details
2 years ago
Hugo Thunnissen
0bc9e795b2
Fix tests and patch bugs that came to light in the process
2 years ago
Hugo Thunnissen
3a3e2cd362
Update README with new development repository location
2 years ago
Hugo Thunnissen
0b210309e7
Fix variable suggestion when there are loose dollar signs in the buffer
2 years ago
Hugo Thunnissen
c0786db131
WIP: Index every possibly required type ahead of time.
...
- Changed project and after-save-action implementation to include imports in
opened files. This way any types that are used in a file will have completion
available for it ahead of time.
- Extra attributes have been added to phpinspect--class to check whether or not
its file has been indexed/is queued for indexation yet.
- Misc: Fixed eldoc function bug that was caused by a previous commit
2 years ago
Hugo Thunnissen
2e487e7810
Fix resolving of function argument types
2 years ago
Hugo Thunnissen
a2ce841555
WIP: Make index thread block/wakeup when queue is empty/populated
2 years ago
Hugo Thunnissen
341afd42da
WIP: Index types in the background using collaborative threading.
...
Created queue for types to be indexed in separate thread and tried to limit
lock-ups as much as possible by using idle timers.
2 years ago
Hugo Thunnissen
f013b3c709
WIP: Support ambiguous typehints
...
- Try to infer type of "object" typehint by using the return annotation
- Support late static binding with "static" and "this" return type
2 years ago
Hugo Thunnissen
f8bf0b611a
WIP: List static methods when requested
2 years ago
Hugo Thunnissen
98e88d45ac
WIP: Fix find-class-file
2 years ago
Hugo Thunnissen
e07e1ed9e6
WIP: Split code up into separate files
2 years ago
Hugo Thunnissen
74bd0ad434
WIP: New data type for cached classes
2 years ago
Hugo Thunnissen
a60dba5f11
WIP: new struct to represent types, and string comparison optimization with obarray
2 years ago
Hugo Thunnissen
2b85271b2b
Test + fix get-last-statement-in-token for static attribute references
3 years ago
Hugo Thunnissen
8caf967b57
Add test for resolve-type-from-context with preceding bareword
3 years ago