public void TestBenchmark() { var GeneratorCSharp = new GeneratorCSharp(); var AstNode = ast.Ternary(ast.Unary("-", ast.Binary(ast.Binary(10, "+", 11), "*", 2)), 1, 2); for (int n = 0; n < 20000; n++) { GeneratorCSharp.Reset().GenerateRoot(AstNode); } Assert.AreEqual(GeneratorCSharp.ToString(), "((-((10 + 11) * 2)) ? 1 : 2)"); }
public void TestBenchmark() { var generatorCSharp = new GeneratorCSharp(); var astNode = ast.Ternary(ast.Unary("-", ast.Binary(ast.Binary(10, "+", 11), "*", 2)), 1, 2); for (var n = 0; n < 20000; n++) { generatorCSharp.Reset().GenerateRoot(astNode); } Assert.Equal(generatorCSharp.ToString(), "((-((10 + 11) * 2)) ? 1 : 2)"); }
public void TestMethod2() { var pool = new IlInstanceHolderPool(typeof(int), 16); var item = pool.Alloc(); var astNode = ast.Statements( ast.Assign(ast.StaticFieldAccess(item.FieldInfo), ast.Argument <int>(0, "Value")), ast.Return() ); _testOutputHelper.WriteLine(GeneratorCSharp.GenerateString <GeneratorCSharp>(astNode)); var generatorIl = new GeneratorIl(); var itemSet = generatorIl.GenerateDelegate <Action <int> >("ItemSet", astNode); itemSet(10); Assert.Equal(10, item.Value); }
public void TestMethod2() { var Pool = new ILInstanceHolderPool(typeof(int), 16); var Item = Pool.Alloc(); var AstNode = ast.Statements( ast.Assign(ast.StaticFieldAccess(Item.FieldInfo), ast.Argument <int>(0, "Value")), ast.Return() ); Console.WriteLine(GeneratorCSharp.GenerateString <GeneratorCSharp>(AstNode)); var GeneratorIL = new GeneratorIL(); var ItemSet = GeneratorIL.GenerateDelegate <Action <int> >("ItemSet", AstNode); ItemSet(10); Assert.AreEqual(10, Item.Value); }
public void SetUp() { GeneratorCSharp = new GeneratorCSharp(); }
public GeneratorCSharpTest() { GeneratorCSharp = new GeneratorCSharp(); }