This crate is probably not what you hoped it was -- in fact, it's probably exactly what you feared. Rather than integrate against VirtualBox's COM interfaces it will call the command line tools and parse their outputs.
Perhaps not surprisingly, this crate originally began as a bash script and slowly morphed into what it is today.
Examples
Terminate a virtual machine named myvm and revert it to a snapshot named mysnap.
use std::time::Duration;
use vboxhelper::*;
let vm = "myvm".parse::<VmId>().unwrap();
controlvm::kill(&vm).unwrap();
let ten_seconds = Duration::new(10, 0);
wait_for_croak(&vm, Some((ten_seconds, TimeoutAction::Error)));
// revert to a snapshot
let snap = "mysnap".parse::<snapshot::SnapshotId>().unwrap();
snapshot::restore(&vm, Some(snap)).unwrap();
VirtualBox Versions
This crate will generally attempt to track the latest version of VirtualBox.