lber/structures/
octetstring.rs

1use std::default;
2use structure;
3use universal;
4
5use super::ASNTag;
6use common::TagClass;
7
8/// String of bytes.
9#[derive(Clone, Debug, PartialEq)]
10pub struct OctetString {
11    pub id: u64,
12    pub class: TagClass,
13    pub inner: Vec<u8>,
14}
15
16impl ASNTag for OctetString {
17    fn into_structure(self) -> structure::StructureTag {
18        structure::StructureTag {
19            id: self.id,
20            class: self.class,
21            payload: structure::PL::P(self.inner),
22        }
23    }
24}
25
26impl default::Default for OctetString {
27    fn default() -> Self {
28        OctetString {
29            id: universal::Types::OctetString as u64,
30            class: TagClass::Universal,
31            inner: Vec::new(),
32        }
33    }
34}