1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#[derive(PartialEq, Eq, Debug, Copy, Clone)]
pub(crate) enum Delimiter {
  Brace,
  Bracket,
  Paren,
}

impl Delimiter {
  pub(crate) fn open(self) -> char {
    match self {
      Self::Brace => '{',
      Self::Bracket => '[',
      Self::Paren => '(',
    }
  }

  pub(crate) fn close(self) -> char {
    match self {
      Self::Brace => '}',
      Self::Bracket => ']',
      Self::Paren => ')',
    }
  }
}