EngineConstructionBenchmark.cs 599 B

123456789101112131415161718192021222324
  1. using BenchmarkDotNet.Attributes;
  2. using Esprima;
  3. namespace Jint.Benchmark
  4. {
  5. [MemoryDiagnoser]
  6. public class EngineConstructionBenchmark
  7. {
  8. private readonly Esprima.Ast.Program _program;
  9. public EngineConstructionBenchmark()
  10. {
  11. var parser = new JavaScriptParser("return [].length + ''.length");
  12. _program = parser.ParseProgram();
  13. }
  14. [Benchmark]
  15. public double BuildEngine()
  16. {
  17. var engine = new Engine();
  18. return engine.Execute(_program).GetCompletionValue().AsNumber();
  19. }
  20. }
  21. }