A C# code generator using Roslyn, extracted from Wasabi v3.1.0. MIT licensed.
C#
Permalink
Failed to load latest commit information.
AST Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
Example
Properties Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
was_out Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
.gitignore Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
App.config Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
BuiltIns.cs Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
ClrImporter.cs Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
CodeGenVisitor.cs
CompileException.cs Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
Compiler.cs Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
ICodeGenVisitor.cs Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
LICENSE Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
Program.cs Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
README.md Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
RoslynExtensions.cs Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
RoslynGenerator.cs
WasabiRoslynGenerator.csproj Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
WasabiRoslynGenerator.sln Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015
packages.config Initial commit: Hello, FogCreek.Wasabi.RoslynGenerator Jun 4, 2015

README.md

Wasabi RoslynGenerator

This is the very back end of the Wasabi-to-C# compiler from Fog Creek Software. It converts a Wasabi abstract syntax tree (AST) into C# code.

The CLR importer, lexer, parser, interpreter, type checker, language runtime, JavaScript generator, and other components of Wasabi are missing.

It is intended to be used as an example for how to write a C# generator using Microsoft Roslyn.

Build the solution in Visual Studio, then run .\Example\bin\Debug\Example.exe from the root of the repository.

A very tiny program will be generated in was_out.