るりまサーチ

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

別のキーワード

  1. encoding windows_31j
  2. _builtin windows_31j
  3. _builtin cswindows31j
  4. encoding cswindows31j
  5. json j

ライブラリ

クラス

検索結果

<< 1 2 > >>

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

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

...した
Method
オブジェクトを返します。

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

//emlist[][ruby]{
me = -365.method(:abs)
p me #=> #<Method: Integer#...
...abs>
p me.call #=> 365
//}

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

BasicObject#instance_eval(expr, filename = "(eval)", lineno = 1) -> object (9436.0)

オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。

...instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。

メソッド定義の中で instance_eval でメソッドを定義した場合は、囲むメソッドが実行されたときに
初めて instance_eval 内の...
...ec/def#nest_method を参照してください。

BasicObject を継承して作ったクラス内で instance_eval する場合はトップレベルの定数や Kernel モジュールに定義されているメソッドは見えません。
これは、トップレベルの定数が Object 以下...
...に作成されるためです。

@
param expr 評価する文字列です。

@
param filename 文字列を指定します。ファイル filename に文字列 expr が
書かれているかのように実行されます。スタックトレースの
表示などを...

BasicObject#instance_eval {|obj| ... } -> object (9336.0)

オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。

...instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。

メソッド定義の中で instance_eval でメソッドを定義した場合は、囲むメソッドが実行されたときに
初めて instance_eval 内の...
...ec/def#nest_method を参照してください。

BasicObject を継承して作ったクラス内で instance_eval する場合はトップレベルの定数や Kernel モジュールに定義されているメソッドは見えません。
これは、トップレベルの定数が Object 以下...
...に作成されるためです。

@
param expr 評価する文字列です。

@
param filename 文字列を指定します。ファイル filename に文字列 expr が
書かれているかのように実行されます。スタックトレースの
表示などを...

Object#singleton_method(name) -> Method (9315.0)

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

...化した Method オブ
ジェクトを返します。

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

//emlist[][ruby]{
class Demo
def initialize(n)
@
iv = n
e...
...lo, @iv = #{@iv}"
end
end

k = Demo.new(99)
def k.hi
"Hi, @iv = #{@iv}"
end
m = k.singleton_method(:hi) # => #<Method: #<Demo:0xf8b0c3c4 @iv=99>.hi>
m.call #=> "Hi, @iv = 99"
m = k.singleton_method(:hello) # => NameError
//}

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

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

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

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

通常のメソッドの未定義に対するフックには
Module#method_undefined を使います。

@
param name 未定義にされたメソッド名...
...][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.instance_eval {undef bar}

#=> singleton method "foo" was undefined
# singleton method...
..."bar" was undefined
//}

@
see Module#method_undefined,BasicObject#singleton_method_added,BasicObject#singleton_method_removed , d:spec/def#undef...

絞り込み条件を変える

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

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

...い場合は
Object#public_send を使う方が良いでしょう。

@
param name 文字列かSymbol で指定するメソッド名です。
@
param args 呼び出すメソッドに渡す引数です。

//emlist[][ruby]{
p -365.send(:abs) #=> 365
p "ruby".send(:sub,/./,"R") #=> "Ruby"


class Foo...
...ないことに注意
method
s = {1 => :foo,
2 => :bar,
3 => :baz}

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

@
see Object#public_send, BasicObject#__send__, Object#method, Kernel.#eval, Proc, Method...

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

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

...い場合は
Object#public_send を使う方が良いでしょう。

@
param name 文字列かSymbol で指定するメソッド名です。
@
param args 呼び出すメソッドに渡す引数です。

//emlist[][ruby]{
p -365.send(:abs) #=> 365
p "ruby".send(:sub,/./,"R") #=> "Ruby"


class Foo...
...ないことに注意
method
s = {1 => :foo,
2 => :bar,
3 => :baz}

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

@
see Object#public_send, BasicObject#__send__, Object#method, Kernel.#eval, Proc, Method...

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

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

...のは
Ruby
の組み込みライブラリや標準ライブラリなど、C言語で実装されているメソッドのみです。
Ruby
で実装されたメソッドで NotImplementedError が発生する場合は true を返します。

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

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

@
param include_all private メソッドと protected メソッドを確認の対象に
含めるかを true か false で指定しま...
...list[][ruby]{
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?(:hello, true)")}
#=> Bonjour
#...

Module#class_exec(*args) {|*vars| ... } -> object (137.0)

与えられたブロックを指定された args を引数としてモジュールのコンテキストで評価します。

...はブロックの外側のスコープになります。

@
param args ブロックに渡す引数を指定します。


//emlist[例][ruby]{
class Thing
end
c = 1

Thing.class_exec{
def hello()
"Hello there!"
end

define_method(:foo) do # ローカル変数がブロックの外側を...
...参照している
c
end
}

t = Thing.new
p t.hello() #=> "Hello there!"
p t.foo() #=> 1
//}

@
see Module#module_eval, Module#class_eval...
<< 1 2 > >>