1use super::{
2 AsnType, BitString, GeneralizedTime, InstanceOf, Integer, ObjectIdentifier, OctetString,
3 UniversalString, UtcTime, VisibleString,
4};
5use crate::{Decode, Encode};
6
7#[derive(AsnType, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Decode, Encode)]
9#[rasn(crate_root = "crate")]
10#[rasn(choice)]
11pub enum Open {
12 BitString(BitString),
14 Bool(bool),
17 GeneralizedTime(GeneralizedTime),
19 Integer(Integer),
22 Null,
24 ObjectIdentifier(ObjectIdentifier),
26 OctetString(OctetString),
28 UniversalString(UniversalString),
31 UtcTime(UtcTime),
33 VisibleString(VisibleString),
35 InstanceOf(alloc::boxed::Box<InstanceOf<Open>>),
37}