るりまサーチ

最速Rubyリファレンスマニュアル検索!
85件ヒット [1-85件を表示] (0.074秒)

別のキーワード

  1. fiddle ref
  2. pointer ref
  3. entity ref
  4. rexml/document ref
  5. _builtin _id2ref

ライブラリ

クラス

キーワード

検索結果

ARGF.class#puts(*arg) -> nil (18114.0)

引数と改行を順番に処理対象のファイルに出力します。 引数がなければ改行のみを出力します。

...力します。
引数がなければ改行のみを出力します。

c:ARGF#inplace時にのみ使用できます。
また $stdout への代入の影響を受けません。
それ以外は Kernel.#puts と同じです。

@param arg 出力するオブジェクトを任意個指定します。...

Module#refine(klass) { ... } -> Module (6113.0)

引数 klass で指定したクラスまたはモジュールだけに対して、ブロックで指定した機能を提供で きるモジュールを定義します。定義した機能は Module#refine を使用せずに直 接 klass に対して変更を行う場合と異なり、限られた範囲のみ有効にできます。 そのため、既存の機能を局所的に修正したい場合などに用いる事ができます。

...義した機能は Module#refine を使用せずに直
接 klass に対して変更を行う場合と異なり、限られた範囲のみ有効にできます。
そのため、既存の機能を局所的に修正したい場合などに用いる事ができます。

ref
inements 機能の詳細に...
...ついては以下を参照してください。

* https://magazine.rubyist.net/articles/0041/0041-200Special-refinement.html
* https://docs.ruby-lang.org/en/master/syntax/refinements_rdoc.html

定義した機能は main.using, Module#using を実行した場合のみ
有効になります。

@...
...で指定した機能を持つ無名のモジュールを返します。

//emlist[例][ruby]{
class C
def foo
puts
"C#foo"
end
end

module M
ref
ine C do
def foo
puts
"C#foo in M"
end
end
end

x = C.new
x.foo # => "C#foo"

using M

x = C.new
x.foo # => "C#foo in M"
//}

@se...

Object#===(other) -> bool (41.0)

case 式で使用されるメソッドです。d:spec/control#case も参照してください。

..."youth"
else
"adult"
end

puts
result #=> "child"

def check arg
case arg
when /ruby(?!\s*on\s*rails)/i
"hit! #{arg}"
when String
"Instance of String class. But don't hit."
else
"unknown"
end
end

puts
check([]) #=> unknown
puts
check("mash-up in Ruby on Rails") #=...
...> instance of String class. But not hit...
puts
check("<Ruby's world>") #=> hit! <Ruby's world>
//}

@see Object#==, Range#===, Module#===, Regexp#===, Enumerable#grep...

Date#deconstruct_keys(array_of_names_or_nil) -> Hash (37.0)

パターンマッチに使用する名前と値の Hash を返します。

...3, day: ..7 # deconstruct_keys が使われます
puts
"first Wednesday of the month"
end
#=> "first Wednesday of the month" が出力される

case d
in year: ...2022
puts
"too old"
in month: ..9
puts
"quarter 1-3"
in wday: 1..5, month:
puts
"working day in month #{month}"
end
#=> "working...
...day in month 10" が出力される

# クラスのチェックと組み合わせて利用することもできます
if d in Date(wday: 3, day: ..7)
puts
"first Wednesday of the month"
end
//}

@see d:spec/pattern_matching#matching_non_primitive_objects...

DateTime#deconstruct_keys(array_of_names_or_nil) -> Hash (37.0)

パターンマッチに使用する名前と値の Hash を返します。

...in wday: 1..5, hour: 10..18 # deconstruct_keys が使われます
puts
"Working time"
end
#=> "Working time" が出力される

case dt
in year: ...2022
puts
"too old"
in month: ..9
puts
"quarter 1-3"
in wday: 1..5, month:
puts
"working day in month #{month}"
end
#=> "working day in month 1...
...0" が出力される

# クラスのチェックと組み合わせて利用することもできます
if dt in DateTime(wday: 1..5, hour: 10..18, day: ..7)
puts
"Working time, first week of the month"
end
//}

@see d:spec/pattern_matching#matching_non_primitive_objects...

絞り込み条件を変える

Time#deconstruct_keys(array_of_names_or_nil) -> Hash (37.0)

パターンマッチに使用する名前と値の Hash を返します。

...3, day: ..7 # deconstruct_keys が使われます
puts
"first Wednesday of the month"
end
#=> "first Wednesday of the month" が出力される

case t
in year: ...2022
puts
"too old"
in month: ..9
puts
"quarter 1-3"
in wday: 1..5, month:
puts
"working day in month #{month}"
end
#=> "working...
...day in month 10" が出力される

# クラスのチェックと組み合わせて利用することもできます
if t in Time(wday: 3, day: ..7)
puts
"first Wednesday of the month"
end
//}

@see d:spec/pattern_matching#matching_non_primitive_objects...

Data#deconstruct -> [object] (25.0)

self のメンバの値を配列で返します。

...ce
in n, 'km' # 裏側で #deconstruct を呼ぶ
puts
"It is #{n} kilometers away"
else
puts
"Don't know how to handle it"
end
# "It is 10 kilometers away" が表示される

# 以下のようにも書ける
case distance
in Measure(n, 'km')
puts
"It is #{n} kilometers away"
# ...
end
//}

[...

Data#deconstruct_keys(array_of_names_or_nil) -> Hash (25.0)

self のメンバの名前と値の組を Hash で返します。

...# 裏側で #deconstruct_keys を呼ぶ
puts
"It is #{amount} kilometers away"
else
puts
"Don't know how to handle it"
end
# "It is 10 kilometers away" が表示される

# 以下のようにも書ける
case distance
in Measure(amount:, unit: 'km')
puts
"It is #{amount} kilometers away"
# .....

Module#alias_method(new, original) -> Symbol (25.0)

メソッドの別名を定義します。

...メソッドの別名を定義します。

//emlist[例][ruby]{
module Kernel
alias_method :hoge, :puts # => :hoge
alias_method "foo", :puts # => :foo
end
//}

alias との違いは以下の通りです。

* メソッド名は String または Symbol で指定します
* グローバル...
...ます。

@param original 元のメソッド名。String または Symbol で指定します。

@return 作成したエイリアスのメソッド名を表す Symbol を返します。

@see d:spec/def#alias

//emlist[例][ruby]{
module Kernel
alias_method :foo, :puts
end

foo "bar" # bar
//}...

Range#===(obj) -> bool (25.0)

始端と終端の中に obj があるとき、true を返します。 そうでないとき、false を返します。

...//emlist[例][ruby]{
p (0...50) === 79 #=> false
p (60...80) === 79 #=> true

case 79
when 0...60 then puts "low"
when 60...80 then puts "medium" # => medium
when 80..100 then puts "high"
end
//}

2.5 以前は、単純に Range#include? メソッドを内部で呼んでいました。...

絞り込み条件を変える

CSV::Row#deconstruct -> [object] (19.0)

パターンマッチに使用する行の値の配列を返します。

...emlist[例][ruby]{
require "csv"
row = CSV::Row.new(["header1", "header2", "header3"], [1, 2, 3])
case row
in [2.., 2.., 2..]
puts
"all 2 or more"
in [...2, 2.., 2..]
puts
"first column is less than 2, and rest columns are 2 or more"
end
#=> "first column is less than 2, and rest columns are 2 o...

CSV::Row#deconstruct_keys(keys) -> Hash (19.0)

パターンマッチに使用するヘッダの名前と値の Hash を返します。

...SV::Row.new([:header1, :header2, :header3], [1, 2, 3])
case row
in { header1: 2.., header2: 2.., header3: 2.. }
puts
"all 2 or more"
in { header1: ...2, header2: 2.., header3: 2.. }
puts
"first column is less than 2, and rest columns are 2 or more"
end
#=> "first column is less than 2, and rest...

Module#alias_method(new, original) -> self (19.0)

メソッドの別名を定義します。

...メソッドの別名を定義します。

//emlist[例][ruby]{
module Kernel
alias_method :hoge, :puts # => Kernel
end
//}

alias との違いは以下の通りです。

* メソッド名は String または Symbol で指定します
* グローバル変数の別名をつけることはで...
...いメソッド名。String または Symbol で指定します。

@param original 元のメソッド名。String または Symbol で指定します。

@return self を返します。

@see d:spec/def#alias

//emlist[例][ruby]{
module Kernel
alias_method :foo, :puts
end

foo "bar" # bar
//}...

BasicObject#singleton_method_undefined(name) -> object (13.0)

特異メソッドが Module#undef_method または undef により未定義にされた時にインタプリタから呼び出されます。

...m name 未定義にされたメソッド名が Symbol で渡されます。

//emlist[例][ruby]{
class Foo
def singleton_method_undefined(name)
puts
"singleton method \"#{name}\" was undefined"
end
end

obj = Foo.new
def obj.foo
end
def obj.bar
end

class << obj
undef_method :foo
end
obj....