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
2d29bce498
Apply overall code quality improvements
...
ci/woodpecker/push/woodpecker Pipeline failed
Details
Even benchmarks and tests now compile without warnings or errors :)
This includes patches from Stefan Monnier:
- https://lists.gnu.org/archive/html/emacs-devel/2023-08/msg00548.html
1 year ago
Hugo Thunnissen
20ec37481a
Fix compilation of benchmarks and tests
ci/woodpecker/push/woodpecker Pipeline failed
Details
1 year ago
Hugo Thunnissen
a99f73b83d
Use rear pointer instead of nconc to append to end of list
ci/woodpecker/push/woodpecker Pipeline failed
Details
1 year ago
Hugo Thunnissen
8cfc48348f
Run relint and fix detected regexp issues
ci/woodpecker/push/woodpecker Pipeline failed
Details
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
68c826243c
Keep index synchronized with buffer state
1 year ago
Hugo Thunnissen
04606a4756
Fix test
ci/woodpecker/push/woodpecker Pipeline failed
Details
1 year ago
Hugo Thunnissen
55413ea9fb
Implement basic support for function indexation and include dirs
...
ci/woodpecker/push/woodpecker Pipeline failed
Details
Does not yet include support for imported namespaced functions
1 year ago
Hugo Thunnissen
d86ef5756b
Remove `phpinspect-define-pipeline-step' in favor of direct fun call
1 year ago
Hugo Thunnissen
f5cc681105
Fix let parenthesis in test-buffer.el
1 year ago
Hugo Thunnissen
d51137e58e
Remove faulty edit tracker code based on wrong deduction
1 year ago
Hugo Thunnissen
9b82c0d0f6
Reimplement `phpinspect-fix-imports' using metadata objects
1 year ago
Hugo Thunnissen
135263c533
Add tests for incremental parsing + fix parser bugs that came to light
1 year ago
Hugo Thunnissen
db370623da
Implement "files" autoload strategy
1 year ago
Hugo Thunnissen
f003b6a279
Make project indexation asynchronous using `phpinspect-pipeline'
ci/woodpecker/push/woodpecker Pipeline failed
Details
1 year ago
Hugo Thunnissen
2fd91898a3
Add tests for pipeline and make API more ergonomic
...
- Added `phpinspect-pipeline-emit-all' to emit multiple values at once
- Added :async parameter to `phpinspect-pipeline'
- Improved error handling
- Only execute seed form once and require it to return a list
1 year ago
Hugo Thunnissen
2d2f9912c1
Wrap queue items in a queue object
ci/woodpecker/push/woodpecker Pipeline failed
Details
1 year ago
Hugo Thunnissen
9a25959aad
Use metadata tree instead of hash table for token lookup
1 year ago
Hugo Thunnissen
b68baaec83
Make parse context cancellable and restore state after interrupt
1 year ago
Hugo Thunnissen
111fa2f4b5
Fix bugs in splay tree "find" functions
1 year ago
Hugo Thunnissen
389e77eb8b
Expand existing overlay when possible
1 year ago
Hugo Thunnissen
0596bc52bf
Optimize splay tree and use it to store token's children
ci/woodpecker/push/woodpecker Pipeline was successful
Details
1 year ago
Hugo Thunnissen
e270729e14
Implement splay tree for overlay storage/lookup
...
ci/woodpecker/push/woodpecker Pipeline was successful
Details
This makes repeated overlay lookups during incremental parsing or buffer
analysis more efficient.
1 year ago
Hugo Thunnissen
75562aab35
Add some tests for edit tracker + patch newly discovered bugs
1 year ago
Hugo Thunnissen
5fab07b426
Keep track of multi-call edits of the same region
1 year ago
Hugo Thunnissen
bb04e9a0f8
Implement strategy pattern for phpinspect-eldoc-function
1 year ago
Hugo Thunnissen
9d6ce5726d
Use `phpinspect-edtrack-original-position-at-point' for edit end determination
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
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
47335f3450
Refactor phpinspect--project to phpinspect-project
ci/woodpecker/push/woodpecker Pipeline was successful
Details
1 year 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
224bbd7916
Implement array member type inference
...
phpinspect now understands typed arrays!
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
0bc9e795b2
Fix tests and patch bugs that came to light in the process
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