The parsing and lexing of languages requires specialized tools. This is why, as of the 7.0 release, the ReSharper SDK comes with a set of tools and target files as well as a fully worked-out example of supporting a new language. The following items are included:
- CsLex --- a tool for creating lexical analysers for different languages.
- Java --- contains IKVM infrastructure which permits the running of the Java-based parser generator.
- MSBuild --- contains build tasks that can be used to automate lexer and parser construction.
- parserGen --- a tool for creating ReSharper-compatible parsers.
In addition to the tools, the SDK also comes with a full language plugin example located in the
Samples/PsiPlugin folder. This sample is a full implementation of a language plugin for supporting PSI files, which are parser definition files used by parserGen. As a result, plugin developers interested in using parserGen for new language development are advised to compile and install
PsiPlugin, which can greatly simplify the process of working with parser definition files.