Ruby中elif拼写错误的触发警告或编译时错误

我有一个拼写错误(好吧,Python常规),但奇怪的是Ruby没有抱怨它:

> if false; put "NO"; elif true; puts "YE"; end
=> nil

> if false; puts "NO"; elsif true; puts "YE"; end    #proper way
YE

当我意识到这是完美的Ruby语法时,我不得不考虑半分钟. Ruby将其解释为第一个if子句的命令的一部分,elif是一个命令,它不存在,但在编译时不知道.即使打开了警告标志,Ruby也没有发出警告.

有没有办法警告这些问题?我是否必须为我的所有来源提供这样的错别字?我可以以某种方式强制这是编译时错误

(我知道,这是一种动态语言,您应该通过单元测试来检测这些问题,但在编写新代码时仍然很烦人.)

解决方法

在这种特定情况下,您可以选择具有适当语法高亮的编辑器,以直观地检测到不是关键字(如elsif所示).

例如,Kate编辑器甚至为elif和elsif提供了不同的自动缩进.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...