在Ruby中,有一个"方法"方法,它创建一个方法对象,然后可以将其视为Proc.如果您想进行元编程,这非常有用:
def foobar(method_as_a_string)
2.method(method_as_a_string).call(2)
end
foobar("+")
=> 4
foobar("-")
=> 0
Run Code Online (Sandbox Code Playgroud)
但是,通常情况下,如果你想进行这样的元编程,你会使用send而不是方法......
def foobar(method_as_a_string)
2.send(method_as_a_string, 2)
end
foobar("+")
=> 4
foobar("-")
=> 0
Run Code Online (Sandbox Code Playgroud)
那么Ruby中的"方法"方法有什么意义呢?
$>ls
awesome_rails_app
$>rails new --javascript=jquery
**Normally, I would treat --javascript=jquery as a command line
option...but since you didn't give me a name for your app, I'm assuming
you actually want me to generate an app named --javascript=jquery.
Here's your new app!**
$>ls
--javascript=jquery
awesome_rails_app
$>
Run Code Online (Sandbox Code Playgroud)
很明显,我希望能够删除这个应用程序......但是......
$>rm -rf --javascript=jquery
rm: illegal option -- j
usage: rm [-f | -i] [-dPRrvW] file ...
unlink file
$>
Run Code Online (Sandbox Code Playgroud)
我现在该怎么办?
GitBook允许content传输到不同的格式,但有一个选项可以下载文件和目录(如文本)?
例如,GitHub code也存储在服务器上,也存储在贡献者的PC上.