1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
mod policy;

use std::borrow::Cow;

pub use self::policy::DefaultAppPolicy;
pub use self::policy::DefaultPolicy;

pub trait HelpPolicy<'a, I> {
    fn format(&self, item: &I) -> Option<Cow<'a, str>>;
}

pub trait HelpDisplay
where
    Self: Sized,
{
    fn gen_help<'a, P>(&self, policy: &P) -> Option<Cow<'a, str>>
    where
        Self: 'a,
        P: HelpPolicy<'a, Self>;
}