extern crate ljmrs; use ljmrs::{LJMLibrary, LJMLua}; const SCRIPT: &str = include_str!("example.lua"); fn init() -> i32 { #[cfg(feature = "dynlink")] unsafe { LJMLibrary::init(None) }.unwrap(); #[cfg(feature = "staticlink")] unsafe { LJMLibrary::init() }.unwrap(); LJMLibrary::open_jack( ljmrs::DeviceType::ANY, ljmrs::ConnectionType::ANY, "-2".to_string(), ).expect("Could not open DEMO LabJack") } #[cfg(feature = "tokio")] #[tokio::main] async fn main() { let open_call = init(); let module = LJMLua::new(SCRIPT); println!("Setting LUA module of size: {}", module.size()); LJMLibrary::set_module(open_call, module, true).await.unwrap(); println!("Module set!"); } #[cfg(not(feature = "tokio"))] fn main() { let open_call = init(); let module = LJMLua::new(SCRIPT); println!("Setting LUA module of size: {}", module.size()); LJMLibrary::set_module(open_call, module, true).unwrap(); println!("Module set!"); }