當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Ruby Method.inspect用法及代碼示例


本文簡要介紹ruby語言中 Method.inspect 的用法。

用法

inspect → string
也別名為:to_s

返回底層方法的人類可讀說明。

"cat".method(:count).inspect   #=> "#<Method: String#count(*)>"
(1..3).method(:map).inspect    #=> "#<Method: Range(Enumerable)#map()>"

在後一種情況下,方法說明包括原始方法的“owner”(Enumerable 模塊,包含在Range 中)。

inspect 還盡可能提供方法參數名稱(調用順序)和源位置。

require 'net/http'
Net::HTTP.method(:get).inspect
#=> "#<Method: Net::HTTP.get(uri_or_host, path=..., port=...) <skip>/lib/ruby/2.7.0/net/http.rb:457>"

參數定義中的... 表示參數是可選的(具有一些默認值)。

對於用 C(語言核心和擴展)定義的方法,無法提取位置和參數名稱,隻能以 *(任意數量的參數)或 _(一些位置參數)的形式提供通用信息。

"cat".method(:count).inspect   #=> "#<Method: String#count(*)>"
"cat".method(:+).inspect       #=> "#<Method: String#+(_)>""

相關用法


注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 Method.inspect。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。