別のキーワード
種類
- インスタンスメソッド (125)
- 特異メソッド (3)
ライブラリ
- ビルトイン (122)
-
syck
/ rubytypes (4) -
yaml
/ rubytypes (2)
キーワード
-
_ _ send _ _ (6) -
_ dump (3) - display (3)
-
enum
_ for (3) - extend (3)
- initialize (3)
-
initialize
_ copy (3) - inspect (3)
-
instance
_ eval (6) -
instance
_ exec (3) -
instance
_ of? (3) -
instance
_ variable _ defined? (3) -
instance
_ variable _ get (3) -
instance
_ variable _ set (3) -
instance
_ variables (3) -
is
_ a? (3) -
kind
_ of? (3) -
marshal
_ dump (3) -
method
_ missing (3) - methods (3)
-
remove
_ instance _ variable (3) -
respond
_ to? (3) - send (6)
-
singleton
_ class (2) -
singleton
_ method _ added (3) -
singleton
_ method _ removed (3) -
singleton
_ method _ undefined (3) -
singleton
_ methods (3) - tainted? (3)
-
to
_ ary (3) -
to
_ enum (3) -
to
_ hash (3) -
to
_ int (3) -
to
_ proc (3) -
to
_ regexp (3) -
to
_ s (3) -
to
_ str (3) -
to
_ yaml (3) -
to
_ yaml _ properties (3)
検索結果
先頭5件
-
Object
. new -> Object (18108) -
Objectクラスのインスタンスを生成して返します。
...
Objectクラスのインスタンスを生成して返します。
some = Object.new
p some #=> #<Object:0x2b696d8>... -
Object
# initialize(*args , &block) -> object (25) -
ユーザ定義クラスのオブジェクト初期化メソッド。
...このメソッドは Class#new から新しく生成されたオブ
ジェクトの初期化のために呼び出されます。他の言語のコンストラクタに相当します。
デフォルトの動作ではなにもしません。
initialize には
Class#new に与えられた引数が......me
end
end
class Bar < Foo
def initialize name, pass
puts "initialize Bar"
super name
@pass = pass
end
end
it = Bar.new('myname','0500')
p it
#=> initialize Bar
# initialize Foo
# #<Bar:0x2b68f08 @name="myname", @pass="0500">
@see Class#new... -
Object
# _ _ send _ _ (name , *args) -> object (19) -
オブジェクトのメソッド 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 (19) -
オブジェクトのメソッド 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 (19) -
オブジェクトのメソッド 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 (19) -
オブジェクトのメソッド 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 _ methods(inherited _ too = true) -> [String] (19) -
そのオブジェクトに対して定義されている特異メソッド名 (public あるいは protected メソッド) の一覧を返します。
...、Object#methods(false) と同じです。
@param inherited_too 引数が真のとき、スーパークラスのクラスメソッドも対象になります。これが意味を持つのは
self がクラスオブジェクトであるときだけです。
#例1:
Parent = Class.new......def private_class_parent() end
protected; def protected_class_parent() end
public; def public_class_parent() end
end
Foo = Class.new(Parent)
class <<Foo
private; def private_class_foo() end
protected; def protected_class_foo() end
public; def public_class_fo......module Bar
private; def private_bar() end
protected; def protected_bar() end
public; def public_bar() end
end
obj = Foo.new
class <<obj
include Bar
private; def private_self() end
protected; def protected_self() end
public; def public_self() e... -
Object
# singleton _ methods(inherited _ too = true) -> [Symbol] (19) -
そのオブジェクトに対して定義されている特異メソッド名 (public あるいは protected メソッド) の一覧を返します。
...、Object#methods(false) と同じです。
@param inherited_too 引数が真のとき、スーパークラスのクラスメソッドも対象になります。これが意味を持つのは
self がクラスオブジェクトであるときだけです。
#例1:
Parent = Class.new......def private_class_parent() end
protected; def protected_class_parent() end
public; def public_class_parent() end
end
Foo = Class.new(Parent)
class <<Foo
private; def private_class_foo() end
protected; def protected_class_foo() end
public; def public_class_fo......module Bar
private; def private_bar() end
protected; def protected_bar() end
public; def public_bar() end
end
obj = Foo.new
class <<obj
include Bar
private; def private_self() end
protected; def protected_self() end
public; def public_self() e... -
Object
# enum _ for(method = :each , *args) -> Enumerable :: Enumerator (17) -
Enumerable::Enumerator.new(self, method, *args) を返します。
...Enumerable::Enumerator.new(self, method, *args) を返します。
@param method メソッド名の文字列かシンボルです。
@param args 呼び出すメソッドに渡される引数です。
@raise NameError 存在しないメソッド名を指定すると発生します。
str = "xyz"... -
Object
# enum _ for(method = :each , *args) -> Enumerator (17) -
Enumerator.new(self, method, *args) を返します。
...Enumerator.new(self, method, *args) を返します。
@param method メソッド名の文字列かシンボルです。
@param args 呼び出すメソッドに渡される引数です。
@raise NameError 存在しないメソッド名を指定すると発生します。
str = "xyz"
enum = s... -
Object
# to _ enum(method = :each , *args) -> Enumerable :: Enumerator (17) -
Enumerable::Enumerator.new(self, method, *args) を返します。
...Enumerable::Enumerator.new(self, method, *args) を返します。
@param method メソッド名の文字列かシンボルです。
@param args 呼び出すメソッドに渡される引数です。
@raise NameError 存在しないメソッド名を指定すると発生します。
str = "xyz"... -
Object
# to _ enum(method = :each , *args) -> Enumerator (17) -
Enumerator.new(self, method, *args) を返します。
...Enumerator.new(self, method, *args) を返します。
@param method メソッド名の文字列かシンボルです。
@param args 呼び出すメソッドに渡される引数です。
@raise NameError 存在しないメソッド名を指定すると発生します。
str = "xyz"
enum = s... -
Object
# _ dump(limit) -> String (13) -
Marshal.#dump において出力するオブジェクトがメソッド _dump を定義している場合には、そのメソッドの結果が書き出されます。
...ド _dump
を定義している場合には、そのメソッドの結果が書き出されます。
バージョン1.8.0以降ではObject#marshal_dump, Object#marshal_loadの使用
が推奨されます。 Marshal.dump するオブジェクトが _dump と marshal_dump の両方の
メソッド......oo = arg
end
def _dump(limit)
Marshal.dump(@foo, limit)
end
def self._load(obj)
p obj
Foo.new(Marshal.load(obj))
end
end
foo = Foo.new(['foo', 'bar'])
p foo #=> #<Foo:0xbaf234 @foo=["foo", "bar"]>
dms = Marshal.dump(foo)
p dms......御を行いたい場合や拡張ライブラリで定義し
たクラスのインスタンスがインスタンス変数以外に情報を保持する場合に
利用します。(例えば、クラス Time は、_dump/_load を定義して
います)
@see Object#marshal_dump,Object#marshal_load... -
Object
# extend(*modules) -> self (13) -
引数で指定したモジュールのインスタンスメソッドを self の特異 メソッドとして追加します。
...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 #=> "ok Foo"
p Klass.b #=> "ok Bar"
extend の機能は、「......きます。
ただしその場合、フック用のメソッド
が Module#extended ではなく Module#included になるという違いがあります。
# obj.extend Foo, Bar とほぼ同じ
class << obj
include Foo, Bar
end
@see Module#extend_object,Module#include,Module#extended... -
Object
# initialize _ copy(obj) -> object (13) -
(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。
...は self を obj の内容で置き換えます。ただ
し、self のインスタンス変数や特異メソッドは変化しません。
Object#clone, Object#dupの内部で使われています。
initialize_copy は、Ruby インタプリタが知り得ない情報をコピーするた
めに......alize_copy でコピーするよう定義しておくことで、dup や clone
を再定義する必要がなくなります。
デフォルトの Object#initialize_copy は、 freeze チェックおよび型のチェックを行い self
を返すだけのメソッドです。
initialize_copy と......イ
ザをコピーすることで複製を作ります。 obj.clone は、さらに
特異メソッドのコピーも行います。
obj = Object.new
class <<obj
attr_accessor :foo
def bar
:bar
end
end
def check(obj)
puts "instance variables: #{obj.... -
Object
# respond _ to?(name , include _ private = false) -> bool (13) -
オブジェクトが public メソッド name を持つとき真を返します。 include_private が真のときは private メソッドに対しても真を返します。
...です。
class F
def hello
"Bonjour"
end
end
class D
private
def hello
"Guten Tag"
end
end
list = [F.new,D.new]
list.each{|it| puts it.hello if it.respond_to?(:hello)}
#=> Bonjour
list.each{|it| it.instance_eval("puts hello if it.respond_to?(:hell... -
Object
# to _ proc -> Proc (13) -
オブジェクトの Proc への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。
...すが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。
def doing
yield
end
class Foo
def to_proc
Proc.new{p 'ok'}
end
end
it = Foo.new
doing(&it) #=> "ok"... -
Object
# display(out = $ stdout) -> nil (7) -
オブジェクトを out に出力します。以下のように定義されています。
...す。
class Object
def display(out = $stdout)
out.print self.to_s
nil
end
end
@param out 出力先のIOオブジェクトです。指定しない場合は標準出力に出力されます。
@return nil を返します。
Object.new.display #=> #<Object:0xbb0210>
@see... -
Object
# inspect -> String (7) -
オブジェクトを人間が読める形式に変換した文字列を返します。
...が読める形式に変換した文字列を返します。
組み込み関数 Kernel.#p は、このメソッドの結果を使用して
オブジェクトを表示します。
puts Class.new.inspect #=> #<Class:0xbafd88>
puts Time.now.inspect #=> 2007-10-15 21:01:37 +0900
@see Kernel.#p... -
Object
# instance _ eval {|obj| . . . } -> object (7) -
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。
...す。
例:
class Foo
def initialize data
@key = data
end
private
def do_fuga
p 'secret'
end
end
some = Foo.new 'XXX'
some.instance_eval{p @key} #=> "XXX"
some.instance_eval{do_fuga } #=> "secret" # private メソッドも呼び出せる
some.instanc... -
Object
# instance _ eval(expr , filename = "(eval)" , lineno = 1) -> object (7) -
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。
...す。
例:
class Foo
def initialize data
@key = data
end
private
def do_fuga
p 'secret'
end
end
some = Foo.new 'XXX'
some.instance_eval{p @key} #=> "XXX"
some.instance_eval{do_fuga } #=> "secret" # private メソッドも呼び出せる
some.instanc... -
Object
# instance _ exec(*args) {|*vars| . . . } -> object (7) -
与えられたブロックをレシーバのコンテキストで実行します。
...メータに渡す値です。
class KlassWithSecret
def initialize
@secret = 99
end
end
k = KlassWithSecret.new
# 以下で x には 5 が渡される
k.instance_exec(5) {|x| @secret + x } #=> 104
@see Module#class_exec, Module#module_exec, Object#instance_eval... -
Object
# instance _ of?(klass) -> bool (7) -
オブジェクトがクラス 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 (7) -
インスタンス変数 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 (7) -
オブジェクトのインスタンス変数の値を取得して返します。
...@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 (7) -
オブジェクトのインスタンス変数 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 -> [String] (7) -
オブジェクトのインスタンス変数名を文字列の配列として返します。
...トのインスタンス変数名を文字列の配列として返します。
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
# instance _ variables -> [Symbol] (7) -
オブジェクトのインスタンス変数名をシンボルの配列として返します。
...のインスタンス変数名をシンボルの配列として返します。
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,Mo... -
Object
# is _ a?(mod) -> bool (7) -
オブジェクトが指定されたクラス 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 (7) -
オブジェクトが指定されたクラス 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 (7) -
Marshal.#dump を制御するメソッドです。
...g)
@foo = arg
end
def marshal_dump
@foo
end
def marshal_load(obj)
p obj
@foo = obj
end
end
foo = Foo.new(['foo', 'bar'])
p foo #=> #<Foo:0xbaf3b0 @foo=["foo", "bar"]>
dms = Marshal.dump(foo)
p dms #=> "\0......定義されていてもマーシャルできるようになります
(特異メソッドの情報が自動的に dump されるようになるわけではなく、
marshal_dump/marshal_load によりそれを実現する余地があるということです)。
@see Object#marshal_load, Marshal... -
Object
# method _ missing(name , *args) -> object (7) -
呼びだされたメソッドが定義されていなかった時、Rubyインタプリタがこのメソッド を呼び出します。
...ind_(\d+)_in\z/
if @data[lang]
p @data[lang][$1.to_i]
else
raise "#{lang} unknown"
end
else
super
end
end
end
dic = Foo.new({:English => %w(zero one two), :Esperanto => %w(nulo unu du)})
dic.find_2_in :Esperanto #=> "du"... -
Object
# methods(include _ inherited = true) -> [String] (7) -
そのオブジェクトに対して呼び出せるメソッド名の一覧を返します。 このメソッドは public メソッドおよび protected メソッドの名前を返します。
...ected メソッドの名前を返します。
ただし特別に、引数が偽の時は Object#singleton_methods(false) と同じになっています。
@param include_inherited 引数が偽の時は Object#singleton_methods(false) と同じになります。
#例1:
class Parent
pri......o < Parent
private; def private_foo() end
protected; def protected_foo() end
public; def public_foo() end
end
obj = Foo.new
class <<obj
private; def private_singleton() end
protected; def protected_singleton() end
public; def public_singleton()......して
# いるが、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... -
Object
# methods(include _ inherited = true) -> [Symbol] (7) -
そのオブジェクトに対して呼び出せるメソッド名の一覧を返します。 このメソッドは public メソッドおよび protected メソッドの名前を返します。
...ected メソッドの名前を返します。
ただし特別に、引数が偽の時は Object#singleton_methods(false) と同じになっています。
@param include_inherited 引数が偽の時は Object#singleton_methods(false) と同じになります。
#例1:
class Parent
pri......o < Parent
private; def private_foo() end
protected; def protected_foo() end
public; def public_foo() end
end
obj = Foo.new
class <<obj
private; def private_singleton() end
protected; def protected_singleton() end
public; def public_singleton()......して
# いるが、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... -
Object
# remove _ instance _ variable(name) -> object (7) -
オブジェクトからインスタンス変数 name を取り除き、そのインス タンス変数に設定されていた値を返します。
...合に発生します。
class Foo
def foo
@foo = 1
p remove_instance_variable(:@foo) #=> 1
p remove_instance_variable(:@foo) # instance variable @foo not defined (NameError)
end
end
Foo.new.foo
@see Module#remove_class_variable,Module#remove_const... -
Object
# singleton _ class -> Class (7) -
レシーバの特異クラスを返します。 まだ特異クラスがなければ、新しく作成します。
...Class,
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 _ method _ added(name) -> object (7) -
特異メソッドが追加された時にインタプリタから呼び出されます。
...class Foo
def singleton_method_added(name)
puts "singleton method \"#{name}\" was added"
end
end
obj = Foo.new
def obj.foo
end
#=> singleton method "foo" was added
@see Module#method_added,Object#singleton_method_removed,Object#singleton_method_undefined... -
Object
# singleton _ method _ removed(name) -> object (7) -
特異メソッドが Module#remove_method に より削除された時にインタプリタから呼び出されます。
...puts "singleton method \"#{name}\" was removed"
end
end
obj = Foo.new
def obj.foo
end
class << obj
remove_method :foo
end
#=> singleton method "foo" was removed
@see Module#method_removed,Object#singleton_method_added,Object#singleton_method_undefined... -
Object
# singleton _ method _ undefined(name) -> object (7) -
特異メソッドが Module#undef_method または undef により未定義にされた時にインタプリタから呼び出されます。
...Foo.new
def obj.foo
end
def obj.bar
end
class << obj
undef_method :foo
end
obj.instance_eval {undef bar}
#=> singleton method "foo" was undefined
# singleton method "bar" was undefined
@see Module#method_undefined,Object#singleton_method_added,Object#si...
