Javascript Interpreter for C# (no dependencies)
#scripting #script-engine

Sebastien Ros d0d5c7cc6f Implementing primitive value assignment 11 anos atrás
.nuget 9b18dabfed Adding missing nuget.exe 11 anos atrás
Jint d0d5c7cc6f Implementing primitive value assignment 11 anos atrás
Jint.Benchmark d2a5131df8 Enabling nuget package restore for CI 11 anos atrás
Jint.Repl d0d5c7cc6f Implementing primitive value assignment 11 anos atrás
Jint.Tests d0d5c7cc6f Implementing primitive value assignment 11 anos atrás
Jint.Tests.Ecma 47fc16c416 Merge pull request #5 from fredericaltorres/master 11 anos atrás
Jint.Tests.Scaffolding b6d60818da Adding Ecma 262 tests 12 anos atrás
.gitignore 2dab8046d6 Scaffolding project vs. hand written classes 12 anos atrás
CREDITS.txt f53137698a Adding license information 11 anos atrás
Jint.sln d2a5131df8 Enabling nuget package restore for CI 11 anos atrás
LICENSE.txt f53137698a Adding license information 11 anos atrás
README.md 38fddd13ca Adding status badge 11 anos atrás

README.md

Jint

Jint is a Javascript interpreter for .NET. Jint doesn't compile Javascript to .NET bytecode and in this sense might be best suited for projects requiring to run relatively small scripts faster, or which need to run on different platforms.

Build status

Objectives

Example

script= @"
  function hello() { 
    log("Hello World");
  };
";

var engine = new Engine(cfg => cfg
    .WithDelegate("log", new Action<object>(Console.WriteLine))
);

engine.Execute("hello()");

You can also check the actual implemented test suite for more samples.

Roadmap

Status:

Todo:

  • Improve C# interoperability
  • Finish up ECMAScript test suite
    • Regular expression (15.10)
    • Error object (15.11)
    • Object constructor (15.2.3)
    • Object prototype (15.2.4)
    • Function object (15.3)
    • String object (15.5.4 & 15.5.5) work in progress