現在のメソッド名取得とメソッド名 #{ruby}
現在のメソッド名取得:__method__, __callee__
メソッド名での実行:__send__
前回、前々回と投稿したメソッドはこんな感じにも実装できる。
class String def centerb(width, padding = ' ') justb(__method__, width, padding) end def rjustb(width, padding = ' ') justb(__method__, width, padding) end def ljustb(width, padding = ' ') justb(__method__, width, padding) end private def justb(method_symbol, width, padding) __send__(method_symbol.to_s.chop, width-(bytesize-size), padding) end end