从 rubydoc 中查找有关方法的更多信息:Gem::Dependency#pretty_print
Find more about a method from rubydoc: Gem::Dependency#pretty_print
我正在查看 Gem::Dependency#pretty_print 方法的源代码。我不明白 q
是什么参数。
def pretty_print q # :nodoc:
q.group 1, 'Gem::Dependency.new(', ')' do
q.pp name
q.text ','
q.breakable
q.pp requirement
q.text ','
q.breakable
q.pp type
end
end
我的问题是,接下来我该做什么。我在他们的 Github repo 中搜索了 pretty_print
。他们没有任何规格,也没有使用此方法的任何功能。我怎么知道它需要什么作为输入q
?他们已经为其他几个对象定义了这个方法。
背景和更多细节:
我正在编写一个脚本,该脚本读取 Gem 文件并显示每个提到的 Gem 及其描述。每当我浏览任何包含一长串 Gem 的新项目的代码时,很难浏览每个 Gem 的网站并查看 Gem 的功能。
我从 rubydoc 中找到了 Bundler 如何解析 Gem 文件。并遇到了这种方法:Bundler::Dsl#evaluate
def self.evaluate(gemfile, lockfile, unlock)
builder = new
builder.eval_gemfile(gemfile)
builder.to_definition(lockfile, unlock)
end
这里也没有提到应该传递什么作为gemfile, lockfile, unlock
。我在他们的 Git 仓库中搜索了 evaluate
方法。我找到了规范,我了解到我可以将 "Gemfile", nil, true
作为参数传递。
我提到流程是为了让我能得到任何评论并改进。
pretty_print
方法将由 pp
使用。
通过定义 pretty_print
我们可以根据 documentation.
自定义 pp
的输出
我正在查看 Gem::Dependency#pretty_print 方法的源代码。我不明白 q
是什么参数。
def pretty_print q # :nodoc:
q.group 1, 'Gem::Dependency.new(', ')' do
q.pp name
q.text ','
q.breakable
q.pp requirement
q.text ','
q.breakable
q.pp type
end
end
我的问题是,接下来我该做什么。我在他们的 Github repo 中搜索了 pretty_print
。他们没有任何规格,也没有使用此方法的任何功能。我怎么知道它需要什么作为输入q
?他们已经为其他几个对象定义了这个方法。
背景和更多细节:
我正在编写一个脚本,该脚本读取 Gem 文件并显示每个提到的 Gem 及其描述。每当我浏览任何包含一长串 Gem 的新项目的代码时,很难浏览每个 Gem 的网站并查看 Gem 的功能。
我从 rubydoc 中找到了 Bundler 如何解析 Gem 文件。并遇到了这种方法:Bundler::Dsl#evaluate
def self.evaluate(gemfile, lockfile, unlock)
builder = new
builder.eval_gemfile(gemfile)
builder.to_definition(lockfile, unlock)
end
这里也没有提到应该传递什么作为gemfile, lockfile, unlock
。我在他们的 Git 仓库中搜索了 evaluate
方法。我找到了规范,我了解到我可以将 "Gemfile", nil, true
作为参数传递。
我提到流程是为了让我能得到任何评论并改进。
pretty_print
方法将由 pp
使用。
通过定义 pretty_print
我们可以根据 documentation.
pp
的输出