最近在看一个 gem 时,发现一些从来未见过的语法;列举如下两个,希望社区的高手帮忙解释。
在 rb 文件方法中有<<RUBY ... RUBY,感觉好像注入 ruby 语法,但 API 好像没有找到,类似的还有:<<-FILE ... FILE, <<-MESSAGE... MESSAGE 等,在此请教。
如何知道 generator 生成文件命令的参数所带来的变量,如:table_name, plural_name, class_name 等,如何查找。
碰巧前几天也看到这个
这两种都是 Here Document 的写法,符合 POSIX 标准的系统一般都支持 <<- 特殊的地方是,转换成字符串的时候会吃掉每行开头的 TAB
<<-
TAB
适合这样子的时候
if ... while .... somecommand <<-WORD this is an indented here document WORD done fi
既能保持代码书写时候的美观,又能保证执行的时候没有前面的空格
参考 http://mywiki.wooledge.org/HereDocument
#1 楼 @nevill 谢谢,原来 RUBY 这个名字也是可随意取的