我一直在阅读Rack的源代码,在server.rb我找到了:
$-w = true
它正在为全局变量赋值。文档说:
Options may include:
# * :warn
# turn on warnings ($-w = true)
但是,对于我来说,这个全局变量如何工作仍然有点令人困惑,因为它不符合我理解的语言语法。
还试过这些:
$-w = "hello"
#=> "hello"
$-a = "hello"
#=> NameError: $-a is a read-only variable
$-b = "hello"
#=> "hello"
$-ww = "hello"
#=> SyntaxError: unexpected tIDENTIFIER, expecting end-of-input
$-ww = "hello"
^
答案 0 :(得分:5)
-w
是一个Ruby全局变量。
这来自documentation:
的别名
$-0
$ /。
$-a
如果设置了选项-a,则为真。只读变量。
$-d
$ DEBUG的别名。请参阅上面的$ DEBUG以获得进一步的讨论。的别名
$-F
$;。
$-i
在就地编辑模式下,此变量保存扩展名, 否则无。的别名
$-I
$:。
$-l
如果设置了选项-l,则为True。只读变量。
$-p
如果设置了选项-p,则为真。只读变量。
$-v
$ VERBOSE的别名。请参阅上面的$ VERBOSE进一步讨论。
$-w
$ VERBOSE的别名。请参阅上面的$ VERBOSE进一步讨论。