るりまサーチ (Ruby 2.0.0)

最速Rubyリファレンスマニュアル検索!
114件ヒット [1-100件を表示] (0.016秒)
トップページ > バージョン:2.0.0[x] > クラス:Object[x]

ライブラリ

キーワード

検索結果

<< 1 2 > >>

Object#!~(other) -> bool (2.0)

自身が other とマッチしない事を判定します。

...す。

self#=~(obj) を反転した結果と同じ結果を返します。

@param other 判定するオブジェクトを指定します。

@see Object#=~...

Object#<=>(other) -> 0 | nil (2.0)

self === other である場合に 0 を返します。そうでない場合には nil を返します。

...self === other である場合に 0 を返します。そうでない場合には nil を返します。

@see Object#===...

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

オブジェクトと other が等しければ真を返します。

...

デフォルトでは equal? と同じオブジェクト
の同一性判定になっています。

@param other 比較するオブジェクトです。

p("foo" == "bar") #=> false
p("foo" == "foo") #=> true

p(4 == 4) #=> true
p(4 == 4.0) #=> true

@see Object#equal?,Object#eql?...

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

メソッド Object#== の別名です。 case 式で使用されます。このメソッドは case 式での振る舞いを考慮して、 各クラスの性質に合わせて再定義すべきです。

...メソッド Object#== の別名です。
case 式で使用されます。このメソッドは case 式での振る舞いを考慮して、
各クラスの性質に合わせて再定義すべきです。

一般的に所属性のチェックを実現するため適宜再定義されます。

when...
...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#===, Enumerable#grep...

Object#=~(other) -> nil (2.0)

右辺に正規表現オブジェクトを置いた正規表現マッチ obj =~ /RE/ をサポートするためのメソッドです。 常に nil を返します。

右辺に正規表現オブジェクトを置いた正規表現マッチ obj =~ /RE/
をサポートするためのメソッドです。
常に nil を返します。

この定義により、=~ が再定義されたオブジェクトでは正常にマッチを行い、
それ以外のものは nil を返すようになります。


@param other 任意のオブジェクトです。結果に影響しません。

obj = 'regexp'
p(obj =~ /re/) #=> 0

obj = nil
p(obj =~ /re/) #=> nil

@see String#=~

絞り込み条件を変える

Object#__send__(name, *args) -> object (2.0)

オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。

...メソッドを呼び出す
# レシーバは任意(Foo クラスのインスタンスである必要もない)
p Foo.new.send(methods[1]) # => "foo"
p Foo.new.send(methods[2]) # => "bar"
p Foo.new.send(methods[3]) # => "baz"

@see Object#method, Kernel.#eval, Proc, Method...

Object#__send__(name, *args) { .... } -> object (2.0)

オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。

...メソッドを呼び出す
# レシーバは任意(Foo クラスのインスタンスである必要もない)
p Foo.new.send(methods[1]) # => "foo"
p Foo.new.send(methods[2]) # => "bar"
p Foo.new.send(methods[3]) # => "baz"

@see Object#method, Kernel.#eval, Proc, Method...

Object#_dump(limit) -> String (2.0)

Marshal.#dump において出力するオブジェクトがメソッド _dump を定義している場合には、そのメソッドの結果が書き出されます。

...ド _dump
を定義している場合には、そのメソッドの結果が書き出されます。

バージョン1.8.0以降ではObject#marshal_dump, Object#marshal_loadの使用
が推奨されます。 Marshal.dump するオブジェクトが _dump と marshal_dump の両方の
メソッド...
...い場合や拡張ライブラリで定義し
たクラスのインスタンスがインスタンス変数以外に情報を保持する場合に
利用します。(例えば、クラス Time は、_dump/_load を定義して
います)

@see Object#marshal_dump, Object#marshal_load, Class#_load...

Object#class -> Class (2.0)

レシーバのクラスを返します。

...class #=> String
p 999999999999999.class #=> Bignum
p ARGV.class #=> Array
p self.class #=> Object
p Class.class #=> Class
p Kernel.class #=> Module

@see Class#superclass,Object#kind_of?,Object#instance_of?...

Object#clone -> object (2.0)

オブジェクトの複製を作成して返します。

...) #=> true
p(obj_d.tainted?) #=> true
p(obj_d.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false

@see Object#initialize_copy

==== 深いコピーと浅いコピー

clone や dup はオブジェクト自身を複製するだけで、オブジェクト...

絞り込み条件を変える

Object#define_singleton_method(symbol) { ... } -> Symbol (2.0)

self に特異メソッド name を定義します。

self に特異メソッド name を定義します。

@param symbol メソッド名を String または Symbol で指定します。

@param method Proc、Method あるいは UnboundMethod の
いずれかのインスタンスを指定します。

@return メソッド名を表す Symbol を返します。

class A
class << self
def class_name
to_s
end
end
end
A.define_singleton_meth...

Object#define_singleton_method(symbol, method) -> Symbol (2.0)

self に特異メソッド name を定義します。

self に特異メソッド name を定義します。

@param symbol メソッド名を String または Symbol で指定します。

@param method Proc、Method あるいは UnboundMethod の
いずれかのインスタンスを指定します。

@return メソッド名を表す Symbol を返します。

class A
class << self
def class_name
to_s
end
end
end
A.define_singleton_meth...

Object#display(out = $stdout) -> nil (2.0)

オブジェクトを out に出力します。

...ます。

class Object
def display(out = $stdout)
out.write self
nil
end
end

@param out 出力先のIOオブジェクトです。指定しない場合は標準出力に出力されます。
@return nil を返します。

Object
.new.display #=> #<Object:0xbb0210>

@see $s...

Object#dup -> object (2.0)

オブジェクトの複製を作成して返します。

...) #=> true
p(obj_d.tainted?) #=> true
p(obj_d.frozen?) #=> false
p(obj_d.respond_to?(:fuga)) #=> false

@see Object#initialize_copy

==== 深いコピーと浅いコピー

clone や dup はオブジェクト自身を複製するだけで、オブジェクト...

Object#enum_for(method = :each, *args) -> Enumerator (2.0)

Enumerator.new(self, method, *args) を返します。

Enumerator.new(self, method, *args) を返します。

ブロックを指定した場合は Enumerator#size がブロックの評価結果を返
します。ブロックパラメータは引数 args です。


@param method メソッド名の文字列かシンボルです。
@param args 呼び出すメソッドに渡される引数です。

str = "xyz"

enum = str.enum_for(:each_byte)
p(a = enum.map{|b| '%02x' % b }) #=> ["78", "79", "7a"]

# protects ...

絞り込み条件を変える

Object#enum_for(method = :each, *args) {|*args| ... } -> Enumerator (2.0)

Enumerator.new(self, method, *args) を返します。

Enumerator.new(self, method, *args) を返します。

ブロックを指定した場合は Enumerator#size がブロックの評価結果を返
します。ブロックパラメータは引数 args です。


@param method メソッド名の文字列かシンボルです。
@param args 呼び出すメソッドに渡される引数です。

str = "xyz"

enum = str.enum_for(:each_byte)
p(a = enum.map{|b| '%02x' % b }) #=> ["78", "79", "7a"]

# protects ...

Object#eql?(other) -> bool (2.0)

オブジェクトと other が等しければ真を返します。Hash で二つのキー が等しいかどうかを判定するのに使われます。

...時には Object#hash メソッ
ドも再定義しなければなりません。

@param other 比較するオブジェクトです。

p("foo".eql?("bar")) #=> false
p("foo".eql?("foo")) #=> true

p(4.eql?(4)) #=> true
p(4.eql?(4.0)) #=> false

@see Object#hash,Object#equal?,Object#==...

Object#equal?(other) -> bool (2.0)

other が self 自身の時、真を返します。

...Object#object_idが一致する
かどうかを調べます。

@param other 比較するオブジェクトです。

p("foo".equal?("bar")) #=> false
p("foo".equal?("foo")) #=> false

p(4.equal?(4)) #=> true
p(4.equal?(4.0)) #=> false

p(:foo.equal? :foo) #=> true

@see Object#object_id...
...,Object#==,Object#eql?,Symbol...

Object#extend(*modules) -> self (2.0)

引数で指定したモジュールのインスタンスメソッドを self の特異 メソッドとして追加します。

...turn self を返します。

module Foo
def a
'ok Foo'
end
end

module Bar
def b
'ok Bar'
end
end

obj = Object.new
obj.extend Foo, Bar
p obj.a #=> "ok Foo"
p obj.b #=> "ok Bar"

class Klass
include Foo
extend Bar
end

p Klass.new.a...
...きます。
ただしその場合、フック用のメソッド
が Module#extended ではなく Module#included になるという違いがあります。

# obj.extend Foo, Bar とほぼ同じ
class << obj
include Foo, Bar
end

@see Module#extend_object,Module#include,Module#extended...

Object#freeze -> self (2.0)

オブジェクトを凍結(内容の変更を禁止)します。

...=> "bar"

a2 = "foo".freeze
a2.replace("bar")# can't modify frozen string (RuntimeError)

凍結を解除することはできませんが、Object#dup を使えばほぼ同じ内容の凍結されていない
オブジェクトを得ることはできます。

a = [1].freeze
p a.frozen?...
...#=> true

a[0] = "foo"
p a # can't modify frozen array (RuntimeError)

b = a.dup
p b #=> [1]
p b.frozen? #=> false

b[0] = "foo"
p b #=> ["foo"]

@see Object#frozen?,Object#dup,Kernel.#trace_var...

絞り込み条件を変える

Object#frozen? -> bool (2.0)

オブジェクトが凍結(内容の変更を禁止)されているときに真を返します。

...を禁止)されているときに真を返します。

obj = "someone"
p obj.frozen? #=> false
obj.freeze
p obj.frozen? #=> true

@see Object#freeze...

Object#hash -> Fixnum (2.0)

オブジェクトのハッシュ値を返します。Hash クラスでオブジェク トを格納するのに用いられています。

...トのハッシュ値を返します。Hash クラスでオブジェク
トを格納するのに用いられています。

メソッド hash は Object#eql? と組み合わせて Hash クラスで利用されます。その際

A.eql?(B) ならば A.hash == B.hash

の関係を必ず満たして...
...ればいけません。eql? を再定義した時には必ずこちらも合わせ
て再定義してください。

デフォルトでは、Object#object_id と同じ値を返します。
ただし、Fixnum, Symbol, String だけは組込みのハッ
シュ関数が使用されます(これを変...
...Fixnumに収まらない場合は切り捨てられます。

p self.hash #=> 21658870
p 0.hash #=> 1
p 0.0.hash #=> 0
p nil.hash #=> 4

p "ruby".hash #=> -241670986
p "ruby".hash #=> -241670986
p :ruby.hash #=> 103538
p :ruby.hash #=> 103538

@see Object#eql?,BasicObject#__id__...

Object#initialize(*args, &block) -> object (2.0)

ユーザ定義クラスのオブジェクト初期化メソッド。

ユーザ定義クラスのオブジェクト初期化メソッド。

このメソッドは Class#new から新しく生成されたオブ
ジェクトの初期化のために呼び出されます。他の言語のコンストラクタに相当します。
デフォルトの動作ではなにもしません。

initialize には
Class#new に与えられた引数がそのまま渡されます。

サブクラスではこのメソッドを必要に応じて再定義されること
が期待されています。

initialize という名前のメソッドは自動的に private に設定され
ます。

@param args 初期化時の引数です。
@param block 初期化時のブロック引数です。必...

Object#initialize_copy(obj) -> object (2.0)

(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。

...は self を obj の内容で置き換えます。ただ
し、self のインスタンス変数や特異メソッドは変化しません。
Object
#clone, Object#dupの内部で使われています。

initialize_copy は、Ruby インタプリタが知り得ない情報をコピーするた
めに...
...alize_copy でコピーするよう定義しておくことで、dup や clone
を再定義する必要がなくなります。

デフォルトの Object#initialize_copy は、 freeze チェックおよび型のチェックを行い self
を返すだけのメソッドです。

initialize_copy と...
...Error レシーバが freeze されているか、obj のクラスがレシーバ
のクラスと異なる場合に発生します。
@see Object#clone,Object#dup

以下に例として、dup や clone がこのメソッドをどのように利用しているかを示します。

obj.dup は、...

Object#inspect -> String (2.0)

オブジェクトを人間が読める形式に変換した文字列を返します。

オブジェクトを人間が読める形式に変換した文字列を返します。

組み込み関数 Kernel.#p は、このメソッドの結果を使用して
オブジェクトを表示します。

[ 1, 2, 3..4, 'five' ].inspect # => "[1, 2, 3..4, \"five\"]"
Time.new.inspect # => "2008-03-08 19:43:39 +0900"

inspect メソッドをオーバーライドしなかった場合、クラス名とインスタンス
変数の名前、値の組を元にした文字列を返します。

class Foo
end
...

絞り込み条件を変える

Object#instance_of?(klass) -> bool (2.0)

オブジェクトがクラス klass の直接のインスタンスである時真を返します。

...obj.kind_of?(c) も成立します。

@param klass Classかそのサブクラスのインスタンスです。

class C < Object
end
class S < C
end

obj = S.new
p obj.instance_of?(S) # true
p obj.instance_of?(C) # false

@see Object#kind_of?,Object#class...

Object#instance_variable_defined?(var) -> bool (2.0)

インスタンス変数 var が定義されていたら真を返します。

...end
end
fred = Fred.new('cat', 99)
p fred.instance_variable_defined?(:@a) #=> true
p fred.instance_variable_defined?("@b") #=> true
p fred.instance_variable_defined?("@c") #=> false

@see Object#instance_variable_get,Object#instance_variable_set,Object#instance_variables...

Object#instance_variable_get(var) -> object | nil (2.0)

オブジェクトのインスタンス変数の値を取得して返します。

...@foo = 1
end
end

obj = Foo.new
p obj.instance_variable_get("@foo") #=> 1
p obj.instance_variable_get(:@foo) #=> 1
p obj.instance_variable_get(:@bar) #=> nil

@see Object#instance_variable_set,Object#instance_variables,Object#instance_variable_defined?...

Object#instance_variable_set(var, value) -> object (2.0)

オブジェクトのインスタンス変数 var に値 value を設定します。

...return value を返します。

obj = Object.new
p obj.instance_variable_set("@foo", 1) #=> 1
p obj.instance_variable_set(:@foo, 2) #=> 2
p obj.instance_variable_get(:@foo) #=> 2

@see Object#instance_variable_get,Object#instance_variables,Object#instance_variable_defined?...

Object#instance_variables -> [Symbol] (2.0)

オブジェクトのインスタンス変数名をシンボルの配列として返します。

...のインスタンス変数名をシンボルの配列として返します。

obj = Object.new
obj.instance_eval { @foo, @bar = nil }
p obj.instance_variables

#=> [:@foo, :@bar]

@see Object#instance_variable_get, Kernel.#local_variables, Kernel.#global_variables, Module.constants...

絞り込み条件を変える

Object#is_a?(mod) -> bool (2.0)

オブジェクトが指定されたクラス mod かそのサブクラスのインスタンスであるとき真を返します。

...d
class C < Object
include M
end
class S < C
end

obj = S.new
p obj.is_a?(S) # true
p obj.is_a?(C) # true
p obj.is_a?(Object) # true
p obj.is_a?(M) # true
p obj.is_a?(Hash) # false

@see Object#instance_of?,Module#===,Object#class...

Object#kind_of?(mod) -> bool (2.0)

オブジェクトが指定されたクラス mod かそのサブクラスのインスタンスであるとき真を返します。

...d
class C < Object
include M
end
class S < C
end

obj = S.new
p obj.is_a?(S) # true
p obj.is_a?(C) # true
p obj.is_a?(Object) # true
p obj.is_a?(M) # true
p obj.is_a?(Hash) # false

@see Object#instance_of?,Module#===,Object#class...

Object#marshal_dump -> object (2.0)

Marshal.#dump を制御するメソッドです。

...定義されていてもマーシャルできるようになります
(特異メソッドの情報が自動的に dump されるようになるわけではなく、
marshal_dump/marshal_load によりそれを実現する余地があるということです)。

@see Object#marshal_load, Marshal...

Object#marshal_load(obj) -> object (2.0)

Marshal.#load を制御するメソッドです。

...Ruby 1.8.0 から導入されました。
これから書くプログラムでは _dump/_load ではなく
marshal_dump/marshal_load を使うべきです。

@param obj marshal_dump の返り値のコピーです。

@return 返り値は無視されます。

@see Object#marshal_dump, Marshal...

Object#method(name) -> Method (2.0)

オブジェクトのメソッド name をオブジェクト化した Method オブジェクトを返します。

...Symbol またはStringで指定します。
@raise NameError 定義されていないメソッド名を引数として与えると発生します。

me = -365.method(:abs)
p me #=> #<Method: Fixnum#abs>
p me.call #=> 365

@see Module#instance_method, Method, Object#__send__, Kernel.#eval...

絞り込み条件を変える

Object#method_missing(id, *args) (2.0)

@todo

@todo

Object#methods(include_inherited = true) -> [Symbol] (2.0)

そのオブジェクトに対して呼び出せるメソッド名の一覧を返します。 このメソッドは public メソッドおよび protected メソッドの名前を返します。

...ected メソッドの名前を返します。

ただし特別に、引数が偽の時は Object#singleton_methods(false) と同じになっています。


@param include_inherited 引数が偽の時は Object#singleton_methods(false) と同じになります。

#例1:

class Parent
pri...
...して
# いるが、Object のインスタンスメソッドは一覧から排除している。
p obj.methods(true) - Object.instance_methods(true)
p obj.public_methods(true) - Object.public_instance_methods(true)
p obj.private_methods(true) - Object.private_instance_methods...
...(true)
p obj.protected_methods(true) - Object.protected_instance_methods(true)

#実行結果

[:protected_singleton, :public_singleton, :protected_foo, :public_foo, :protected_parent, :public_parent]
[:public_singleton, :public_foo, :public_parent]
[:private_singleton, :private_foo, :...

Object#must_be -> true (2.0)

自身の評価結果が真である場合、検査にパスしたことになります。

自身の評価結果が真である場合、検査にパスしたことになります。

@raise MiniTest::Assertion 自身の評価結果が偽である場合に発生します。

@see MiniTest::Assertions#assert

Object#must_be_close_to(expected, delta = 0.001) -> true (2.0)

自身と期待値の差の絶対値が与えられた絶対誤差以下である場合、検査にパスしたことになります。

自身と期待値の差の絶対値が与えられた絶対誤差以下である場合、検査にパスしたことになります。

@param expected 期待値を指定します。

@param delta 許容する絶対誤差を指定します。

@raise MiniTest::Assertion 与えられた期待値と実際の値の差の絶対値が与えられた差分を越える場合に発生します。

@see MiniTest::Assertions#assert_in_delta

Object#must_be_empty -> true (2.0)

自身が空である場合、検査にパスしたことになります。

自身が空である場合、検査にパスしたことになります。

@raise MiniTest::Assertion 自身が empty? メソッドを持たない場合に発生します。
また、自身が空でない場合にも発生します。

@see MiniTest::Assertions#assert_empty

絞り込み条件を変える

Object#must_be_instance_of(klass) -> true (2.0)

自身が与えられたクラスのインスタンスである場合、検査にパスしたことになります。

自身が与えられたクラスのインスタンスである場合、検査にパスしたことになります。

@param klass 任意のクラスを指定します。

@raise MiniTest::Assertion 自身が与えられたクラスの直接のインスタンスでない場合に発生します。

@see MiniTest::Assertions#assert_instance_of

Object#must_be_kind_of(klass) -> true (2.0)

自身が与えられたクラスまたはそのサブクラスのインスタンス である場合、検査にパスしたことになります。

自身が与えられたクラスまたはそのサブクラスのインスタンス
である場合、検査にパスしたことになります。

@param klass 自身が所属することを期待するクラスを指定します。

@raise MiniTest::Assertion 自身が与えられたクラスまたはそのサブクラスのインスタンスではない場合に発生します。

@see MiniTest::Assertions#assert_kind_of

Object#must_be_nil -> true (2.0)

自身が nil である場合、検査にパスしたことになります。

自身が nil である場合、検査にパスしたことになります。

@raise MiniTest::Assertion 自身が nil でない場合に発生します。

@see MiniTest::Assertions#assert_nil

Object#must_be_same_as(actual) -> true (2.0)

自身と与えられたオブジェクトの Object#object_id が同じ場合、検査にパスしたことになります。

...自身と与えられたオブジェクトの Object#object_id が同じ場合、検査にパスしたことになります。

@param actual 任意のオブジェクトを指定します。

@raise MiniTest::Assertion 自身と与えられたオブジェクトが異なる場合に発生します。...

Object#must_be_within_delta(expected, delta = 0.001) -> true (2.0)

自身と期待値の差の絶対値が与えられた絶対誤差以下である場合、検査にパスしたことになります。

自身と期待値の差の絶対値が与えられた絶対誤差以下である場合、検査にパスしたことになります。

@param expected 期待値を指定します。

@param delta 許容する絶対誤差を指定します。

@raise MiniTest::Assertion 与えられた期待値と実際の値の差の絶対値が与えられた差分を越える場合に発生します。

@see MiniTest::Assertions#assert_in_delta

絞り込み条件を変える

Object#must_be_within_epsilon(actual, epsilon = 0.001) -> true (2.0)

自身と実際の値の相対誤差が許容範囲内である場合、検査にパスしたことになります。

自身と実際の値の相対誤差が許容範囲内である場合、検査にパスしたことになります。

@param actual 実際の値を指定します。

@param epsilon 許容する相対誤差を指定します。

@raise MiniTest::Assertion 検査に失敗した場合に発生します。

Object#must_equal(expected) -> true (2.0)

自身が比較対象のオブジェクトと等しい場合、検査にパスしたことになります。

...しい場合、検査にパスしたことになります。

@param expected 比較対象のオブジェクトを指定します。

@raise MiniTest::Assertion 与えられた期待値と実際の値が等しくない場合に発生します。

@see Object#==, MiniTest::Assertions#assert_equal...

Object#must_include(object) -> true (2.0)

自身に与えられたオブジェクトが含まれている場合、検査にパスしたことになります。

...自身に与えられたオブジェクトが含まれている場合、検査にパスしたことになります。

@param object 任意のオブジェクトを指定します。

@raise MiniTest::Assertion 自身が include? メソッドを持たない場合に発生します。...

Object#must_match(regexp) -> true (2.0)

自身が与えられた正規表現にマッチした場合、検査にパスしたことになります。

自身が与えられた正規表現にマッチした場合、検査にパスしたことになります。

@param regexp 正規表現か文字列を指定します。文字列を指定した場合は文字列そのものにマッチする
正規表現に変換してから使用します。

@raise MiniTest::Assertion 自身が与えられた正規表現にマッチしなかった場合に発生します。

@see MiniTest::Assertions#assert_match

Object#must_raise(*args) -> true (2.0)

自身を評価中に与えられた例外が発生する場合、検査にパスしたことになります。

自身を評価中に与えられた例外が発生する場合、検査にパスしたことになります。

@param args 自身を評価中に発生する可能性のある例外クラスを一つ以上指定します。

@raise MiniTest::Assertion 自身を評価した結果、例外が発生しない場合に発生します。
また、自身を評価中に発生した例外が、与えられた例外
またはそのサブクラスでない場合に発生します。

@see MiniTest::Assertions#assert_raises

絞り込み条件を変える

Object#must_respond_to(method_name) -> true (2.0)

自身が与えられたメソッドを持つ場合、検査にパスしたことになります。

自身が与えられたメソッドを持つ場合、検査にパスしたことになります。

@param method_name メソッド名を指定します。

@raise MiniTest::Assertion 自身が与えられたメソッドを持たない場合に発生します。

@see MiniTest::Assertions#assert_respond_to

Object#must_send -> true (2.0)

@todo

@todo

Object#must_throw(tag) -> true (2.0)

自身を評価中に、与えられたタグが Kernel.#throw された場合、検査にパスしたことになります。

自身を評価中に、与えられたタグが Kernel.#throw された場合、検査にパスしたことになります。

@param tag 自身を評価中に Kernel.#throw されるタグを任意のオブジェクトとして指定します。

@raise MiniTest::Assertion 与えられたタグが Kernel.#throw されなかった場合に発生します。

@see MiniTest::Assertions#assert_throws

Object#nil? -> bool (2.0)

レシーバが nil であれば真を返します。

レシーバが nil であれば真を返します。

p false.nil? #=> false
p nil.nil? #=> true

@see NilClass

Object#object_id -> Integer (2.0)

各オブジェクトに対して一意な整数を返します。あるオブジェクトに対し てどのような整数が割り当てられるかは不定です。

...られるかは不定です。

Rubyでは、(Garbage Collectされていない)アクティブなオブジェクト間で
重複しない整数(object_id)が各オブジェクトにひとつずつ割り当てられています。この
メソッドはその値を返します。

TrueClass, FalseCla...
...必ず同じ object_id になります。

これは、Immutable ならば複数の場所から参照されても`破壊的操作'による問題が発生しないので、
同じ内容のインスタンスを複数生成しないという内部実装が理由です。


p "ruby".object_id #=> 227...
...59500
p "ruby".object_id #=> 22759400

p [].object_id #=> 22759360
p [].object_id #=> 22759340

p :ruby.object_id #=> 103538
p :ruby.object_id #=> 103538

p 11.object_id #=> 23
p 11.object_id #=> 23

p true.object_id #=> 2
p true.object_id #=> 2

@see Object#equal?,Symbol...

絞り込み条件を変える

Object#pretty_inspect -> String (2.0)

self を pp で表示したときの結果を文字列として返します。

self を pp で表示したときの結果を文字列として返します。

Object#pretty_print(pp) -> () (2.0)

PP.pp や Kernel.#pp がオブジェクトの内容を出力するときに 呼ばれるメソッドです。PP オブジェクト pp を引数として呼ばれます。

...

@param pp PP オブジェクトです。

例:

class Array
def pretty_print(q)
q.group(1, '[', ']') {
q.seplist(self) {|v|
q.pp v
}
}
end
end

@see Object#pretty_print_cycle, Object#inspect, PrettyPrint#text, PrettyPrint#group, PrettyPrint#breakable...

Object#pretty_print_cycle(pp) -> () (2.0)

プリティプリント時にオブジェクトの循環参照が検出された場合、 Object#pretty_print の代わりに呼ばれるメソッドです。

...プリティプリント時にオブジェクトの循環参照が検出された場合、
Object
#pretty_print の代わりに呼ばれるメソッドです。

あるクラスの pp の出力をカスタマイズしたい場合は、
このメソッドも再定義する必要があります。

@p...
...aram pp PP オブジェクトです。

例:

class Array
def pretty_print_cycle(q)
q.text(empty? ? '[]' : '[...]')
end
end

@see Object#pretty_print...

Object#pretty_print_inspect -> String (2.0)

Object#pretty_print を使って Object#inspect と同様に オブジェクトを人間が読める形式に変換した文字列を返します。

...
Object
#pretty_print を使って Object#inspect と同様に
オブジェクトを人間が読める形式に変換した文字列を返します。

出力する全てのオブジェクトに Object#pretty_print が定義されている必要があります。
そうでない場合には RuntimeEr...
...ror が発生します。

@raise RuntimeError 出力する全てのオブジェクトに Object#pretty_print が定義されて
いない場合に発生します。...

Object#pretty_print_instance_variables -> [String | Symbol] (2.0)

プリティプリント時に表示すべき自身のインスタンス変数名の配列をソートして返します。 返されたインスタンス変数はプリティプリント時に表示されます。

プリティプリント時に表示すべき自身のインスタンス変数名の配列をソートして返します。
返されたインスタンス変数はプリティプリント時に表示されます。

pp に表示したくないインスタンス変数がある場合にこのメソッドを再定義します。

絞り込み条件を変える

Object#private_methods(include_inherited = true) -> [Symbol] (2.0)

そのオブジェクトが理解できる private メソッド名の一覧を返します。

...が理解できる private メソッド名の一覧を返します。

@param include_inherited 偽となる値を指定すると自身のクラスのスーパークラスで定義されたメソッドを除きます。
@see Module#private_instance_methods,Object#methods,Object#singleton_methods...

Object#protected_methods(include_inherited = true) -> [Symbol] (2.0)

そのオブジェクトが理解できる protected メソッド名の一覧を返します。

...理解できる protected メソッド名の一覧を返します。

@param include_inherited 偽となる値を指定すると自身のクラスのスーパークラスで定義されたメソッドを除きます。
@see Module#protected_instance_methods,Object#methods,Object#singleton_methods...

Object#psych_to_yaml(options = {}) -> String (2.0)

オブジェクトを YAML document に変換します。

オブジェクトを YAML document に変換します。

options でオプションを指定できます。
Psych.dump と同じなので詳しくはそちらを参照してください。

syck に to_yaml メソッドがあるため、
psych_to_yaml が別名として定義されています。将来的に
syck が廃止された場合 psych_to_yaml は廃止
される予定であるため、特別の事情がない限り to_yaml を用いてください。

@param options 出力オプション
@see Psych.dump

Object#public_method(name) -> Method (2.0)

オブジェクトの public メソッド name をオブジェクト化した Method オブジェクトを返します。

...名、 private メソッド名を引数として与えると発生します。

1.public_method(:to_int) #=> #<Method: Fixnum(Integer)#to_int>
1.public_method(:p) # method `p' for class `Fixnum' is private (NameError)

@see Object#method,Object#public_send,Module#public_instance_method...

Object#public_methods(include_inherited = true) -> [Symbol] (2.0)

そのオブジェクトが理解できる public メソッド名の一覧を返します。

...トが理解できる public メソッド名の一覧を返します。

@param include_inherited 偽となる値を指定すると自身のクラスのスーパークラスで定義されたメソッドを除きます。
@see Module#public_instance_methods,Object#methods,Object#singleton_methods...

絞り込み条件を変える

Object#public_send(name, *args) -> object (2.0)

オブジェクトの public メソッド name を args を引数にして呼び出し、メソッ ドの実行結果を返します。

...す。

@raise ArgumentError name を指定しなかった場合に発生します。

@raise NoMethodError protected メソッドや private メソッドに対して実行
した場合に発生します。

1.public_send(:puts, "hello") # => NoMethodError

@see Object#send...

Object#remove_instance_variable(name) -> object (2.0)

オブジェクトからインスタンス変数 name を取り除き、そのインス タンス変数に設定されていた値を返します。

オブジェクトからインスタンス変数 name を取り除き、そのインス
タンス変数に設定されていた値を返します。

@param name 削除するインスタンス変数の名前をシンボルか文字列で指定します。
@raise NameError オブジェクトがインスタンス変数 name を持たない場合に発生します。

class Foo
def foo
@foo = 1
p remove_instance_variable(:@foo) #=> 1
p remove_instance_variable(:@foo) # instance...

Object#respond_to?(name, include_all = false) -> bool (2.0)

オブジェクトがメソッド name を持つとき真を返します。

...されたメソッドで NotImplementedError が発生する場合は true を返します。

メソッドが定義されていない場合は、Object#respond_to_missing? を呼
び出してその結果を返します。

@param name Symbol または文字列で指定するメソッド名です。...

Object#respond_to_missing?(symbol, include_private) -> bool (2.0)

自身が symbol で表されるメソッドに対し BasicObject#method_missing で反応するつもりならば真を返します。

...れるメソッドに対し
BasicObject#method_missing で反応するつもりならば真を返します。

Object
#respond_to? はメソッドが定義されていない場合、
デフォルトでこのメソッドを呼びだし問合せます。

BasicObject#method_missing を override した...
...場合にこのメソッドも
override されるべきです。

false を返します。

@param symbol メソッド名シンボル
@param include_private private method も含めたい場合に true が渡されます

@see Object#respond_to?, BasicObject#method_missing...

Object#send(name, *args) -> object (2.0)

オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。

...メソッドを呼び出す
# レシーバは任意(Foo クラスのインスタンスである必要もない)
p Foo.new.send(methods[1]) # => "foo"
p Foo.new.send(methods[2]) # => "bar"
p Foo.new.send(methods[3]) # => "baz"

@see Object#method, Kernel.#eval, Proc, Method...

絞り込み条件を変える

Object#send(name, *args) { .... } -> object (2.0)

オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。

...メソッドを呼び出す
# レシーバは任意(Foo クラスのインスタンスである必要もない)
p Foo.new.send(methods[1]) # => "foo"
p Foo.new.send(methods[2]) # => "bar"
p Foo.new.send(methods[3]) # => "baz"

@see Object#method, Kernel.#eval, Proc, Method...

Object#singleton_class -> Class (2.0)

レシーバの特異クラスを返します。 まだ特異クラスがなければ、新しく作成します。

...ss,
FalseClass を返します。

@raise TypeError レシーバが Fixnum か Symbol の場合に発生します。

Object
.new.singleton_class #=> #<Class:#<Object:0xb7ce1e24>>
String.singleton_class #=> #<Class:String>
nil.singleton_class #=> NilClass

@see Object#class...

Object#singleton_methods(inherited_too = true) -> [Symbol] (2.0)

そのオブジェクトに対して定義されている特異メソッド名 (public あるいは protected メソッド) の一覧を返します。

...た特異メソッドとは Object#extend によって追加された特異メソッドや、
self がクラスの場合はスーパークラスのクラスメソッド(Classのインスタンスの特異メソッド)などです。

singleton_methods(false) は、Object#methods(false) と同じで...
...のクラスメソッドも含まれるよう true を指定したが、
# Object のクラスメソッドは一覧から排除している。

p obj.singleton_methods(true)
p Foo.singleton_methods(true) - Object.singleton_methods(true)

#実行結果

[:protected_self, :public_self,...
...:protected_bar, :public_bar]
[:protected_class_foo, :public_class_foo, :protected_class_parent, :public_class_parent]

@see Object#methods,Object#extend...

Object#taint -> self (2.0)

オブジェクトの「汚染マーク」をセットします。

...inted? #=> false
eval(some) #=> @&%&(#!

some.taint
p some.tainted? #=> true
eval(some) # Insecure operation - eval (SecurityError)

some.untaint
p some.tainted? #=> false
eval(some) #=> @&%&(#!

p ENV['OS'].tainted? #=> true

@see Object#tainted?,Object#untaint,Object#freeze...

Object#tainted? -> bool (2.0)

オブジェクトの「汚染マーク」がセットされている時真を返します。

...汚染に関してはspec/safelevelを参照してください。

p String.new.tainted? #=> false
p ENV['OS'].tainted? #=> true

@see Object#taint,Object#untaint...

絞り込み条件を変える

Object#tap {|x| ... } -> self (2.0)

self を引数としてブロックを評価し、self を返します。

self を引数としてブロックを評価し、self を返します。

メソッドチェインの途中で直ちに操作結果を表示するために
メソッドチェインに "入り込む" ことが、このメソッドの主目的です。

(1..10) .tap {|x| puts "original: #{x}" }
.to_a .tap {|x| puts "array: #{x}" }
.select {|x| x.even? } .tap {|x| puts "evens: #{x}" }
.map {|...

Object#to_a -> Array (2.0)

オブジェクトを配列に変換した結果を返します。 デフォルトでは定義されていません。

...が、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。
p( {'a'=>1}.to_a ) # [["a", 1]]
p ['array'].to_a # ["array"]
p nil.to_a # []

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

Object#to_ary -> Array (2.0)

オブジェクトの Array への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。

...
デフォルトでは定義されていません。

説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。

このメソッドを定義する...
...われるすべての場面で代置可能であるような、
* 配列そのものとみなせるようなもの
という厳しいものになっています。

class Foo
def to_ary
[3,4]
end
end

it = Foo.new
p([1,2] + it) #=> [1, 2, 3, 4]

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

Object#to_enum(method = :each, *args) -> Enumerator (2.0)

Enumerator.new(self, method, *args) を返します。

Enumerator.new(self, method, *args) を返します。

ブロックを指定した場合は Enumerator#size がブロックの評価結果を返
します。ブロックパラメータは引数 args です。


@param method メソッド名の文字列かシンボルです。
@param args 呼び出すメソッドに渡される引数です。

str = "xyz"

enum = str.enum_for(:each_byte)
p(a = enum.map{|b| '%02x' % b }) #=> ["78", "79", "7a"]

# protects ...

Object#to_enum(method = :each, *args) {|*args| ... } -> Enumerator (2.0)

Enumerator.new(self, method, *args) を返します。

Enumerator.new(self, method, *args) を返します。

ブロックを指定した場合は Enumerator#size がブロックの評価結果を返
します。ブロックパラメータは引数 args です。


@param method メソッド名の文字列かシンボルです。
@param args 呼び出すメソッドに渡される引数です。

str = "xyz"

enum = str.enum_for(:each_byte)
p(a = enum.map{|b| '%02x' % b }) #=> ["78", "79", "7a"]

# protects ...

絞り込み条件を変える

Object#to_hash -> Hash (2.0)

オブジェクトの Hash への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。

...
デフォルトでは定義されていません。

説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。

このメソッドを定義する...

Object#to_int -> Integer (2.0)

オブジェクトの Integer への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。

...
デフォルトでは定義されていません。

説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。

このメソッドを定義する...

Object#to_io -> IO (2.0)

オブジェクトの IO への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。

...
デフォルトでは定義されていません。

説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。

このメソッドを定義する...

Object#to_proc -> Proc (2.0)

オブジェクトの Proc への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。

...
デフォルトでは定義されていません。

説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。

def doing
yield
end...

Object#to_regexp -> Regexp (2.0)

オブジェクトの Regexp への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。

...
デフォルトでは定義されていません。

説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。

このメソッドを定義する...

絞り込み条件を変える

Object#to_s -> String (2.0)

オブジェクトの文字列表現を返します。

...て文字列に変換し
ます。

class Foo
def initialize num
@num = num
end
end
it = Foo.new(40)

puts it #=> #<Foo:0x2b69110>

class Foo
def to_s
"Class:Foo Number:#{@num}"
end
end

puts it #=> Class:Foo Number:40

@see Object#to_str,Kernel.#String...

Object#to_str -> String (2.0)

オブジェクトの String への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。

...
デフォルトでは定義されていません。

説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。

このメソッドを定義する...
...ての場面で代置可能であるような、
* 文字列そのものとみなせるようなもの
という厳しいものになっています。

class Foo
def to_str
'Edition'
end
end

it = Foo.new
p('Second' + it) #=> "SecondEdition"

@see Object#to_s,Kernel.#String...

Object#to_yaml(options = {}) -> String (2.0)

オブジェクトを YAML document に変換します。

オブジェクトを YAML document に変換します。

options でオプションを指定できます。
Psych.dump と同じなので詳しくはそちらを参照してください。

syck に to_yaml メソッドがあるため、
psych_to_yaml が別名として定義されています。将来的に
syck が廃止された場合 psych_to_yaml は廃止
される予定であるため、特別の事情がない限り to_yaml を用いてください。

@param options 出力オプション
@see Psych.dump

Object#trust -> self (2.0)

@todo

...@todo

オブジェクトの「untrustマーク」を取り除きます。

@see Object#untrusted?,Object#untrust...

Object#untaint -> self (2.0)

オブジェクトの「汚染マーク」を取り除きます。

...グラマが責任を負う必要が
あります。

オブジェクトの汚染に関してはspec/safelevelを参照してください。

@raise SecurityError セキュリティレベルが3以上の時にこのメソッドを使用すると発生します。
@see Object#taint,Object#tainted?...

絞り込み条件を変える

Object#untrust -> self (2.0)

@todo

...@todo

オブジェクトの「untrustマーク」をセットします。

@see Object#trust,Object#untrusted?...

Object#untrusted? -> bool (2.0)

@todo

...@todo

オブジェクトの「untrustマーク」がセットされている時真を返します。

@see Object#trust,Object#untrust...

Object.new -> Object (2.0)

Objectクラスのインスタンスを生成して返します。

...
Object
クラスのインスタンスを生成して返します。

some = Object.new
p some #=> #<Object:0x2b696d8>...

Object.yaml_tag(tag) -> () (2.0)

クラスと tag の間を関連付けます。

...end

attr_reader :x
end

# Dumps Ruby object normally
p Psych.dump(Foo.new(3))
# =>
# --- !ruby/object:Foo
# x: 3

# Registers tag with class Foo
Foo.yaml_as("tag:example.com,2013:foo")
# ... and dumps the object of Foo class
Psych.dump(Foo.new(3), STDOUT)
# =>...
...# --- !<tag:example.com,2013:foo>
# x: 3

# Loads the object from the tagged YAML node
p Psych.load(<<EOS)
--- !<tag:example.com,2012:foo>
x: 8
EOS
# => #<Foo:0x0000000130f48 @x=8>...

Object::ARGF -> Object (2.0)

引数 (なければ標準入力) で構成される仮想ファイル (詳細は ARGF、ARGF.class を参照)。

引数 (なければ標準入力) で構成される仮想ファイル
(詳細は ARGF、ARGF.class を参照)。

つまり Kernel.#gets は ARGF.class#gets と同じ意味です。
ARGF.class#file で現在読み込み中のファイルオブジェクトが、
ARGF.class#filename で現在読み込み中のファイル名が得られます。

絞り込み条件を変える

Object::ARGV -> Array (2.0)

Ruby スクリプトに与えられた引数を表す配列です。

Ruby スクリプトに与えられた引数を表す配列です。

組み込み変数 $* の別名です。
Ruby 自身に対する引数は取り除かれています。

例:

スクリプト argv.rb の内容が
p ARGV
であったとします。このときシェルから次を実行すると、
$ ruby argv.rb foo bar baz
結果は以下のように出力されます。
["foo", "bar", "baz"]

Object::DATA -> File (2.0)

スクリプトの __END__ プログラムの終り以降をアクセスする File オブジェクト。

スクリプトの __END__
プログラムの終り以降をアクセスする File オブジェクト。

d:spec/program#terminateも参照。

ソースファイルの __END__ 以降は解析・実行の対象にならないので
その部分にプログラムが利用するためのデータを書き込んでおくことができます。
DATA 定数はそのデータ部分にアクセスするための File オブジェクトを保持しています。

__END__ を含まないプログラムにおいては DATA は定義されません。

==== 注意

* DATA.rewind で移動する読みとり位置は __END__ 直後ではなく、
...

Object::ENV -> Object (2.0)

環境変数を表す (疑似) 連想配列 (詳細は ENV を参照)。

環境変数を表す (疑似) 連想配列 (詳細は ENV を参照)。

この連想配列の値を変更すると子プロセスの環境として引き継がれます。

Object::FALSE -> FalseClass (2.0)

非推奨です。代表的な偽の値。false と同じ。

非推奨です。代表的な偽の値。false と同じ。

この定数は過去との互換性のために提供されています。擬似変数 false を使ってください。
Ruby では false と nil が偽として扱われます。
偽でない値(false でも nil でもない値) は全て真とみなされます。

Object::NIL -> NilClass (2.0)

非推奨です。 nil と同じ。

非推奨です。 nil と同じ。

この定数は過去との互換性のために提供されています。擬似変数 nil を使ってください。

Ruby では false と nil が偽として扱われます。
偽でない値(false でも nil でもない値) は全て真とみなされます。

絞り込み条件を変える

<< 1 2 > >>