Hugo Thunnissen
ea7795c76e
Remove commented code
ci/woodpecker/push/woodpecker Pipeline failed
Details
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
6678ba20c6
Implement async processing pipeline
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
ce995f2bc4
Remove unused variables
1 year ago
Hugo Thunnissen
9f7931a7b6
Rework parser for ahead of time byte compilation
...
ci/woodpecker/push/woodpecker Pipeline failed
Details
This commit does away with the JIT approach that byte compiles parser functions
on the go. Some workarounds have been implemented to inline handler functions
while still allowing them to call the parser functions they are used in.
1 year ago
Hugo Thunnissen
2099abced8
Add Cask configuration and fix some compilation warnings
ci/woodpecker/push/woodpecker Pipeline failed
Details
1 year ago
Hugo Thunnissen
23245d0158
Fix some compilation warnings
ci/woodpecker/push/woodpecker Pipeline failed
Details
1 year ago
Hugo Thunnissen
2049121810
Make edit delta lookup inclusive of current point
ci/woodpecker/push/woodpecker Pipeline failed
Details
1 year ago
Hugo Thunnissen
4c5a70d4af
Make buffer re-parse non-interruptible + add interactive function to view tree
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
ab6954faf5
Retrieve and wrap metadata using the correct overlay for region
ci/woodpecker/push/woodpecker Pipeline was successful
Details
1 year ago
Hugo Thunnissen
6c767fc877
Implement eldoc for object attributes
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
55a24065a6
Remove obsolete comment (incremental parsing has been implemented)
ci/woodpecker/push/woodpecker Pipeline was successful
Details
1 year ago
Hugo Thunnissen
c35c00ceff
Implement strategy pattern for completion backend
ci/woodpecker/push/woodpecker Pipeline was successful
Details
1 year ago
Hugo Thunnissen
75562aab35
Add some tests for edit tracker + patch newly discovered bugs
1 year ago
Hugo Thunnissen
d1d34a4249
Move more functionalities from main file to separate modules
1 year ago
Hugo Thunnissen
1f145665ef
Exclude "return" from resolvecontext subject + count comma at point for eldoc arg number
ci/woodpecker/push/woodpecker Pipeline was successful
Details
1 year ago
Hugo Thunnissen
5fab07b426
Keep track of multi-call edits of the same region
1 year ago
Hugo Thunnissen
43310092ad
Clear tree and edit tracker when reparsing (to ensure full reparse)
1 year ago
Hugo Thunnissen
8dd9bb07e4
Increase phpinspect-bmap-last-token-before-point backward search limit to 100
1 year ago
Hugo Thunnissen
bb04e9a0f8
Implement strategy pattern for phpinspect-eldoc-function
1 year ago
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