Quick Usage
Create and configure a LightVM instance. Complete Installation first.
Using TypeScript
For TypeScript projects, configure the constructor or use the chainable configuration methods.
ts
import { LightVM, Capability, TimeBudget } from 'lightvm';
const vm = new LightVM({ caps: [Capability.Observe, Capability.Control] })
.setMaxTicks(1_000_000)
.setTimeBudget(TimeBudget.Cheap);ts
import { LightVM, Capability, TimeBudget } from 'lightvm';
const vm = new LightVM({
caps: [Capability.Observe, Capability.Control],
securityConfig: {
maxTicks: 1_000_000,
timeBudget: TimeBudget.Cheap,
},
});Using Rust
For Rust projects, configure VmConfig before creating the VM.
rust
use lightvm::LightVM;
use lightvm::types::{vmconfig::VmConfig, capability::Capability, time_budget::TimeBudget};
fn main() {
let mut vm = LightVM::new(VmConfig {
caps: vec![Capability::Control, Capability::Observe],
..Default::default()
})
.set_max_ticks(1_000_000)
.set_time_budget(TimeBudget::Cheap);
}rust
use lightvm::LightVM;
use lightvm::types::{
vmconfig::VmConfig,
security_config::SecurityConfig,
capability::Capability,
time_budget::TimeBudget
};
fn main() {
let mut vm = LightVM::new(VmConfig {
caps: vec![Capability::Control, Capability::Observe],
security_config: Some(SecurityConfig {
max_ticks: 1_000_000,
time_budget: TimeBudget::Cheap,
..Default::default()
}),
..Default::default()
});
}Detailed Configuration Reference
For a comprehensive breakdown of each configuration option, parameters, and type details in TypeScript, check out the TypeScript Configuration Reference or Rust Configuration Reference.