Jonathan Hähne
ec1ee55dee
Accelerate symbolReferencesInternal by another factor of 2 and activate unit tests
2021-03-29 14:08:38 +02:00
Jonathan Hähne
9a2695ecdb
Improve refreshDocument algorithm
...
Do not use an arena, orderedRemove or bool array.
Also, rudimentary tests suggest the config parser does not account for
a substantial amount of the compile time.
2021-03-29 14:08:37 +02:00
Alexandros Naskos
962327425d
Fixed enum completion generation
2021-03-29 14:57:16 +03:00
Alexandros Naskos
4e753338af
Added error set and enum completion deduplication
2021-03-29 14:02:58 +03:00
Alexandros Naskos
360c437d6a
Some style fixes in analysis.zig
2021-03-29 13:01:24 +03:00
Alexandros Naskos
81500697db
Fixed crash in makeScopeInternal
2021-03-29 12:40:52 +03:00
Alexandros Naskos
2d168ed63e
Fixed error completion generation when making document scopes
2021-03-29 12:28:52 +03:00
Jonathan Hähne
826172edeb
Improve textDocument/references performance
...
Filtering out documents in symbolReferences that do not @import the file
defining the symbol led to an order of magnitude speedup in the projects
that I tested.
2021-03-28 17:05:22 +02:00
Alexandros Naskos
48b5ca5385
Always send an insertText field in completion items
2021-03-28 17:02:48 +03:00
Jonathan Hähne
b33e26612a
Add option to truncate long completions
...
The detail entries for big structs such as std.zig.CrossTarget were
bricking the preview window in Sublime Text.
2021-03-27 20:37:51 +01:00
Alexandros Naskos
3e300e4d74
Added our own ifFull implementation, fixes some crashes
2021-03-26 21:46:49 +02:00
Alexandros Naskos
9eece0985b
Fixed crash while typing error.
2021-03-26 21:14:47 +02:00
Alexandros Naskos
2fd8ab7626
Fixed error.<Foo> highlighting
2021-03-26 21:11:35 +02:00
Alexandros Naskos
06518778c1
Removed comment preprocessing code from the semantic tokens gap highlighter,
...
Fixed various comment semantic highlighting issues.
Refactored some minor parts of the analysis code.
2021-03-26 21:04:51 +02:00
Jonathan Hähne
a2620d7f69
Add option for builtin completion insert text
2021-03-26 10:20:20 +01:00
Alexandros Naskos
eb0a31d282
Reversed builtin completion insert text
2021-03-26 09:23:40 +02:00
Jonathan Hähne
8d34232c7a
Fix completion of builtins and a piece of slightly overcomplicated logic
2021-03-24 22:40:15 +01:00
Alexandros Naskos
55ad1028fc
Fixed crash in analysis of variable declaration aliases
2021-03-21 02:31:32 +02:00
rhysd
6057d290b4
Fix falsy value for filterText and insertText
...
'filterText' and 'insertText' fields of 'CompletionItem' can only have
"" or undefined as falsy value.
https://github.com/microsoft/language-server-protocol/issues/1222
2021-03-15 20:20:38 +09:00
Luuk de Gram
472033a845
Improve token location stability
2021-03-13 12:22:19 +01:00
Auguste Rame
d5c46aef26
Merge pull request #245 from rhysd/error-msg-newlines
...
Add missing \n in error message output to stderr
2021-03-12 14:21:25 -05:00
Auguste Rame
2b488347ff
Merge pull request #238 from Luukdegram/std-fixes
...
Update to Zig std's new AST format
2021-03-12 12:57:03 -05:00
Luuk de Gram
0d85668ce4
Do not offer completion for function labels
2021-03-12 11:56:51 +01:00
Luuk de Gram
7a2cd418a8
Scope fixes + semantic token colors:
...
- Creates a scope for errdefer and adds the payload as a declaration
(Previously lhs was a token index meaning we had an out of bounds error due too high of an integer)
- Semantic highlighting corrected for error payloads in loops/ifs and errdefers
2021-03-11 20:45:05 +01:00
Luuk de Gram
ef1b3c95f1
Completion fixes:
...
- Fixes namespace completions. Uses pointers instead of indices to ensure they are unique
- Adds .ptr completion to slices and `*` to many pointer
2021-03-11 13:59:09 +01:00
Luuk de Gram
094b31be48
Fix namespaces in containers
2021-03-10 17:04:14 +01:00
rhysd
addecb3a37
Add missing \n in error message output to stderr
2021-03-10 20:24:43 +09:00
Luuk de Gram
85937d48ca
Semantic token + scope fixes:
...
- Highlights pipes of loops/elses payloads correctly
- New ast structure counts last token as the variable itself and not the '}' so change scope checking to '<=' instead of '<'
2021-03-10 10:02:07 +01:00
Luuk de Gram
3ac6c82b9a
Completion for index label in for loops and fix for function snippets
2021-03-09 19:53:59 +01:00
Luuk de Gram
858f3cb282
Completion of unions in switches and its tags
2021-03-09 12:35:56 +01:00
Luuk de Gram
20cb0b7307
Fix off by one scope end index
2021-03-08 20:31:02 +01:00
Luuk de Gram
43ebfc7300
Work on completion for unwrapped slices/optionals in loops/ifs
2021-03-08 19:46:23 +01:00
Luuk de Gram
fd6b94bcc9
Fixes multiple small bugs:
...
- Correct completion based on scope
- Semantic tokens for while/if/else/for keywords
- Fix crash on import path
2021-03-07 21:54:54 +01:00
Luuk de Gram
a078a62a37
Semantic tokens: Allow for multiple line comments
2021-03-07 18:52:22 +01:00
Luuk de Gram
53c37765c0
Fix inferred error set return types
2021-03-07 18:45:37 +01:00
Luuk de Gram
e2f4bbf2f3
Implement semantic tokens for regular comments
2021-03-07 14:51:47 +01:00
Luuk de Gram
ac8a00342e
All functionalities implemented. Also implemented ability to skip searching for references through std
2021-03-06 20:55:59 +01:00
Luuk de Gram
3d8a9732fc
Calculate correct token locations and ensure all semantic highlighting matches
2021-03-05 22:38:42 +01:00
Luuk de Gram
acc45b4efe
Use the correct tree to display semantic tokens
2021-03-04 22:53:54 +01:00
Luuk de Gram
9224bbd4dc
Implement all of the semantic tokens
2021-03-04 22:30:25 +01:00
Luuk de Gram
08075a1261
Start fixing semantic tokens
2021-03-04 16:14:30 +01:00
Luuk de Gram
a80e9b262e
Implement usingnamespace and fix function snippets
2021-03-04 13:26:11 +01:00
Luuk de Gram
7495aab28b
Start implementing usingnamespace
2021-03-03 21:02:31 +01:00
Luuk de Gram
d7ccf6a3c2
References working for current file
2021-03-03 20:38:52 +01:00
Luuk de Gram
a699dab2f7
Referencing fixes and more
2021-03-03 16:34:24 +01:00
Frank Denis
3431b7afaa
Regen data for master - @TagType is gone
2021-03-03 13:46:23 +01:00
Luuk de Gram
92adeb8826
Completion fixes
2021-03-02 22:01:13 +01:00
Luuk de Gram
1dd39914ec
Hovering fixes
2021-03-02 15:32:38 +01:00
Luuk de Gram
c8a2467fac
Compiles without errors. Still needs improvement
2021-03-01 22:18:38 +01:00
Luuk de Gram
ada0d13ba9
Fix symbolReferencesInternal
2021-03-01 19:34:28 +01:00
Luuk de Gram
e82ea30e6f
Last fixes in src/analysis.zig
2021-03-01 16:30:43 +01:00
Luuk de Gram
4645638434
Fixes and completions
2021-03-01 16:02:24 +01:00
Luuk de Gram
1c9da7053c
More type resolving
2021-03-01 14:32:19 +01:00
Luuk de Gram
b651a79380
Type resolving fixes
2021-02-28 21:57:15 +01:00
Luuk de Gram
96fcac89a4
Complete resolveTypeOfNodeInternal
2021-02-28 20:37:21 +01:00
Luuk de Gram
b175a01fce
Progress in resolveTypeOfNodeInternal
2021-02-28 17:42:34 +01:00
Luuk de Gram
709c1a70fd
Implement makeScopeInternal logic
2021-02-28 13:09:10 +01:00
Luuk de Gram
5f5d6ce4ea
Progress in makeScopeInternal
2021-02-27 21:55:39 +01:00
Luuk de Gram
72605c7549
A lot of fixes
2021-02-27 16:38:06 +01:00
Luuk de Gram
0133f0d863
First set of changes to work with new std's ast
2021-02-26 21:26:52 +01:00
Alexandros Naskos
a886ecddd9
Fixed for zig master
2021-02-15 12:04:22 +02:00
Alexandros Naskos
fa496936f5
Always find the closest existing candidate build file before looking in the directory structure
2021-01-31 12:35:08 +02:00
Alexandros Naskos
ca6598572e
Reworked the build file searching method
...
Instead of looking for any existing build file in the store that fits
in the directory structure of a new document, we now always look
for the closest build.zig file in the directory structure.
2021-01-31 12:24:55 +02:00
Alexandros Naskos
c98c44460c
Fixed session tests
2021-01-28 11:20:13 +02:00
S0urc3C0de
acab137c99
Update to latest zig.
...
Fix change for changing zig.ast name attribute to be optional.
2021-01-27 21:53:02 +01:00
GrayJack
30e3572cee
Rename tagField to enumMember
2021-01-16 03:46:35 -03:00
GrayJack
4f5af38031
Use declaration modifier instead of definition
2021-01-16 03:33:35 -03:00
Alexandros Naskos
87b7954669
Fixed semantic token hihglighting issue when a regular comment was following a doc comment
2021-01-12 14:05:08 +02:00
Alexandros Naskos
e7f8a8dcd9
zls will now run the package extraction build runner without copying it
...
in the destination folder. Instead, it will use a specific cache folder
and run from the default cwd it was run from.
Added build_runner_cache_path to the configuration file.
2021-01-12 13:10:51 +02:00
Nameless
966a6068cc
fix inStream deprecation
2021-01-10 19:49:21 -06:00
Kate Tsuyu
44c93d5454
update zinput version
2021-01-10 12:02:00 -05:00
Vesim
b2e456404c
fix inStream/outStream removal
2021-01-10 08:12:11 +01:00
Alexandros Naskos
eefee4759c
Fixed compilation for latest zig master
2021-01-07 10:35:36 +02:00
Lee Cannon
2a9edf243d
Fixed string printing with {s} format specifier
2021-01-04 17:51:26 +00:00
g-w1
dffc88a354
update setevalbranchquota: usize -> u32 for master
2021-01-03 15:00:01 -05:00
g-w1
5b50d98353
make sure exe exists
2020-12-19 21:01:16 -05:00
antlilja
da7ce66910
Pass global cache argument to Builder.create.
2020-12-11 00:38:05 +01:00
Alexandros Naskos
bf4f653bf9
Better zig build config
2020-11-16 00:07:35 +02:00
Alexandros Naskos
78e74743e1
Use zig env
to find zig lib path instead of assuming the executable comes from a distribution tarball
2020-11-15 21:32:27 +02:00
Alexandros Naskos
892847d939
Removed workspace specific zls.json support
2020-11-15 20:51:56 +02:00
Alexandros Naskos
0bf9602d7b
Fixed infinite loop when analyzing variable declarations like const A = A;
for semantic token highlighting
2020-11-15 20:37:00 +02:00
Frank Denis
ccfb18ec54
Update data for zig 0.7.0 and the current master branch
2020-11-15 12:01:33 +01:00
Alexandros Naskos
0d15ea754e
Added --debug-log flag for release mode binaries
2020-11-08 13:40:16 +02:00
Alexandros Naskos
bf7f6cd5e9
Corrected semantic token server provider struct
2020-11-06 15:55:00 +02:00
Alexandros Naskos
8e0dc3da19
Fixed incremental document updates
2020-11-06 12:32:21 +02:00
Alexandros Naskos
d877019abe
Removed struct, enum, opaque, union token types, added them to token modifiers
2020-11-06 11:03:21 +02:00
Alexandros Naskos
abcccb5d85
Fixed session tests
2020-11-06 10:24:37 +02:00
Alexandros Naskos
f7eff6632e
Cleaned up LSP types, add InitializeResult, no longer use a hardcoded string
2020-11-06 10:08:20 +02:00
Alexandros Naskos
996deb45fe
Added builtin hover handler
2020-11-05 00:54:47 +02:00
Alexandros Naskos
560b39d359
Better builtin data format and script
2020-11-05 00:39:24 +02:00
Alexandros Naskos
307ac34d4a
Fixed session tests.
2020-11-04 13:00:55 +02:00
Lee Cannon
6ade7cad3b
Update src/analysis.zig
...
Co-authored-by: Isaac Freund <ifreund@ifreund.xyz>
2020-11-03 22:44:50 +00:00
Lee Cannon
60fbb33a20
Use std.mem.trim instead of std.fmt.trim
2020-11-02 14:02:35 +00:00
data-man
fdcb7c264f
Increase eval branch quota
2020-10-18 14:18:11 +05:00
Isaac Freund
0e75622f87
Update known-folders to fix build
...
The build currently fails due to renaming of macosx to macos.
2020-10-15 19:34:37 +02:00
Alexandros Naskos
27f9f14ab3
Removed DebugAllocator, use std.heap.GeneralPurposeAllocator
2020-10-10 12:44:37 +03:00
Alexandros Naskos
162f1b2fbe
Opaque type support
2020-10-10 12:25:50 +03:00
Alexandros Naskos
c1d7f0ffa7
Fix build_runner.zig
2020-10-04 17:08:49 +03:00
Alexandros Naskos
a2265afce0
Added keywordLiteral token type for null, true, false, undefined, unreachable, fixed all pointer type semantic token generation
2020-10-04 13:10:48 +03:00
Alexandros Naskos
bfb96d951b
Fixed prefix op semantic tokens
2020-10-02 15:01:49 +03:00
Alexandros Naskos
751f66068b
Some semantic tokens fixes
2020-10-02 14:59:12 +03:00
Tadeo Kondrak
b52817cd8f
Update to LSP version 3.16 semantic tokens protocol
2020-09-25 15:31:54 -06:00
Tadeo Kondrak
2559f5c6fd
semantic_tokens: Don't @bitCast a flags structure to an integer
...
No idea why this isn't working, but it was sending the wrong thing.
2020-09-25 15:23:03 -06:00
lithdew
f5b4fc2aea
offsets: fix integer overflow
2020-09-25 12:59:45 +09:00
Alexandros Naskos
39b0f50bda
Exposed analysis functions used by analysis-buddy
2020-09-12 18:48:09 +03:00
codehz
d57d04f3bb
Adopt to new ast API
2020-09-01 13:53:52 +08:00
Alexandros Naskos
2964df3511
Separated labeled and non labeled blocks
2020-08-15 22:21:20 +03:00
Alexandros Naskos
c551dfe65a
Fixed debug allocator to comply with the new API
2020-08-14 13:53:13 +03:00
Alexandros Naskos
0f54b0e860
Use scoped loggers
2020-08-14 13:41:34 +03:00
Alexandros Naskos
6c4d83d73c
Removed unused block labels
2020-08-14 13:27:10 +03:00
SuperAuguste
fdba27b6e0
Update builtins from master docs
2020-07-25 14:52:31 -04:00
Alexandros Naskos
8d376a077c
Fix build runner
2020-07-24 15:03:21 +03:00
Alexandros Naskos
c09e488109
Added addressof, fixed slice and array completions
2020-07-24 13:20:13 +03:00
Alexandros Naskos
d8510b3099
Small code cleanup
2020-07-24 13:04:01 +03:00
Alexandros Naskos
bda78e1f76
Fixed for zig master branch
2020-07-24 10:33:13 +03:00
Alexandros Naskos
1c725f85aa
Fixed find references
2020-07-23 22:24:06 +03:00
Alexandros Naskos
9aa11276a8
Dont respond with semantic token data when disabled in the config
2020-07-23 22:09:28 +03:00
Alexandros Naskos
e7a1f5c34f
Fixed slice access type resolution
2020-07-23 21:33:43 +03:00
Alexandros Naskos
8ddd80b788
Fixed self detection for snippet completions
2020-07-23 21:13:38 +03:00
Alexandros Naskos
7063abec92
Fixed struct field goto and hover
2020-07-23 21:10:40 +03:00
Alexandros Naskos
213366f029
Fix various bugs
2020-07-23 20:30:03 +03:00
Alexandros Naskos
b71585da1d
Fixed for latest zig master build
2020-07-23 19:06:39 +03:00
SuperAuguste
a1c0f86066
kinda fix struct completion - still needs an actual fix
2020-07-17 23:21:17 -04:00
SuperAuguste
76dcc8cbe2
null fix
2020-07-17 10:01:21 -04:00
SuperAuguste
db75737037
semantic fixes
2020-07-16 15:36:44 -04:00
SuperAuguste
489378b939
fix comment in references.zig, format
2020-07-16 15:19:08 -04:00
SuperAuguste
f00d09c746
fix almost everything - commented some things out, please don't file any issues yet!
2020-07-16 15:02:30 -04:00
SuperAuguste
1d7fed7f87
even moar!!! infix/prefix changes are the only ones remaining
2020-07-16 12:07:21 -04:00
SuperAuguste
20f440b3a0
more fixes
2020-07-16 12:04:23 -04:00
SuperAuguste
ce841d1dc4
ids -> tags (part 2)
2020-07-16 11:05:56 -04:00
SuperAuguste
da4d2c2be1
ids -> tags (part 1)
2020-07-16 10:56:22 -04:00
Alexandros Naskos
6eee43af2f
Fixed build on latest zig nightly
2020-07-12 22:12:09 +03:00
Alexandros Naskos
e1bce76c63
Fixed enum completion bug
2020-07-08 04:11:52 +03:00
Alexandros Naskos
62774d065b
Reworked tag stores, fixed memory leak
2020-07-08 04:05:44 +03:00
Alexandros Naskos
62ab67f751
Add allocation info in the test workflow
2020-07-08 00:22:03 +03:00
Alexandros Naskos
6dc05df0ac
Small fix
2020-07-07 23:50:32 +03:00
Alexandros Naskos
5454883d2d
Added *, ? completions, improved readme
2020-07-07 23:26:12 +03:00
Alexandros Naskos
f55d5a25aa
Better log levels
2020-07-07 22:16:29 +03:00
Alexandros Naskos
b61785eb3e
Optimize document symbols
2020-07-07 11:57:02 +03:00
Alexandros Naskos
3659a5c1a9
Added find references handler
2020-07-06 01:32:14 +03:00
Alexandros Naskos
c067bce9fa
Fixed to use latest HashMap API
2020-07-06 00:56:41 +03:00
Alexandros Naskos
0f7a384b39
Added references.zig, use it from rename.zig
2020-07-06 00:35:52 +03:00
Alexandros Naskos
cbfb316763
Use LSP offsets in rename.zig
2020-07-05 01:40:18 +03:00
Alexandros Naskos
6bf2c9a1c7
Added encoding offset aware documentRange
2020-07-03 12:39:58 +03:00
Alexandros Naskos
28b3cafc3f
zig fmt pass, correctly return after sending formatting result
2020-07-03 12:24:24 +03:00
Alexandros Naskos
f6df9d4c0a
Added offsetEncoding clangd extension support
2020-07-03 12:00:00 +03:00
Alexandros Naskos
9bed369797
Correctly handle utf16 offsets for semantic tokens
2020-07-03 11:34:42 +03:00
Alexandros Naskos
78a7d79c39
Removed unused function
2020-07-03 02:34:46 +03:00
Alexandros Naskos
a0ae982202
Add offsets file
2020-07-03 02:33:10 +03:00
Alexandros Naskos
d8aba7da0b
Correctly support utf16 offsets
2020-07-03 02:31:28 +03:00
Alexandros Naskos
8c154c2a60
Added stack trace leak reporting to the debug allocator, fixed remaining two memory leaks
2020-07-02 19:13:10 +03:00
Alexandros Naskos
21e18a1d01
Fixed some deallocation code
2020-07-02 14:44:12 +03:00
Alexandros Naskos
e54a6d2522
Fixed documentPositionIndex, added tests
2020-07-02 14:03:24 +03:00
Alexandros Naskos
b3006745a0
More fixes
2020-06-30 18:00:33 +03:00
Alexandros Naskos
671318730a
Started adding session tests, finished (buggy) main loop rewrite
2020-06-30 15:46:43 +03:00
Alexandros Naskos
ddcf6c677b
Start working on a better proccess JSON RPC
2020-06-30 01:34:21 +03:00
Alexandros Naskos
6953ff95eb
Use apge allocator again after it was fixed
2020-06-29 02:03:51 +03:00
Alexandros Naskos
0102963433
Fixed formatting on master
2020-06-28 16:16:41 +03:00
Alexandros Naskos
3be74cbdc5
Dont use variable decl init node blindly
2020-06-28 16:08:15 +03:00
Alexandros Naskos
965724dd7e
Fixed build and crashes with zig master branch:
2020-06-28 13:58:51 +03:00
Alexandros Naskos
108a2dbd64
Semantic highlighting improvements
2020-06-27 20:45:58 +03:00
Alexandros Naskos
9343ec311b
Removed todo comments
2020-06-27 15:30:32 +03:00
Alexandros Naskos
8bc6087646
Completed renaming
2020-06-27 15:29:45 +03:00
Alexandros Naskos
07e1013680
Add rename file
2020-06-27 09:18:05 +03:00
Alexandros Naskos
beb900f1d9
Added label renaming
2020-06-27 03:16:14 +03:00
Alexandros Naskos
4952c34481
Use std.log
2020-06-26 14:29:59 +03:00
Alexandros Naskos
b3f6143e08
Use print instead of warn
2020-06-26 03:26:09 +03:00
Alexandros Naskos
385e01f613
Anonymous mark anonymous struct literal fields as 'field'
2020-06-26 01:50:36 +03:00
axzn
c94efa8ac0
fix ZLS flagging std "cos_" as not camel case (see issue #120 )
2020-06-24 11:28:02 +02:00
Alexandros Naskos
41da6b88ef
Resolve through comptime expressions
2020-06-23 19:57:28 +03:00
Alexandros Naskos
6d75551f7a
Removed todo comment
2020-06-23 13:37:07 +03:00
Alexandros Naskos
9997535a3e
Basic support for switch payloads
2020-06-23 13:32:37 +03:00
Alexandros Naskos
a0f1795f2d
Fixed infinite loop with usingnamespace cycles
2020-06-23 12:43:56 +03:00
Alexandros Naskos
bdbfea0737
removed accidental leftover code
2020-06-23 12:16:37 +03:00
Alexandros Naskos
c8af53ef7a
Fix crash when using param identifier in the same param's type expression
2020-06-23 12:15:18 +03:00
prime31
b1b355c4ac
fixes steps with packages in sub-steps
2020-06-18 17:51:39 -07:00
Alexandros Naskos
65ad078b8c
Payload semantic highlighting
2020-06-18 22:53:33 +03:00
Alexandros Naskos
e2a3b38f5a
Align info
2020-06-18 21:31:52 +03:00
Alexandros Naskos
4aa74f7980
We can call decrementCount from decrementBuildFileRefs when the count is already zero, account for that.
2020-06-18 20:52:54 +03:00
Alexandros Naskos
eab1f4783b
Removed unused code
2020-06-18 20:31:39 +03:00
Alexandros Naskos
e59e1f08e5
Align expr fix
2020-06-18 20:30:58 +03:00
Alexandros Naskos
d4e6ddd780
Root ContainerField highlighting support
2020-06-18 15:51:20 +03:00
Alexandros Naskos
fc769e7e83
Fixed enum access
2020-06-18 15:43:03 +03:00
Alexandros Naskos
2dc7b609d1
Added a TODO comment
2020-06-18 15:14:55 +03:00
Alexandros Naskos
16b44a334b
Finished semantic token analysis
2020-06-18 15:12:09 +03:00
Alexandros Naskos
6c718a59c4
Fixed infinite loop
2020-06-18 03:23:56 +03:00
Alexandros Naskos
5e7fc18404
Array type fix
2020-06-18 02:52:03 +03:00
Alexandros Naskos
c33e01544a
Slice fix
2020-06-18 02:49:34 +03:00
Alexandros Naskos
b8abdc44df
Use @asyncCall to call with a new stack, avoids stack overflows
2020-06-18 02:45:25 +03:00
Alexandros Naskos
57b0e938e3
Fixed slice and array types
2020-06-18 00:13:56 +03:00
Alexandros Naskos
42f1325488
Prototype semantic tokens implementation with actual semantic analysis
2020-06-17 23:36:40 +03:00
Alexandros Naskos
d873b877e7
Various fixes
2020-06-17 15:07:21 +03:00
Alexandros Naskos
8d69fdb95a
Started working on our own Type, differentiate between values of a type and the type itself.
2020-06-17 05:12:12 +03:00
Alexandros Naskos
20ec7470bb
Respond to shutdown request
2020-06-17 00:26:45 +03:00
Alexandros Naskos
8beedb0384
Removed old comment
2020-06-16 22:03:55 +03:00
Alexandros Naskos
abe76ec2bf
Added formatter
2020-06-16 22:02:31 +03:00
Alexandros Naskos
a45939f8ab
Improvements
2020-06-16 18:49:31 +03:00
Alexandros Naskos
fd424277ab
Run zig fmt
2020-06-16 15:49:57 +03:00
Alexandros Naskos
cad6b78a49
Cleaned up ComptimeStringMaps
2020-06-16 15:45:16 +03:00
Alexandros Naskos
fc921f10a4
Fix server capabilities, add semantic tokens config option, fix semantic tokens basic implementation
2020-06-16 14:27:00 +03:00
Alexandros Naskos
bed05b6601
Wrap demantic tokens response result in 'data'
2020-06-16 02:14:39 +03:00
Alexandros Naskos
2da58c5068
Go to declaration will not resolve aliases (go to definition still does)
2020-06-15 12:37:42 +03:00
Alexandros Naskos
f6e3109ff3
Yet better aliases, better label position context detection
2020-06-15 04:39:50 +03:00
Alexandros Naskos
02de547ce9
Better alias support, fix another build file refcount issue
2020-06-15 03:59:49 +03:00
Alexandros Naskos
819b367360
Extract packages from all top level steps
2020-06-15 02:26:54 +03:00
Alexandros Naskos
bfdeecbd04
Better alias support
2020-06-15 01:19:21 +03:00
Alexandros Naskos
e68bec8673
Simplified some code
2020-06-14 23:43:29 +03:00
Alexandros Naskos
48019dd7e2
Added label support
2020-06-14 22:24:18 +03:00
Alexandros Naskos
b46c02228b
Fix build file reference counting
2020-06-14 21:19:27 +03:00
Alexandros Naskos
e27c58e953
Build file reference counting fix
2020-06-14 21:11:49 +03:00
Alexandros Naskos
7f12928fe9
Dont show fields in global completions and from usingnamespaced scopes
2020-06-14 13:03:14 +03:00
Alexandros Naskos
0592513da4
Basic semantic tokens implementation
2020-06-14 01:07:57 +03:00
Alexandros Naskos
112f6d735a
Correctly handle inferred error sets, add self argument support when evaluating bound type params, semanticToken scaffolding
2020-06-13 21:20:04 +03:00
Alexandros Naskos
5c78e88b19
Use Bi formatting in debug allocator instead of our own bad solution now that PR has been merged in zig
2020-06-12 21:33:40 +03:00
Alexandros Naskos
04638a6d4d
Fixed occasional crash on Sublime text, only get params when we use then
2020-06-12 20:31:33 +03:00
Alexandros Naskos
98ebac6d64
Take more client capabilities into account
2020-06-12 17:42:41 +03:00
Alexandros Naskos
612e93be6a
Fix
2020-06-12 15:53:45 +03:00
Alexandros Naskos
481f2c2965
Better comment in debug allocator pointing to a ziglang PR
2020-06-12 15:52:14 +03:00
Alexandros Naskos
1086d3a29f
Added bound function type params
2020-06-12 14:56:46 +03:00
Alexandros Naskos
be9f2de43a
Fixed error union decls
2020-06-11 11:21:08 +03:00
Alexandros Naskos
693e810d75
Resovle parens, only skip empty container fields where we have to
2020-06-11 11:12:31 +03:00
Alexandros Naskos
28e9d08f03
Stop adding malformed container decls into scopes
2020-06-11 03:20:44 +03:00
Alexandros Naskos
80dd19dd8b
Usingnamespace support
2020-06-11 02:40:11 +03:00
Alexandros Naskos
323b05856e
Fixed array payload type resolution
2020-06-11 01:09:28 +03:00
Alexandros Naskos
7650decfa0
Improvements
2020-06-11 01:00:13 +03:00
Alexandros Naskos
b8b6c534e8
Fixed field access
2020-06-11 00:24:57 +03:00
Alexandros Naskos
86e417e8dc
Add hover, goto, completions for alternate declaration types
2020-06-10 22:52:33 +03:00
Alexandros Naskos
545989339d
Remove unused code, fixed snippet self param skipping
2020-06-10 22:05:11 +03:00
Alexandros Naskos
05d75781de
Now builds!
2020-06-10 21:24:17 +03:00
Alexandros Naskos
3bdb2ee444
More progress
2020-06-10 20:48:40 +03:00
Alexandros Naskos
d6609d918b
More progress
2020-06-10 19:54:01 +03:00
Alexandros Naskos
9b08d9e88a
Started removing scope_nodes, using symbol table instead
2020-06-10 19:01:44 +03:00
Alexandros Naskos
0a9cf87585
Added symbol tables
2020-06-10 16:12:00 +03:00
Alexandros Naskos
c2f8537d7b
Added maximum bytes allocated in debug allocator, as well as peak memory usage
2020-06-09 16:39:00 +03:00
Alexandros Naskos
aa0e3e3736
Merge pull request #108 from Vexu/cast
...
Support completion for builtin casts with explicity type parameter
2020-06-09 10:57:50 +03:00
SuperAuguste
3c2c1e97ed
preamble to usingnamespace
2020-06-08 23:21:55 -04:00
SuperAuguste
20434839f1
add new instructions to config, start increasing debugability
2020-06-08 18:18:12 -04:00
Vexu
3fc7ee75c2
support completion for builtin casts with explicity type parameter
2020-06-08 19:07:34 +03:00
SuperAuguste
6ae23ba2d0
fix field details in completions
2020-06-07 09:49:21 -04:00
Alexandros Naskos
71500428b6
Fixed occasional crash
2020-06-07 12:21:01 +03:00
SuperAuguste
d35a71806b
fix
2020-06-06 18:02:53 -04:00
Auguste Rame
dd58d0d501
Merge pull request #103 from Vexu/patch-1
...
Correctly skip first comma in bound function snippets
2020-06-06 14:11:38 -04:00
Alexandros Naskos
a2c4f7c5c7
Removed debug trace
2020-06-06 16:57:39 +03:00
Alexandros Naskos
af42c95222
Handle string request ids
2020-06-06 15:40:33 +03:00
Veikka Tuominen
da170c44b9
correctly skip first comma in bound function snippets
2020-06-06 10:35:59 +03:00
Alexandros Naskos
73b58abe51
Detect self arguments and skip it when generating snippets
2020-06-06 02:44:43 +03:00
Alexandros Naskos
563c4f0294
Fixed newlines in markdown line comments
2020-06-05 00:19:00 +03:00
Alexandros Naskos
b0bb8888d3
Removed unreachable, switch cases can trigger this
2020-06-03 19:59:26 +03:00
Alexandros Naskos
34fbef97fe
Added If, While, For payload type resolution
2020-06-03 19:56:00 +03:00
Alexandros Naskos
9392c4032c
Only refresh packages when saving a build.zig file, not on any change
2020-06-03 11:32:05 +03:00
Alexandros Naskos
ef95c76e45
Added doc comments on hover
2020-06-03 11:23:14 +03:00
Alexandros Naskos
d429aa6105
Removed comment
2020-06-02 16:49:31 +03:00
Alexandros Naskos
e7157ba381
Preparing for semantic tokens support. Fix a crash on some function calls
2020-06-02 16:48:23 +03:00
Alexandros Naskos
5ae7b0a855
Resolve type parameters in some circumstances
2020-06-01 20:48:14 +03:00
Alexandros Naskos
52fe21b8bd
Parse client capabilities for snippet support
2020-06-01 13:29:06 +03:00
Alexandros Naskos
269c308ec7
Respond with null where we can, even if we already marked a capability as false.
2020-06-01 12:28:33 +03:00
Alexandros Naskos
50c8cebe26
Removed reachable unreachable
2020-05-31 18:02:33 +03:00
Alexandros Naskos
543cb5816c
Added zig_exe_path option, use it to detect lib path if none is provided
2020-05-30 23:36:18 +03:00
SuperAuguste
c9af33011a
fix function defs in containers
2020-05-29 16:07:00 -04:00
SuperAuguste
b08ff62595
Merge branch 'master' of https://github.com/SuperAuguste/zls
2020-05-29 16:01:45 -04:00
SuperAuguste
e945c4cca0
fix
2020-05-29 16:01:35 -04:00
Alexandros Naskos
4e87390196
DeclsFromIndex no longer needs to return the innermost container, we find it while processing expressions
2020-05-29 12:46:50 +03:00
Alexandros Naskos
bc8ecd28f4
Merge pull request #40 from Vexu/err
...
Implement global error set and enum literal completion
2020-05-28 19:04:06 +03:00
Vexu
c1ba26e0a2
implement completion for enum literals
2020-05-28 18:21:51 +03:00
Vexu
22a863134b
implement global error set completion
2020-05-28 15:45:11 +03:00
SuperAuguste
985a1d6398
give tests names in outline
2020-05-28 08:41:40 -04:00
SuperAuguste
0720452217
fix more no_names and build config
2020-05-27 21:14:27 -04:00
SuperAuguste
2b153e046c
outlines, made JSON stdout memory dynamic
2020-05-27 20:39:36 -04:00
Alexandros Naskos
6f8fbe1ccb
Added tests.
2020-05-27 21:58:35 +03:00
Alexandros Naskos
406e400f0c
Pointer to array slicing yields a pointer to array type, not a slice type.
2020-05-27 19:01:23 +03:00
Alexandros Naskos
7602f34bb4
Added .?, .*, [] support
2020-05-27 18:49:11 +03:00
Alexandros Naskos
54f3590b6d
Merge branch 'master' of https://github.com/SuperAuguste/zls into new_pos_context
2020-05-27 13:47:12 +03:00
Alexandros Naskos
a5958caccd
Free handles before deleting them from the hashmap
2020-05-27 13:41:50 +03:00
Alexandros Naskos
f3974d2ff2
Removed unneeeded function
2020-05-27 13:09:50 +03:00
Alexandros Naskos
d2325df729
Removed comments
2020-05-27 02:00:22 +03:00
Alexandros Naskos
f6df35e069
Reworked position context to use tokenizer, works in more contexts
2020-05-27 01:45:18 +03:00
Alexandros Naskos
3c0ee21337
Removed comment
2020-05-26 21:39:39 +03:00
Alexandros Naskos
a330932b7c
Copy scope nodes when cloning an analysis context
2020-05-26 17:19:16 +03:00
Alexandros Naskos
6f23d8a053
Small fixes and code cleanup
2020-05-26 13:30:28 +03:00
Alexandros Naskos
9bf0842697
Merge branch 'master' of https://github.com/SuperAuguste/zls
2020-05-26 01:52:25 +03:00
Alexandros Naskos
da6f43c46d
Go to definition now resolved fn aliases, added hover
2020-05-26 01:51:50 +03:00
Alexandros Naskos
48ad1eccbf
Fixed goto import, preparing for hover impl
2020-05-26 00:37:18 +03:00
SuperAuguste
f5b30cfd6c
zig build config is here!
2020-05-25 17:12:08 -04:00
Alexandros Naskos
754a982be2
Make capabilities explicit, make hover capability true
2020-05-25 23:15:54 +03:00
Alexandros Naskos
8d9b96e749
Added build file ref counting and freeing
2020-05-25 20:42:58 +03:00
Alexandros Naskos
379891f937
Dont copy the build runner if a file with that name already exists
2020-05-25 20:21:53 +03:00
Alexandros Naskos
b82fb9c790
Added build_runner_path configuration option
2020-05-25 20:04:23 +03:00
Alexandros Naskos
02745f1472
Free build files in document store deinit
2020-05-25 19:49:04 +03:00
Alexandros Naskos
4bf97bebc9
Seems to work, needs cleanup
2020-05-25 19:33:08 +03:00
Alexandros Naskos
5fb68c9dc7
Do not try to find build files in a std and subdirectories
2020-05-25 17:48:25 +03:00
Alexandros Naskos
155c5b2a95
Started working on build file logic
2020-05-25 17:24:44 +03:00
Alexandros Naskos
4542abf145
Check for the existence of zig in PATH in main()
2020-05-25 16:18:00 +03:00
Alexandros Naskos
f008a776e2
Removed debug traces, added comment
2020-05-25 11:30:12 +03:00
Alexandros Naskos
1f23ba8490
Use new build.zig functions to get the correct steps
2020-05-25 11:28:38 +03:00
Alexandros Naskos
3b052372c2
Added custom build runner, install it along with the zls binary
2020-05-25 03:22:39 +03:00
Alexandros Naskos
7c5ff5c43d
Fix segfault with var params
2020-05-25 02:57:19 +03:00
Alexandros Naskos
727b363f7f
Fix infinite loop in resolveTypeOfNode
2020-05-24 21:01:35 +03:00
Alexandros Naskos
d6513456c1
Keep old scope nodes onContainer
2020-05-24 19:26:46 +03:00
Alexandros Naskos
c6fa528af4
Store trees in handles
2020-05-24 19:00:21 +03:00
Alexandros Naskos
fd069b026a
Added hack to support ParamDecl not being a node anymore
2020-05-24 17:31:28 +03:00
Alexandros Naskos
594488d7c5
Merged master
2020-05-24 17:12:13 +03:00
Alexandros Naskos
34ba67b3d1
Fixed node iteration:
2020-05-24 17:07:48 +03:00
Alexandros Naskos
40e1e8843c
Added timing information output
2020-05-24 15:39:40 +03:00
Alexandros Naskos
9ec32ac830
We now complete ArrayList!
2020-05-24 15:24:18 +03:00
SuperAuguste
dd9ec8e450
Fix completion of functions
2020-05-23 22:07:09 -04:00
Alexandros Naskos
f5ca94a0d1
Merge remote-tracking branch 'zigtools/master' into new_parser
2020-05-24 02:08:06 +03:00
Alexandros Naskos
11b5da3a91
Now compiles on the new parser branch
2020-05-24 01:21:02 +03:00
Alexandros Naskos
22b5d2e2c3
Pass the arguments in the correct order dummy
2020-05-24 00:15:35 +03:00
Alexandros Naskos
5dc7a1b40a
Fix @This() completions, do half the work in global completions
2020-05-23 23:22:50 +03:00
Alexandros Naskos
30cb9e06e4
Complete non-pub declarations in the same module
2020-05-23 16:14:03 +03:00
Alexandros Naskos
c895d7d8f6
Go to definition now works for captures
2020-05-23 02:58:39 +03:00
Alexandros Naskos
34adb4e22f
Added switch to declFromIndex, fixed occasional crash
2020-05-23 02:33:42 +03:00
Alexandros Naskos
a189fa171c
More declsFromIndex improvements
2020-05-23 01:58:47 +03:00
Alexandros Naskos
c3d2aa3434
Handle if, while, for, payloads
2020-05-23 01:03:41 +03:00
Alexandros Naskos
d4871914ea
Removed debug traces
2020-05-23 00:05:16 +03:00
Alexandros Naskos
077a17e2f5
Do not add every node when adding decls, just the supported nodes
2020-05-23 00:02:26 +03:00
Vexu
2841c864bc
uriFromImportStr ignore packages for now
2020-05-22 18:56:57 +03:00
Vexu
af746be770
provide goto definition for import strings
2020-05-22 18:52:21 +03:00
Alexandros Naskos
ccc923e2f0
One more fix
2020-05-21 21:02:12 +03:00
Alexandros Naskos
2eab5e036d
Check that the goto definition cursor is within bounds
2020-05-21 20:51:03 +03:00
Auguste Rame
44f33c631b
Merge pull request #71 from alexnask/test_block_completions
...
Test block local completions
2020-05-21 09:14:34 -04:00
Alexandros Naskos
26cc339235
Add test block local completion support
2020-05-21 15:16:45 +03:00
Alexandros Naskos
03f774fda9
Try expression support
2020-05-21 15:06:16 +03:00
Alexandros Naskos
4acb77f09e
enable_snippets is false by default, fix it in README. Small fixes to goto def/decl
2020-05-21 14:36:14 +03:00
SuperAuguste
75f1aa5780
fix workspace folder bug
2020-05-19 16:24:24 -04:00
Alexandros Naskos
61b8fd5259
Moved a calculation out of a loop
2020-05-19 22:33:15 +03:00
Alexandros Naskos
7dcbc39d59
Added workspace folder support, read configs from there, use known-folders
2020-05-19 22:09:00 +03:00
Alexandros Naskos
6fe52d95b3
Added @This() support
2020-05-19 18:53:01 +03:00
Alexandros Naskos
8d59de716f
Better fn name
2020-05-19 16:47:30 +03:00
Alexandros Naskos
07f2138dce
Simple generic function support
2020-05-19 16:42:36 +03:00
Sergeeeek
c55363e2c2
Code style fixes
2020-05-19 12:02:48 +03:00
Sergeeeek
06ba823368
Removed logs and unused utility function
2020-05-19 07:47:23 +03:00
Sergeeeek
4b3cb641c0
Fixed wrong node being used when resolving return type of a function
2020-05-19 07:39:34 +03:00
Sergeeeek
5043a10dd4
Fixed error after merge
2020-05-19 07:18:39 +03:00
Sergeeeek
c4aa35872c
Merge remote-tracking branch 'upstream/master'
2020-05-19 07:17:28 +03:00
Sergeeeek
1f50f4e4f6
Moved deep import resolution to nodeToCompletion
2020-05-19 07:12:05 +03:00
Alexandros Naskos
53da418d11
Merge branch 'master' of https://github.com/SuperAuguste/zls into goto_definition
2020-05-18 23:20:18 +03:00
Alexandros Naskos
b1ce06a80d
Implemented go to definition
2020-05-18 23:19:23 +03:00
Timon Kruiper
27034abbaf
Also return from getFieldAccessTypeNode
when a comma is found.
...
This allows to get completion support when a function with multiple
arguments is completed.
2020-05-18 20:59:44 +02:00
SuperAuguste
acd85c0f39
fix
2020-05-18 12:37:56 -04:00
Alexandros Naskos
8693c4a69f
Removed last remaining log. RIP
2020-05-18 19:33:58 +03:00
SuperAuguste
b9bd0e2476
remove log
2020-05-18 11:36:47 -04:00
SuperAuguste
66908bd1a9
Revert buffered in stream - it breaks inputs for some strange reason
2020-05-18 09:31:17 -04:00
Auguste Rame
847414d9ca
Merge pull request #54 from alexnask/goto_definition
...
Fixed field completions with partial identifiers after the period
2020-05-18 09:25:00 -04:00
Alexandros Naskos
a017de1679
Added a comment
2020-05-18 16:22:10 +03:00
Alexandros Naskos
bbe2800139
Fixed field completions with partial identifiers after the period
2020-05-18 16:21:16 +03:00
Auguste Rame
5a6ff63d8c
Merge branch 'master' into master
2020-05-18 08:58:32 -04:00
Auguste Rame
0a0f902671
Merge pull request #50 from FireFox317/bufferedstreams
...
Wrap stdout in BufferedOutStream
2020-05-18 08:54:04 -04:00
Alexandros Naskos
a6a4afd4fd
More cleanup:
2020-05-18 15:46:17 +03:00
Alexandros Naskos
749a4fcbe4
Renamed checkSanity to removeOldImports, use an arena for temporary data.
2020-05-18 15:14:16 +03:00