This introduces additional layer for module model, which synchronizes it with LanguageServer - both its state and the lifetime (it is opened in LS on creation and closed when dropped).
Original commit: e93216fdd5
The binary data protocol of the Language Server.
* a new RPC handler has been implemented. Currently it largely duplicates the previous json-rpc handler but it is supposed to supersede it, as it supports both json and binary rpc protocols;
* `mockall` library has been used to provide a mock client for data protocol;
* serialization code is still messy, not sure how much better can we make it, given the generated flatbuffers code;
Original commit: f6ff8bdf35
* Extend scaffolding for Native and HTML based visualizations.
* Use nicer dataset as an example.
* Define better S wrapper data interface.
* Refactor structs into submodules.
* Add examples of JS-based visualization.
Original commit: 48665e0498
* Implement visualisation component.
* Implement key actions to hide and show visualisations.
* Implement dummy visualisation.
Original commit: c8e7075e28
Before during SpanTree generation we treated macros as a leaves. Now we properly look into them, get all the AST nodes in their patterns and generate children of these SpanTree nodes from them.
Original commit: aeff31f2d8
Extends alias analysis support for macro-using code, including special support for lambda expressions.
Also, it fixes already standing omission where definition body identifier usage was not properly covered in the results. (We had assumed that we won't need it for connections — and we haven't for connections per se, but we need for utilities for connection ops).
Also, as I encountered a number of issues with parser, I've made sure that they are reported and created a test cases for them to easily keep track as we fix them.
Co-authored-by: Adam Obuchowicz <adam.obuchowicz@luna-lang.org>
Original commit: 761e2691bb
Implemented Set and Erase operations on SpanTree. Also modified SpanTree, that it have much more Empty nodes, and those empty nodes now are used for inserting.
Note: Because we're approaching deadline, functions added to chains have not unit tests for their own, although they're covered by spantree operations tests.
Original commit: a2701a0cdd
* Enable working alpha blending for ID pass via bit encoding of IDs in a RGB8 texture..
* Add facilities to change texture parameters.
Original commit: b46012e3fa
We don't want to set up releases right now, so the publishing is disabled.
I managed to do it with CLI option. In theory it should be done by configuration options - but those didn't work. So, for know I leave one what works.
Original commit: 9ad8a51dcb
Created a new SpanTree crate in IDE. The structure itself is quite straightforward. To generate span-tree from AST you may use method generate_tree from generator::SpanTreeGenerator trait.
Original commit: 194caafd09