Metode Run
Setelah menginisialisasi VM dan mengkonfigurasi kapabilitas yang Anda inginkan, Anda dapat memuat bytecode dan memulai proses eksekusi.
Menggunakan TypeScript
Untuk TypeScript, Anda dapat meneruskan array bytecode mentah langsung ke loader. Disarankan untuk menggunakan optimizeBytecode terlebih dahulu untuk memastikan VM menjalankan versi instruksi Anda yang paling efisien.
const raw = [
['push', 5],
['val', 'x'],
['set', 'x'],
];
vm.load(tools.optimizeBytecode(raw)).run();Menggunakan Rust
Dalam Rust, Anda biasanya bekerja dengan string bytecode yang diserialisasi (atau serde_json). Mirip dengan implementasi TypeScript, selalu optimalkan bytecode Anda sebelum memuatnya ke dalam VM untuk mempertahankan kinerja optimal.
let raw = r#"[
["push", 5],
["val", "x"],
["set", "x"]
]"#;
vm.load(tools.optimize_bytecode(raw).clone())
.run(None);let raw = serde_json::json!([
["push", 5],
["val", "x"],
["set", "x"]
]);
vm.load(tools.optimize_bytecode(raw).clone())
.run(None);INFO
Kapabilitas yang Dibutuhkan: Control
TIP
Metode .run() adalah langkah terakhir dalam alur eksekusi. Pastikan semua kapabilitas yang diperlukan telah diberikan selama inisialisasi untuk menghindari pengecualian keamanan saat runtime.