Commit Graph

20 Commits

Author SHA1 Message Date
Anton Myasnikov
d5154dff36
[LIGO-41] Ligo binary integration
Problem: We want to integrate our lsp client with ligo binary to
be able to typecheck declarations as well as extract their scopes.

Solution: Implement a simple client that calls ligo and some helpers
functions to extract scopes from its output.
2020-09-08 18:48:53 +03:00
Anton Myasnikov
f0005c982a
[LIGO-39] Parse contracts in directory
Problem: We want to be able to parse whole directory for ligo
contracts for testing purposes.

Solution: Add `parseContracts` function that returns `ParsedContract`
data that ignores every file which is not a ligo contract.
2020-08-25 17:29:40 +03:00
Anton Myasnikov
1828fd6d46
[LIGO-29] Integrate existing completion framework with haskell-lsp
Problem: Currently we have not integrated our completions with
haskell-lsp server so that we could use this completion from text
editor itself.

Solution: Add the corresponding requests for handling code completion.
2020-08-23 22:01:00 +03:00
Kirill Andreev
fe929fbe70
Link camligo grammar, get rid of personal loaders 2020-08-14 15:40:30 +04:00
Anton Myasnikov
820d73f345
[LIGO-25] Chores (add Makefile, scripts, vendor, stylish)
Problem: We need to add stylish config to settle code style for our
project. Makefile to simplify its building. Also we need to check
our project for trailing whitespaces so we need to add the corresponding
script to be used later in CI.

Solution:
Add
  - stylish-haskell config
  - Makefile
  - `check_trailing_whitespace` script
2020-08-11 13:31:22 +03:00
Kirill Andreev
b5e5bc25a1
[WIP] Conversion to descent-based parser 2020-08-11 12:32:52 +04:00
Kirill Andreev
20014a7926
Remove warnings, refactor FullEnv 2020-08-11 12:32:09 +04:00
Kirill Andreev
b35a28853b
Add ability to recursively parse #included files 2020-08-11 12:32:06 +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
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
9d81ecf353
Silence warnings 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
d380e46737
Convert to monotyped AST 2020-08-11 12:32:00 +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
0cec59988e
Prevent many/some from making last error-element 2020-08-11 12:31:51 +04:00
Kirill Andreev
510cda6613
Initial commit of LIGO tooling 2020-08-11 12:31:49 +04:00