Alexandros Naskos
3e300e4d74
Added our own ifFull implementation, fixes some crashes
2021-03-26 21:46:49 +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
Alexandros Naskos
55ad1028fc
Fixed crash in analysis of variable declaration aliases
2021-03-21 02:31:32 +02:00
Luuk de Gram
472033a845
Improve token location stability
2021-03-13 12:22:19 +01: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
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
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
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
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
Vesim
b2e456404c
fix inStream/outStream removal
2021-01-10 08:12:11 +01:00
Lee Cannon
2a9edf243d
Fixed string printing with {s} format specifier
2021-01-04 17:51:26 +00: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
0bf9602d7b
Fixed infinite loop when analyzing variable declarations like const A = A;
for semantic token highlighting
2020-11-15 20:37:00 +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
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
Alexandros Naskos
162f1b2fbe
Opaque type support
2020-10-10 12:25:50 +03: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
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
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
e7a1f5c34f
Fixed slice access type resolution
2020-07-23 21:33:43 +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
76dcc8cbe2
null fix
2020-07-17 10:01:21 -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
5454883d2d
Added *, ? completions, improved readme
2020-07-07 23:26:12 +03:00
Alexandros Naskos
b61785eb3e
Optimize document symbols
2020-07-07 11:57:02 +03:00
Alexandros Naskos
c067bce9fa
Fixed to use latest HashMap API
2020-07-06 00:56:41 +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
671318730a
Started adding session tests, finished (buggy) main loop rewrite
2020-06-30 15:46:43 +03:00
Alexandros Naskos
3be74cbdc5
Dont use variable decl init node blindly
2020-06-28 16:08:15 +03:00
Alexandros Naskos
108a2dbd64
Semantic highlighting improvements
2020-06-27 20:45:58 +03:00
Alexandros Naskos
8bc6087646
Completed renaming
2020-06-27 15:29:45 +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
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
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
fc769e7e83
Fixed enum access
2020-06-18 15:43:03 +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
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
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
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
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
7f12928fe9
Dont show fields in global completions and from usingnamespaced scopes
2020-06-14 13:03:14 +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
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
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
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
Vexu
3fc7ee75c2
support completion for builtin casts with explicity type parameter
2020-06-08 19:07:34 +03: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
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
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
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