gpt4 book ai didi

ruby - irb中方法的制表符完成,使用哪种方法?

转载 作者:太空宇宙 更新时间:2023-11-03 16:26:49 25 4
gpt4 key购买 nike

在 irb 中进行实验时,我经常调用 Tab 补全来显示目标对象的可用方法列表。

输出这个方法名列表的函数是Object还是BasicObject中定义的函数,还是irb自己实现的函数?

我假设这个列表是调用 public_methods 返回的数组的格式化结果,但是列表似乎有些不同:

1.9.3-p448 :026 > 1.
Display all 115 possibilities? (y or n)
1.divmod 1.inspect
1.numerator 1.respond_to? 1.to_enum
1.__id__ 1.downto 1.instance_eval
1.object_id 1.respond_to_missing? 1.to_f
1.__send__ 1.dup 1.instance_exec
1.odd? 1.round 1.to_i
1.abs 1.enum_for 1.instance_of?

1.9.3-p448 :027 > 1.public_methods.sort
=> [:!, :!=, :!~, :%, :&, :*, :**, :+, :+@, :-, :-@, :/, :<, :<<, :<=, :<=>, :==, :===,
:=~, :>, :>=, :>>, :[], :^, :__id__, :__send__, :abs, :abs2, :angle, :arg,
:as_null_object, :between?, :ceil, :chr, :class, :clone, :coerce, :conj,
:conjugate, :define_singleton_method, :denominator, :display, :div

例如,没有任何运算符方法显示在选项卡列表中。那么,标签列表从何而来?

最佳答案

IRb 中的完成由 irb/completion 标准库提供,遗憾的是没有记录。您可以在此处找到您感兴趣的案例的来源:https://GitHub.Com/Ruby/Ruby/blob/trunk/lib/irb/completion.rb#L149-195

关于ruby - irb中方法的制表符完成,使用哪种方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23541631/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com