pub enum Type2 {
Value(Value),
Typename(NameGeneric),
Parethesized(Type),
Map(Group),
Array(Group),
Unwrap(NameGeneric),
ChoiceifyInline(Group),
Choiceify(NameGeneric),
}
Expand description
Type2 is the main representation of a CDDL type.
Note: not all type2 syntax is implemented.
Types starting with &
, #
are not yet supported.
CDDL ABNF grammar:
type2 = value
/ typename [genericarg]
/ "(" S type S ")"
/ "{" S group S "}"
/ "[" S group S "]"
/ "~" S typename [genericarg]
/ "&" S "(" S group S ")"
/ "&" S groupname [genericarg]
/ "#" "6" ["." uint] "(" S type S ")"
/ "#" DIGIT ["." uint]
/ "#"
Variants§
Value(Value)
Typename(NameGeneric)
Parethesized(Type)
Map(Group)
Array(Group)
Unwrap(NameGeneric)
ChoiceifyInline(Group)
Choiceify(NameGeneric)
Trait Implementations§
source§impl PartialEq for Type2
impl PartialEq for Type2
impl StructuralPartialEq for Type2
Auto Trait Implementations§
impl RefUnwindSafe for Type2
impl Send for Type2
impl Sync for Type2
impl Unpin for Type2
impl UnwindSafe for Type2
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more