るりまサーチ

最速Rubyリファレンスマニュアル検索!
44件ヒット [1-44件を表示] (0.155秒)
トップページ > クエリ:_builtin[x] > ライブラリ:ビルトイン[x] > クエリ:E[x] > クエリ:Array[x] > 種類:モジュール関数[x]

別のキーワード

  1. _builtin new
  2. _builtin inspect
  3. _builtin []
  4. _builtin to_s
  5. _builtin each

モジュール

キーワード

検索結果

Kernel.#Array(arg) -> Array (29245.0)

引数を配列(Array)に変換した結果を返します。

...引数を配列(Array)に変換した結果を返します。

arg.to_ary と arg.to_a をこの順に呼び出して、返ってきた配列を変換結果とします。

arg に to_ary, to_a のいずれのメソッドも定義されていない場合は
一要素の配列 [arg] を返します...
...

@param arg 変換対象のオブジェクトです。
@raise TypeError to_ary, to_a の返り値が配列でなければ発生します

//emlist[例][ruby]{
p Array({:it => 3}) #=> [[:it, 3]]
p Array(nil) #=> []
p Array("fefe") #=> ["fefe"]
//}

@see Object#to_a,Object#to_ary,Array...

ObjectSpace.#define_finalizer(obj) {|id| ...} -> Array (14205.0)

obj が解放されるときに実行されるファイナライザ proc を 登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで はなく追加登録されます。固定値 0 と proc を配列にして返します。

...ックを指定した場合は、そのブロックがファイナライザになります。
obj の回収時にブロックは obj の ID (BasicObject#__id__)を引数とし
て実行されます。
しかし、後述の問題があるのでブロックでファイナライザを登録するのは...
...い方の注意

以下は、define_finalizer の使い方の悪い例です。

//emlist[悪い例][ruby]{
class Foo
def initialize
ObjectSpace.define_finalizer(self) {
puts "foo"
}
e
nd
e
nd
Foo.new
GC.start
//}

これは、渡された proc の self が obj を参照しつ
づけ...
...tempfile は、ファイナライザの使い方の
良い例になっています。これは、クラスのコンテキストで Proc を
生成することで上記の問題を回避しています。

//emlist[例][ruby]{
class Bar
def Bar.callback
proc {
puts "bar"
}
e
nd
def...

ObjectSpace.#define_finalizer(obj, proc) -> Array (14205.0)

obj が解放されるときに実行されるファイナライザ proc を 登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで はなく追加登録されます。固定値 0 と proc を配列にして返します。

...ックを指定した場合は、そのブロックがファイナライザになります。
obj の回収時にブロックは obj の ID (BasicObject#__id__)を引数とし
て実行されます。
しかし、後述の問題があるのでブロックでファイナライザを登録するのは...
...い方の注意

以下は、define_finalizer の使い方の悪い例です。

//emlist[悪い例][ruby]{
class Foo
def initialize
ObjectSpace.define_finalizer(self) {
puts "foo"
}
e
nd
e
nd
Foo.new
GC.start
//}

これは、渡された proc の self が obj を参照しつ
づけ...
...tempfile は、ファイナライザの使い方の
良い例になっています。これは、クラスのコンテキストで Proc を
生成することで上記の問題を回避しています。

//emlist[例][ruby]{
class Bar
def Bar.callback
proc {
puts "bar"
}
e
nd
def...

Kernel.#p(*arg) -> object | Array (11204.0)

引数を人間に読みやすい形に整形して改行と順番に標準出力 $stdout に出力します。主にデバッグに使用します。

...使用します。

引数の inspect メソッドの返り値と改行を順番に出力します。つまり以下のコードと同じです。

//emlist[例][ruby]{
print arg[0].inspect, "\n", arg[1].inspect, "\n" #, ...
//}

整形に用いられるObject#inspectは普通に文字列に変換...
...出力するオブジェクトを任意個指定します。
@raise IOError 標準出力が書き込み用にオープンされていなければ発生します。
@raise Errno::EXXX 出力に失敗した場合に発生します。
@return 指定された引数 arg を返します。複数の引数...
...が指定された場合はそれらを要素とする配列を返します。

//emlist[例][ruby]{
puts "" #=> (空行)
p "" #=> ""

puts 50,"50"
#=> 50
#=> 50
p 50,"50"
#=> 50
#=> "50"
//}

@see Object#inspect,Kernel.#puts,Kernel.#print...