1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
//! Jazz Virtual Machine
//!
//! Jazz is a register-based virtual machine
//!
//! Jazz is still in active develop so it's not recommended to use Jazz for your purposes
//!
//!
//! Example code:
//!```asm
//! LoadInt(0,12) // Load 12 into R(0)
//! LoadInt(1,3)  // Load 13 into R(1)
//! Add(2,1,0)    // Add value from R(1) to R(0) and store result in R(2)
//! Ret(2)        // Return value from R(2)
//! ```
//!
//! Jazz is heavily inspired by [Gravity](https://marcobambini.github.io/gravity/#/) language VM
//!

#![warn(rust_2018_idioms)]
#![feature(test)]

pub mod frame;
pub mod function;
pub mod index;
pub mod jit;
pub mod machine;
pub mod object;
pub mod object_info;
pub mod object_pool;
pub mod opcodes;
pub mod static_root;
pub mod string;
pub mod value;

use time;

pub mod prelude
{
    #[allow(unused_imports)]
    use super::*;
}