lib_ruby_parser_ast/loc_name/
mod.rs

1mod gen;
2
3#[derive(Debug)]
4pub enum LocName {
5    Begin,
6    End,
7    Expression,
8    Keyword,
9    Name,
10    Assignment,
11    Colon,
12    DoubleColon,
13    Else,
14    HeredocBody,
15    Operator,
16    Selector,
17    Assoc,
18    Question,
19    HeredocEnd,
20}
21
22impl LocName {
23    pub fn new(name: &str) -> Self {
24        match name {
25            "begin" => LocName::Begin,
26            "end" => LocName::End,
27            "expression" => LocName::Expression,
28            "keyword" => LocName::Keyword,
29            "name" => LocName::Name,
30            "assignment" => LocName::Assignment,
31            "colon" => LocName::Colon,
32            "double_colon" => LocName::DoubleColon,
33            "else" => LocName::Else,
34            "heredoc_body" => LocName::HeredocBody,
35            "operator" => LocName::Operator,
36            "selector" => LocName::Selector,
37            "assoc" => LocName::Assoc,
38            "question" => LocName::Question,
39            "heredoc_end" => LocName::HeredocEnd,
40            _ => panic!("unsupported loc name {}", name),
41        }
42    }
43}