るりまサーチ

最速Rubyリファレンスマニュアル検索!
168件ヒット [1-100件を表示] (0.095秒)
トップページ > 種類:インスタンスメソッド[x] > クエリ:@[x] > クエリ:j[x] > クラス:BasicObject[x]

別のキーワード

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

ライブラリ

検索結果

<< 1 2 > >>

BasicObject#method_missing(name, *args) -> object (3144.0)

呼びだされたメソッドが定義されていなかった時、Rubyインタプリタがこのメソッド を呼び出します。

...ォルトではこのメソッドは例外 NoMethodError を発生させます。


@
param name 未定義メソッドの名前(シンボル)です。
@
param args 未定義メソッドに渡された引数です。
@
return ユーザー定義の method_missing メソッドの返り値が未定義...
...かのように見えます。

//emlist[例][ruby]{
class Foo
def initialize(data)
@
data = data
end
def method_missing(name, lang)
if name.to_s =~ /\Afind_(\d+)_in\z/
if @data[lang]
p @data[lang][$1.to_i]
else
raise "#{lang} unknown"
end
else...
...メソッドを override する場合は対象のメソッド名に対して
Object#respond_to? が真を返すようにしてください。
そのためには、Object#respond_to_missing? も同様に override する必
要があります。

@
see Object#respond_to?, Object#respond_to_missing?...

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

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

...い。

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

@
param ex...
...文字列です。

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

@
param lineno 整数...
...し替えることができます。

//emlist[例][ruby]{
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 メソッドも呼び出せ...

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

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

...い。

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

@
param ex...
...文字列です。

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

@
param lineno 整数...
...し替えることができます。

//emlist[例][ruby]{
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 メソッドも呼び出せ...

BasicObject#instance_exec(*args) {|*vars| ... } -> object (3126.0)

与えられたブロックをレシーバのコンテキストで実行します。

...できます。

@
param args ブロックパラメータに渡す値です。

//emlist[例][ruby]{
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, BasicObject#instance_eval...

BasicObject#__send__(name, *args) -> object (3120.0)

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

...のまま引き渡します。

@
param name 呼び出すメソッドの名前。 Symbol または文字列で指定します。
@
param args メソッドに渡す任意個の引数

//emlist[例][ruby]{
class Mail
def delete(*args)
"(Mail#delete) - delete " + args.join(',')
end
def send(nam...
...e, *args)
"(Mail#send) - #{name} #{args.join(',')}"
end
end
mail = Mail.new
mail.send :delete, "gentle", "readers" # => "(Mail#send) - delete gentle,readers"
mail.__send__ :delete, "gentle", "readers" # => "(Mail#delete) - delete gentle,readers"
//}

@
see Object#send...

絞り込み条件を変える

BasicObject#__send__(name, *args) { .... } -> object (3120.0)

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

...のまま引き渡します。

@
param name 呼び出すメソッドの名前。 Symbol または文字列で指定します。
@
param args メソッドに渡す任意個の引数

//emlist[例][ruby]{
class Mail
def delete(*args)
"(Mail#delete) - delete " + args.join(',')
end
def send(nam...
...e, *args)
"(Mail#send) - #{name} #{args.join(',')}"
end
end
mail = Mail.new
mail.send :delete, "gentle", "readers" # => "(Mail#send) - delete gentle,readers"
mail.__send__ :delete, "gentle", "readers" # => "(Mail#delete) - delete gentle,readers"
//}

@
see Object#send...

BasicObject#singleton_method_added(name) -> object (3114.0)

特異メソッドが追加された時にインタプリタから呼び出されます。

...ます。

@
param name 追加されたメソッド名が Symbol で渡されます。

//emlist[例][ruby]{
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#m...
...ethod_added,BasicObject#singleton_method_removed,BasicObject#singleton_method_undefined...

BasicObject#singleton_method_removed(name) -> object (3114.0)

特異メソッドが Module#remove_method に より削除された時にインタプリタから呼び出されます。

...emovedを使います。

@
param name 削除されたメソッド名が Symbol で渡されます。

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

obj = Foo.new
def obj.foo
end

class << obj
remove_method :foo
en...
...d

#=> singleton method "foo" was removed
//}

@
see Module#method_removed,BasicObject#singleton_method_added,BasicObject#singleton_method_undefined...

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

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

...ます。

@
param 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_meth...
...od :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...
<< 1 2 > >>