mir/
enum.rs

1use crate::{Doc, Function, Ident, Visibility};
2
3pub struct Enum<T> {
4    pub name: Ident,
5    pub doc: Option<Doc>,
6    pub variants: Vec<Variant<T>>,
7    pub vis: Visibility,
8    pub methods: Vec<Function<T>>,
9    pub attributes: Vec<T>,
10}
11
12pub struct Variant<T> {
13    pub ident: Ident,
14    pub doc: Option<Doc>,
15    // in rust, value is like enum { Error = 0 }
16    pub value: Option<T>,
17    pub attributes: Vec<T>,
18}