1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
use crate::Value;
pub trait JoseHeader: Send + Sync {
// Return claim count.
fn len(&self) -> usize;
/// Return the value for header claim of a specified key.
///
/// # Arguments
///
/// * `key` - a key name of header claim
fn claim(&self, key: &str) -> Option<&Value>;
fn box_clone(&self) -> Box<dyn JoseHeader>;
}
impl Clone for Box<dyn JoseHeader> {
fn clone(&self) -> Self {
self.box_clone()
}
}