Trait cluproccmdline::Cmdline [] [src]

pub trait Cmdline: AsRef<[u8]> + Hash + Debug + Clone + Eq + PartialEq + PartialOrd {
    fn iter<'i>(&'i mut self) -> CmdlineIter<'i>;
fn iter_one<'i>(&'i mut self) -> CmdlineOneIter<'i>;
fn iter_two<'i>(&'i mut self) -> CmdlineTwoIter<'i>; fn cmdline_hash(&self) -> u64 { ... } }

Main functions of Cmdline.

Required Methods

Important traits for CmdlineIter<'i>

use cluproccmdline::Cmdline;

let mut cmdline = cluproccmdline::this_machine().unwrap();
for (name, value) in cmdline.iter() {
    if let Some(name) = name {
        println!(
            "Cmdline_str: {} {}", 
            String::from_utf8(name.to_vec()).unwrap(), 
            String::from_utf8(value.to_vec()).unwrap()
        );
    }
    // OUTPUT: 
    // IF /proc/cmdline = "BOOT_IMAGE=/boot/vmlinuz-linux-zen nmi_watchdog=0"
    // TO -> "Cmdline_str: BOOT_IMAGE /boot/vmlinuz-linux-zen"
    // TO -> "Cmdline_str: nmi_watchdog 0"
}	
use cluproccmdline::Cmdline;

let mut cmdline = cluproccmdline::array_slice(b"test=all rw");
let mut iter = cmdline.iter();

while let Some((Some(name), value)) = iter.next() {
    println!("{} {}", 
        String::from_utf8(name.to_vec()).unwrap(), 
        String::from_utf8(value.to_vec()).unwrap()
    );
    // OUTPUT:
    // rw
}
Important traits for CmdlineOneIter<'i>

use cluproccmdline::Cmdline;

let mut cmdline = cluproccmdline::array_slice(b"test=all rw");
for value in cmdline.iter_one() {
    println!("{}", 
        String::from_utf8(value.to_vec()).unwrap()
    );
    // OUTPUT: 
    // rw
}
use cluproccmdline::Cmdline;

let mut cmdline = cluproccmdline::array_slice(b"test=all rw");
let mut iter = cmdline.iter_one();

while let Some(value) = iter.next() {
    println!("{}", 
        String::from_utf8(value.to_vec()).unwrap()
    );
    // OUTPUT:
    // rw
}
Important traits for CmdlineTwoIter<'i>

use cluproccmdline::Cmdline;

let mut cmdline = cluproccmdline::array_slice(b"test=all rw");
for (value, name) in cmdline.iter_two() {
    println!("{} {}", 
        String::from_utf8(name.to_vec()).unwrap(),
        String::from_utf8(value.to_vec()).unwrap()
    );
    // OUTPUT: 
    // test all
}

Provided Methods

use cluproccmdline::Cmdline;

let mut cmdline = cluproccmdline::array_slice(b"test=all rw");
assert_eq!(cmdline.cmdline_hash(), 1877887864476248772);

Implementors