pub trait CpuFreq {
const CPUFREQ_PATH: &'static str;
// Provided methods
fn read_file(fname: &str) -> Result<String, Error> { ... }
fn write_file(fname: &str, data: &str) -> Result<(), Error> { ... }
fn get_ranges(fname: &str) -> Result<Vec<usize>, Error> { ... }
fn get_variable<T>(id: usize, var: &str) -> Result<T, Box<dyn Error>>
where T: FromStr,
T::Err: Error + 'static { ... }
fn set_variable(id: usize, var: &str, data: &str) -> Result<(), Error> { ... }
fn get_variable_all<T>(
var: &str,
) -> Result<HashMap<usize, T>, Box<dyn Error>>
where T: FromStr,
T::Err: Error + 'static { ... }
fn set_variable_all(var: &str, data: &str) -> Result<(), Error> { ... }
}Expand description
Base cpufreq functionality for reading and writing on cpu variables
Required Associated Constants§
const CPUFREQ_PATH: &'static str
Provided Methods§
Sourcefn get_ranges(fname: &str) -> Result<Vec<usize>, Error>
fn get_ranges(fname: &str) -> Result<Vec<usize>, Error>
Read and parse cpufreq ranges, example: 0,4,6-12,18 -> [0,4,6,7,8,9,10,12,18]
§Panics
Panics if values cannot be parsed to usize
Sourcefn get_variable<T>(id: usize, var: &str) -> Result<T, Box<dyn Error>>
fn get_variable<T>(id: usize, var: &str) -> Result<T, Box<dyn Error>>
Read a specific variable and parse to T
Sourcefn set_variable(id: usize, var: &str, data: &str) -> Result<(), Error>
fn set_variable(id: usize, var: &str, data: &str) -> Result<(), Error>
Sets a specific variable
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.