...
Page properties | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
- Extend Solang in the existing rust code base to include language server binary
- Implement Syntax Highlighting
- Symbol DefinitionHovers
- Diagnostics for errors and warnings
- test cases
...
hyperledger chat: sbalikondwar
Project Results
<iframe width="560" height="315" src="https://www.youtube.com/embed/P0qjwtAhs4g" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
...
During the mentorship a language server was developed which used Solang compiler as its backend to process Solidity files.
The server is implemented in Rust using tower-lsp as a base framework to process client(editor)-server requests.
A vscode extension was also developed in TypeScript to use the server providing features:
- Syntax highlighting and bracket completion.
- Diagnostic info of compiler errors, warnings and hints.
- Hovers for different types of variable, struct, enum, function definitions.
The code is present on github under hyperledger-labs at https://github.com/hyperledger-labs/solang-vscode.
Checkout the readme page to learn how to use it.
A visual demo video of the implementation is uploaded here.
The project plan contains technicalities of how the client-server communication process takes place.
Final Report
Hyperledger Mentorship presentation slides(google slides link)
View file | ||||
---|---|---|---|---|
|
Lightening Talk Recording
View file | ||||
---|---|---|---|---|
|