btrd 0.5.3

The btrfs debugger
Documentation
use std::fmt;

use lazy_static::lazy_static;

#[derive(PartialEq, Clone, Copy)]
pub enum Function {
    Key,
    KeyOf,
    Search,
    TypeOf,
    Len,
    Hist,
    Str,
}

impl fmt::Display for Function {
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
        match self {
            Function::Key => write!(f, "key"),
            Function::KeyOf => write!(f, "keyof"),
            Function::Search => write!(f, "search"),
            Function::TypeOf => write!(f, "typeof"),
            Function::Len => write!(f, "len"),
            Function::Hist => write!(f, "hist"),
            Function::Str => write!(f, "str"),
        }
    }
}

lazy_static! {
    pub static ref FUNCTIONS: Vec<Function> = vec![
        Function::Key,
        Function::Search,
        Function::TypeOf,
        Function::KeyOf,
        Function::Len,
        Function::Hist,
        Function::Str,
    ];
}