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
#![doc(html_root_url = "http://arcnmx.github.io/nvapi-rs/")] pub extern crate nvapi; #[cfg(feature = "serde_derive")] #[macro_use] extern crate serde_derive; mod gpu; pub use gpu::*; pub use nvapi::{ Status, Result, sys, initialize, unload, driver_version, interface_version, error_message }; pub fn allowable_result_fallback<T>(v: nvapi::Result<T>, fallback: T) -> nvapi::Result<T> { match v { Ok(v) => Ok(v), Err(Status::NotSupported) | Err(Status::NoImplementation) | Err(Status::ArgumentExceedMaxSize) => Ok(fallback), Err(e) => Err(e), } } pub fn allowable_result<T>(v: nvapi::Result<T>) -> nvapi::Result<nvapi::Result<T>> { match v { Ok(v) => Ok(Ok(v)), Err(e @ Status::NotSupported) | Err(e @ Status::NoImplementation) => Ok(Err(e)), Err(e) => Err(e), } }