Commit Graph

134 Commits

Author SHA1 Message Date
Kirill Andreev
9f29dab195
Fix letrec partially 2020-08-11 12:32:53 +04:00
Kirill Andreev
6bd5d9ef84
Update AST.Scope to new framework 2020-08-11 12:32:53 +04:00
Kirill Andreev
226b7264aa
Restore AST.Scope instances and part of the machinery 2020-08-11 12:32:53 +04:00
Kirill Andreev
b5e5bc25a1
[WIP] Conversion to descent-based parser 2020-08-11 12:32:52 +04:00
Kirill Andreev
3233270dba
Add debounced function 2020-08-11 12:32:10 +04:00
Kirill Andreev
58e5128142
Fix dying on broken code and handle errors in Main.hs 2020-08-11 12:32:10 +04:00
Kirill Andreev
508b111374
Fix blocks getting invalid ranges 2020-08-11 12:32:09 +04:00
Kirill Andreev
20014a7926
Remove warnings, refactor FullEnv 2020-08-11 12:32:09 +04:00
Kirill Andreev
a11e92af60
Remove unused traverseOnly 2020-08-11 12:32:09 +04:00
Kirill Andreev
5737cd5686
Fix tree traversal breaking on errors 2020-08-11 12:32:08 +04:00
Kirill Andreev
e5ec32f46a
Fix letrec behaviour 2020-08-11 12:32:08 +04:00
Kirill Andreev
c26bc044ee
Separate the namespaces for search 2020-08-11 12:32:08 +04:00
Kirill Andreev
ba3c0a76d9
Fix function stealing 'goto def's 2020-08-11 12:32:07 +04:00
Kirill Andreev
29bc1721d1
Load from VFS 2020-08-11 12:32:07 +04:00
Kirill Kuvshinov
bf6cc6ca16
[LIGO-18] Expose find ref and go to def via LSP
Problem: The current implementation of "Find references" and
"Go to definition" is not exposed via the LSP. We need to expose
them so that they are accessible from the client.

Solution: Add the necessary handlers, send response messages.
2020-08-11 12:32:07 +04:00
Kirill Andreev
65fc5bec75
Separate env-tree construction and usage 2020-08-11 12:32:06 +04:00
Kirill Andreev
24cc24b0d7
Prevent loop on recursive import 2020-08-11 12:32:06 +04:00
Kirill Andreev
b35a28853b
Add ability to recursively parse #included files 2020-08-11 12:32:06 +04:00
Kirill Andreev
583d7f8997
Clean the comments 2020-08-11 12:32:05 +04:00
Kirill Andreev
03b89bc5b7
Rewrite scope loader 2020-08-11 12:32:05 +04:00
Kirill Andreev
8d61a36918
[WIP] Implement a loader of Env from a ScopeTree 2020-08-11 12:32:05 +04:00
Kirill Andreev
9f124bf5af
Implement def/impl/type search 2020-08-11 12:32:04 +04:00
Kirill Andreev
9cf2e0cf97
Use Data.Sum instead of manual Union 2020-08-11 12:32:04 +04:00
Kirill Andreev
20de97c5c6
Make faster Union 2020-08-11 12:32:04 +04:00
Kirill Andreev
44defb2114
Remove Data.Fix, make recursion manually 2020-08-11 12:32:03 +04:00
Kirill Andreev
19f05f5afc
Rename HasComments to Comment; remove *.cabal 2020-08-11 12:32:03 +04:00
Kirill Andreev
e701e196fe
Improve documentation 2020-08-11 12:32:03 +04:00
Kirill Andreev
9d81ecf353
Silence warnings 2020-08-11 12:32:02 +04:00
Kirill Andreev
1f7af3c8cb
Make infoOf always return an info 2020-08-11 12:32:02 +04:00
Kirill Andreev
9b95006a71
Make Error a Functor; move all Error stuff to Error.hs 2020-08-11 12:32:02 +04:00
Kirill Andreev
41403426b0
Add project overview 2020-08-11 12:32:01 +04:00
Kirill Andreev
f3fbfb49a1
Add documentation 2020-08-11 12:32:01 +04:00
Kirill Andreev
95707100c2
Formatting Main.hs 2020-08-11 12:32:01 +04:00
Kirill Kuvshinov
9856476ebf
WIP: Add CTRL.run 2020-08-11 12:32:00 +04:00
Kirill Andreev
923a5bb9fe
Add documentation 2020-08-11 12:32:00 +04:00
Kirill Andreev
d380e46737
Convert to monotyped AST 2020-08-11 12:32:00 +04:00
Kirill Andreev
113a2425a4
Remove ScopeHelpers.hs 2020-08-11 12:31:59 +04:00
Kirill Andreev
11fdc0afa1
Fix error msg interpolation 2020-08-11 12:31:59 +04:00
Kirill Andreev
5c643a3b63
TMP 2020-08-11 12:31:59 +04:00
Kirill Andreev
67de82edec
[LIGO-6] Implement fallback scope system 2020-08-11 12:31:58 +04:00
Kirill Andreev
1536590edb
TMP 2020-08-11 12:31:58 +04:00
Kirill Andreev
bc155bea16
Add TODO 2020-08-11 12:31:58 +04:00
Kirill Andreev
c8b4c2bd35
Fix comment )-truncation 2020-08-11 12:31:57 +04:00
Kirill Andreev
e1a3903e18
Limit exports of Parser 2020-08-11 12:31:57 +04:00
Kirill Andreev
020b3ba334
Improve pretty-printer 2020-08-11 12:31:57 +04:00
Kirill Andreev
19e1018620
Add autocollector for comments 2020-08-11 12:31:56 +04:00
Kirill Andreev
c497da5841
Add automatic error collector to the parser 2020-08-11 12:31:56 +04:00
Kirill Andreev
916d9897bd
Simplifying parser 2020-08-11 12:31:56 +04:00
Kirill Andreev
7ff8226e1b
Remove obsolete checks for Parser.{some,many} 2020-08-11 12:31:55 +04:00
Kirill Andreev
6dc1eb23cd
Remove excess params of Parser.{many,some} 2020-08-11 12:31:55 +04:00