Ejemplo n.º 1
0
        private void TestOutput(string input, string expectedOutput)
        {
            var script       = CSharpScript.Create(input);
            var compilation  = script.GetCompilation().SyntaxTrees.FirstOrDefault().GetCompilationUnitRoot();
            var kCompilation = _kTreeBuilder.CreateCompilation(compilation);

            var kSource = _kSourceWriter.GetSourceCode(kCompilation);

            Assert.AreEqual(expectedOutput, kSource);
        }
Ejemplo n.º 2
0
        //        [TestMethod]
        //        public void ForStatementTest()
        //        {
        //            var source =
        //@"for (int i = 0; i < 10; i++) { }";
        //            TestNodes(source);
        //        }

        private void TestNodes(string source)
        {
            var x           = SyntaxKind.AbstractKeyword;
            var script      = CSharpScript.Create(source);
            var compilation = script.GetCompilation().SyntaxTrees.FirstOrDefault().GetCompilationUnitRoot();
            //var globalStatements = compilation.DescendantNodes().OfType<GlobalStatementSyntax>().ToList();
            var nodes        = compilation.DescendantNodes().ToList();
            var kCompilation = _kTreeBuilder.CreateCompilation(compilation);
            var kNodes       = kCompilation.DescendantNodes().ToList();

            Assert.AreEqual(nodes.Count, kNodes.Count);

            for (var i = 0; i < nodes.Count; i++)
            {
                Assert.AreEqual((int)nodes[i].Kind(), (int)kNodes[i].Kind);
            }
        }
Ejemplo n.º 3
0
 private static void Main(string[] args)
 {
     ; var source =
         @"log(""first"")";
     try
     {
         var kGlobalStatement = KSyntaxFactory.GlobalStatement();
         var script           = CSharpScript.Create(source);
         var compilation      = script.GetCompilation().SyntaxTrees.FirstOrDefault().GetCompilationUnitRoot();
         //var globalStatements = compilation.DescendantNodes().OfType<GlobalStatementSyntax>().ToList();
         var kTreeBuilder = new KTreeBuilder();
         var kCompilation = kTreeBuilder.CreateCompilation(compilation);
         var nodes        = compilation.DescendantNodes().ToList();
         var kNodes       = kCompilation.DescendantNodes().ToList();
     }
     catch (Exception ex)
     {
         Console.WriteLine(ex); //temp
     }
 }