Ruby错误消息中的单字母前缀是什么意思?

jor*_*npg 6 ruby

Ruby错误消息通常包含带有单字母前缀的词法常量,例如:

语法错误,意外的tIDENTIFIER,期待kEND

你在哪里的t,并k从何而来?还有其他信件吗?可能的关键字主列表?

Mic*_*ohl 8

对于这样的问题,parse.y通常是值得一看的地方.如果内存服务,'t'代表令牌,而'k'代表关键字.

这是表示标识符的不同标记(在其他事物的名称意义上):

%token <id>   tIDENTIFIER tFID tGVAR tIVAR tCONSTANT tCVAR tLABEL
Run Code Online (Sandbox Code Playgroud)

kEND我通过快速搜索找到的唯一定义是k_end:

k_end : keyword_end
        {
          token_info_pop("end");
        }
        ;
Run Code Online (Sandbox Code Playgroud)