microcad_lang/syntax/
visibility.rs1#[derive(Copy, Clone, Default, PartialEq)]
11pub enum Visibility {
12 #[default]
14 Private,
15 Public,
17 Deleted,
19}
20
21impl std::fmt::Display for Visibility {
22 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
23 match self {
24 Visibility::Private => Ok(()),
25 Visibility::Public => write!(f, "pub "),
26 Visibility::Deleted => write!(f, "(deleted) "),
27 }
28 }
29}
30
31impl std::fmt::Debug for Visibility {
32 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
33 match self {
34 Visibility::Private => Ok(()),
35 Visibility::Public => write!(f, "pub "),
36 Visibility::Deleted => write!(f, "❌ "),
37 }
38 }
39}