lber_serde/structures/
explicit.rs

1use structure;
2
3use super::{ASNTag, Tag};
4use common::TagClass;
5
6/// Explicitly tagged value.
7// Explicit tags don't implement Default because that just wouldn't make sense.
8#[derive(Clone, Debug, PartialEq)]
9pub struct ExplicitTag {
10    pub id: u64,
11    pub class: TagClass,
12    pub inner: Box<Tag>,
13}
14
15impl ASNTag for ExplicitTag {
16    fn into_structure(self) -> structure::StructureTag {
17        structure::StructureTag {
18            id: self.id,
19            class: self.class,
20            payload: structure::PL::C(vec![self.inner.into_structure()]),
21        }
22    }
23}