Commit Graph

1707 Commits

Author SHA1 Message Date
Alexandros Naskos
86fbf5fe7e Global completions now check config for snippet support, modified readme to reflect changes. 2020-05-09 21:45:13 +03:00
Alexandros Naskos
25cc662bcc Merge branch 'master' of https://github.com/SuperAuguste/zls into read_config 2020-05-09 21:38:20 +03:00
Auguste Rame
64c60c7189
Merge pull request #12 from alexnask/master
Added snippet global completion, fixed no snippet completions
2020-05-09 14:20:33 -04:00
Alexandros Naskos
35b4913b3e Removed no_snippets build option.
Instead, we now read a configuration file, zls.json in the same folder as the executable.
Options are defined in the struct config.zig and must have default values.
The only option right now is enable_snippets and it defaults to true.
2020-05-09 16:43:51 +03:00
Alexandros Naskos
f25dade27d Removed comments 2020-05-09 05:43:17 +03:00
Alexandros Naskos
e46135cb68 Added snippet completion for global functions, fixed no snipper completion. 2020-05-09 05:38:08 +03:00
Alexandros Naskos
922559c83a Use error iterator instead of manual looping in diagnostic generation 2020-05-09 04:02:29 +03:00
SuperAuguste
01b2c2e328 fix bug with latest pr 2020-05-08 13:02:46 -04:00
Auguste Rame
b939b9cefa
Merge pull request #11 from alexnask/PascalCase
Detect type functions and require PascalCase, require camelCase for the rest
2020-05-08 12:20:34 -04:00
Alexandros Naskos
d8457c96a1 is_type_function is const 2020-05-08 18:07:14 +03:00
Alexandros Naskos
29b0045bc7 Detect type functions and require PascalCase, require camelCase for the rest 2020-05-08 18:01:34 +03:00
Auguste Rame
cc38b0f9ad
Merge pull request #10 from alexnask/master
Renamed documentContext to documentPositionContext, added multiline string literal support
2020-05-08 10:31:00 -04:00
Alexandros Naskos
bd7675e5b7 Fixed typo 2020-05-08 17:25:22 +03:00
Alexandros Naskos
09cd91690c Renamed documentContext to documentPositionContext and added multiline string literal to it. 2020-05-08 17:24:29 +03:00
SuperAuguste
ffcdb886d9 fix crash with documentContext 2020-05-08 09:17:32 -04:00
Auguste Rame
d368c84aa3
Merge pull request #9 from alexnask/master
Added position context detection
2020-05-08 09:09:57 -04:00
Alexandros Naskos
aca7db3e88 Reset context to other when trying to find field/var access and don't get alphanumerical or @"..." 2020-05-08 15:09:31 +03:00
Alexandros Naskos
0b5eb4b9d2 Fixed field_access check 2020-05-08 15:07:14 +03:00
Alexandros Naskos
0149f11c7c Switched Context to PositionContext 2020-05-08 14:36:54 +03:00
Alexandros Naskos
982a39f868 Added context detection from document and position for builtins, variable accesses, field accesses, string literals and comments. 2020-05-08 13:50:21 +03:00
SuperAuguste
fb9f50d606 fix builtin completion 2020-05-07 23:05:17 -04:00
SuperAuguste
84837dfe58 fix pub functions 2020-05-07 22:27:42 -04:00
Auguste Rame
effb14ef87
Merge pull request #8 from alexnask/master
General cleanup and improvements
2020-05-07 22:25:23 -04:00
Alexandros Naskos
48ed3ff447 Merge branch 'master' of https://github.com/SuperAuguste/zls 2020-05-08 02:57:24 +03:00
Alexandros Naskos
02e57f5d59 Renamed leak_alloction build option to allocation_info
Switched to readAll and writeAll stream functions
Disabled logs on non-debug builds
Created freeDocument(doc), closeDocument(uri), called at appropriate sites
Removed _ = expr; for void values
Added and clarified some logging messages
Simplified builtin_completion generation
The JSON parser is now reused but reset after parsing a RPC
Fix memory leak when closing a document (last mem. leak)
Renamed leak_alloc to debug_alloc
Removed catch return statements from main(), rely on try to also get stacktraces instead
2020-05-08 02:53:00 +03:00
SuperAuguste
042b47a27d fix typo in readme 2020-05-07 14:02:59 -04:00
SuperAuguste
fd38e2d3ef resize 2020-05-07 13:57:38 -04:00
SuperAuguste
4f8e61322f README improvements 2020-05-07 13:54:58 -04:00
SuperAuguste
01ff89eea3 Add no_snippets 2020-05-07 13:16:04 -04:00
Auguste Rame
14a2796857
Merge pull request #6 from alexnask/separate_text_mem
Separate document text and memory.
2020-05-07 13:10:18 -04:00
Alexandros Naskos
6ed45a1f23 Also free the sane text when releasing a document 2020-05-07 20:02:54 +03:00
Alexandros Naskos
6ac068a3c5 Merge branch 'master' of https://github.com/SuperAuguste/zls into separate_text_mem 2020-05-07 19:54:11 +03:00
SuperAuguste
447d52dd1c fix init error 2020-05-07 12:47:39 -04:00
SuperAuguste
6b099f8c6d fix 2020-05-07 12:25:37 -04:00
Alexandros Naskos
4d5f833226 Merge branch 'master' of https://github.com/SuperAuguste/zls into separate_text_mem 2020-05-07 18:43:56 +03:00
SuperAuguste
1725278be1 add master data, add data selection 2020-05-07 11:29:40 -04:00
Alexandros Naskos
ee594a1b2f Separate document text and memory.
Text is now a substring of memory, starting at index 0.
We now realloc memory when needed and only copy the existing data around
    instead of allocating a new string, copying all the data and freeing
    the old string.
This leads to possibly less allocation calls, depending on the allocator
    and less copying necesssary.
2020-05-07 17:58:31 +03:00
Auguste Rame
f80dc1d35c
Merge pull request #4 from alexnask/memleaks
Fixed memory leaks
2020-05-07 09:26:34 -04:00
Alexandros Naskos
04abb3a5ff Fix merge conflicts 2020-05-07 16:23:13 +03:00
Alexandros Naskos
5c602745fd Use the page allocator as our base allocator for now. 2020-05-07 16:20:45 +03:00
Auguste Rame
92a03ab9d2
Merge pull request #5 from alexnask/modernize_code
Switched to anonymous struct and enum literals. Thanks alexnask!
2020-05-07 09:17:33 -04:00
Alexandros Naskos
cea1222b79 Free the old document text after rebuilding the new one, this was a use after free since before, after point into the old memory 2020-05-07 16:04:57 +03:00
Alexandros Naskos
eaf0c1f3e5 Switched struct and enum literals to use the anonymous form where possible.
Added trailing commas to fields of struct literals that are followed by newline.
2020-05-07 15:29:53 +03:00
Alexandros Naskos
a0addc040d Fixed a bug in publishDiagnostics where message data on the stack could be corrupted before being sent 2020-05-07 15:01:16 +03:00
Alexandros Naskos
c5d3d7902e Free json parser state, compute builtin completions at comptime 2020-05-07 14:36:40 +03:00
Alexandros Naskos
a7e4d0b5e3 Use a local arena to free all memory with one call. 2020-05-07 14:10:58 +03:00
Alexandros Naskos
e9d9c57ff4 Fixed some additional memory leaks. 2020-05-07 13:56:08 +03:00
Alexandros Naskos
3fa5ef4b96 Fixed a couple of typos 2020-05-07 12:58:35 +03:00
Alexandros Naskos
0283222e3a Added build option to enable the leak counting allocator.
Log the allocation count to the client at the end of the main loop.
Fixed two memory leaks in analysis.zig
2020-05-07 12:50:25 +03:00
SuperAuguste
5bd790f416 basic stylistic linter 2020-05-03 22:17:19 -04:00