Transcoded from Kirill Osenkov http://code.msdn.microsoft.com/Roslyn-Code-Quoter-f724259e
Update ReferencedAssemblies.ps1 to point to where you have the Roslyn CTP installed.
.\quoting.ps1 "var x = 1;"
Source : var x = 1;
Evaluated : var x = 1;
GeneratedCode : Syntax.CompilationUnit()
.WithMembers(
Syntax.List<MemberDeclarationSyntax>(
Syntax.FieldDeclaration(
Syntax.VariableDeclaration(
Syntax.IdentifierName(
Syntax.Identifier(
@"var",
Syntax.TriviaList(
Syntax.Space))))
.WithVariables(
Syntax.SeparatedList<VariableDeclaratorSyntax>(
Syntax.VariableDeclarator(
Syntax.Identifier(
@"x",
Syntax.TriviaList(
Syntax.Space)))
.WithInitializer(
Syntax.EqualsValueClause(
Syntax.LiteralExpression(
SyntaxKind.NumericLiteralExpression,
Syntax.Literal(
Syntax.TriviaList(),
@"1",
1,
Syntax.TriviaList())))
.WithEqualsToken(
Syntax.Token(
SyntaxKind.EqualsToken,
Syntax.TriviaList(
Syntax.Space)))))))
.WithSemicolonToken(
Syntax.Token(
SyntaxKind.SemicolonToken))))
.WithEndOfFileToken(
Syntax.Token(
SyntaxKind.EndOfFileToken))
AreEqual : True