- Notifications
You must be signed in to change notification settings - Fork2
echosoar/jsi
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
JSI is a JavaScript interpreter written in Rust that supports bytecode similar to quickjs.
use jsi::JSI;letmut jsi =JSI::new();// Run with astlet result = jsi.run(String::from("\ let a = []; let i = 0; outer: while(i < 3) { i ++; let j = 0; while(j < 5) { j ++; if (j == 1 && i == 1) { continue outer } if (j == 4) break if (j == 3 && i == 2) { break outer } a.push(i * j); } } a.join(':')")).unwrap();assert_eq!(result,Value::String(String::from("2:4")));// Run with bytecodelet result2 = jsi.run_with_bytecode(String::from("\ let a = '123'; let b = 'abc'; a + b ")).unwrap();assert_eq!(result,Value::String(String::from("123abc")));
- git submodule
git submodule update --init --recursive
- test262
RUST_MIN_STACK=8388608 cargo test --package jsi --test test262_test -- test_all_262 --exact --nocapture
- Ecma Standard:https://tc39.es/ecma262/multipage/#sec-intro
- Test262:https://github.com/tc39/test262
MIT
byechosoar
About
JSI is a JavaScript interpreter written in Rust that supports bytecode similar to quickjs.
Topics
Resources
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Uh oh!
There was an error while loading.Please reload this page.