EngineConstructionBenchmark.cs 604 B

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