Uaiso is a parsing infrastructure that provides a unifying AST (Abstract Syntax Tree) and semantic services across programming languages. Ideally it can be used to:
- Produce code completion on IDEs/text editors
- Perform static analysis on programs
- Generate LLVM code (or any other)
|D||2.0||bison, GLR||partial||ok||no||D completion|
|Go||1.5+||bison, GLR||complete||ok||yes||Go completion|
The source is written in standard C++. You should be able to build it anywhere, but I'm developing on Clang/OSX. Make sure to use --recursive to clone.
- C++14 compiler
Obs: There's code relying on Unix-like paths, which I need to work on for Windows.
Uaiso is a library. In order to use it within an IDE/text editor you need to write a plugin. There's an experimental one available for Qt Creator: https://github.com/ltcmelo/uaiso-plugins