1

我一直无法找到Ruby 标准发行版中该类的parse!一个非常常用的实例方法的任何文档。OptionParser

已经在 OptionParse 类parse!的文档顶部的示例中看到使用过。但是,我正在寻找特定于此方法的文档,即描述该方法的确切作用的文档。例如,文档应该提供一个线索,说明为什么方法名称以 bang 结尾(可能这个方法从 ARGV 中删除了选项)。它还可能描述我是否应该期望从(解析的选项数量?)返回任何有用的东西。parse!

我已经尝试阅读该类以及该类顶部列出的所有子类的官方文档。我还查阅了相关部分Programming Ruby(“pickaxe book”)。OptionParse

不是在问什么parse!;通过阅读其他 StackOverlow 线程,我对它有一个不错的(如果不完美的话)感觉。我希望提高我理解 Ruby 文档的能力。我更习惯于 Perl/CPAN 文档。当我处理 Ruby 文档时,即使是标准的分发模块,我也感到非常迷茫。就好像有人删除或重新定位了关键信息。有时我遇到一个我认为关键方法的文档所在的位置,然后发现我只能简单地检查所述方法的源代码。我想知道我是否只是不习惯 Ruby 中的信息组织方式。也许这对我来说是一个很好的教训。

4

1 回答 1

1

我的大部分文档都使用Rubydoc.info 。OptParse的文档解释 parse得很清楚,我认为:

在设置环境变量 POSIXLY_CORRECT 时按顺序解析命令行参数 argv,否则在排列模式下解析。

如果您检查该方法的源链接,您会看到它是使用以下方法实现的parse!

def parse(*argv)
  argv = argv[0].dup if argv.size == 1 and Array === argv[0]
  parse!(argv)
end

看着parse!会告诉你更多。

关于丢失或删除的信息:大多数 Ruby 文档是由 RDoc 或 YARD 根据源代码中的内容生成的,因此,丢失信息通常是代码作者的错。

有些人太忙而无法正确记录,要么完全忽略它,要么不知道要记录什么。作为代码的用户,我们可以通过向实现更好文档的源提交更改来提供帮助。当我发现一些令人困惑或错误的地方时,我在不同的项目上做过很多次。

于 2011-08-14T21:00:44.847 回答