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}