916件ヒット
[401-500件を表示]
(0.058秒)
別のキーワード
種類
- インスタンスメソッド (745)
- モジュール関数 (87)
- クラス (48)
- 特異メソッド (24)
- オブジェクト (12)
クラス
- Array (10)
- BasicObject (72)
- Enumerator (48)
-
Enumerator
:: Lazy (48) - Method (92)
- Module (144)
- NameError (24)
- NoMethodError (12)
- Object (216)
- Proc (12)
- Regexp (24)
- Thread (12)
- TracePoint (7)
- UnboundMethod (24)
オブジェクト
- main (24)
キーワード
- === (8)
- BasicObject (12)
- Method (12)
- NameError (12)
- NoMethodError (12)
- [] (24)
- args (12)
-
bind
_ call (12) - call (24)
-
class
_ exec (12) -
define
_ method (24) -
define
_ singleton _ method (24) - dig (10)
- dump (24)
- each (48)
-
enum
_ for (48) - eval (24)
- inspect (12)
-
instance
_ eval (24) -
instance
_ method (12) -
instance
_ methods (12) - main (12)
- match (24)
-
method
_ missing (12) - methods (12)
-
module
_ exec (12) - name (12)
- parameters (43)
-
private
_ instance _ methods (12) -
private
_ methods (12) - proc (14)
-
protected
_ instance _ methods (12) -
protected
_ methods (12) - public (48)
-
public
_ instance _ method (12) -
public
_ instance _ methods (12) -
public
_ method (12) -
public
_ methods (12) - receiver (12)
-
require
_ relative (12) -
respond
_ to? (12) -
respond
_ to _ missing? (12) - send (24)
-
singleton
_ method (12) -
singleton
_ method _ added (12) -
singleton
_ method _ removed (12) -
singleton
_ method _ undefined (12) -
singleton
_ methods (12) -
to
_ enum (48) -
to
_ s (24)
検索結果
先頭5件
-
main
. define _ method(name) { . . . } -> Symbol (6151.0) -
インスタンスメソッド name を Object に定義します。
...name を Object に定義します。
ブロックを与えた場合、定義したメソッドの実行時にブロックが
Object インスタンスの上で BasicObject#instance_eval されます。
@param name String または Symbol を指定します。
@param method Proc、Method ある......いは UnboundMethod の
いずれかのインスタンスを指定します。
@return メソッド名を表す Symbol を返します。
@raise TypeError method に同じクラス、サブクラス以外のメソッドを指定し
た場合に発生します。
@......see Module#define_method... -
Module
# instance _ methods(inherited _ too = true) -> [Symbol] (6138.0) -
そのモジュールで定義されている public および protected メソッド名 の一覧を配列で返します。
...@see Object#methods
//emlist[例1][ruby]{
class Foo
private; def private_foo() end
protected; def protected_foo() end
public; def public_foo() end
end
# あるクラスのインスタンスメソッドの一覧を得る
p Foo.instance_methods(false)
p Foo.public_instance_methods(fa......lse)
p Foo.private_instance_methods(false)
p Foo.protected_instance_methods(false)
class Bar < Foo
end
//}
実行結果
[:protected_foo, :public_foo]
[:public_foo]
[:private_foo]
[:protected_foo]
//emlist[例2][ruby]{
class Bar
private; def private_foo() end
protected......Object のインスタンスメソッドは一覧から排除している。
p Bar.instance_methods(true) - Object.instance_methods(true)
p Bar.public_instance_methods(true) - Object.public_instance_methods(true)
p Bar.private_instance_methods(true) - Object.private_instance_methods(t... -
Method (6118.0)
-
Object#method によりオブジェクト化され たメソッドオブジェクトのクラスです。
...Object#method によりオブジェクト化され
たメソッドオブジェクトのクラスです。
メソッドの実体(名前でなく)とレシーバの組を封入します。
Proc オブジェクトと違ってコンテキストを保持しません。
=== Proc との差
Method......は使い捨てに向き、Method は何度も繰り返し生成する
場合に向くと言えます。また内包するコードの大きさという点では
Proc は小規模、Method は大規模コードに向くと言えます。
既存のメソッドを Method オブジェクト化する......。
//emlist[例][ruby]{
class Foo
def foo(arg)
"foo called with arg #{arg}"
end
end
m = Foo.new.method(:foo)
p m # => #<Method: Foo#foo>
p m.call(1) # => "foo called with arg 1"
//}
名前のないメソッド(の代わり)が必要なら Proc を使うと良い。
//em... -
Module
# private _ instance _ methods(inherited _ too = true) -> [Symbol] (6108.0) -
そのモジュールで定義されている private メソッド名 の一覧を配列で返します。
...ます。
@see Object#private_methods, Module#instance_methods
//emlist[例][ruby]{
module Foo
def foo; end
private def bar; end
end
module Bar
include Foo
def baz; end
private def qux; end
end
Bar.private_instance_methods # => [:qux, :bar]
Bar.private_instance_methods(false) # => [:q... -
Module
# protected _ instance _ methods(inherited _ too = true) -> [Symbol] (6108.0) -
そのモジュールで定義されている protected メソッド名 の一覧を配列で返します。
...そのモジュールで定義されている protected メソッド名
の一覧を配列で返します。
@param inherited_too false を指定するとそのモジュールで定義されているメソッドのみ返します。
@see Object#protected_methods, Module#instance_methods... -
Module
# public _ instance _ methods(inherited _ too = true) -> [Symbol] (6108.0) -
そのモジュールで定義されている public メソッド名 の一覧を配列で返します。
...そのモジュールで定義されている public メソッド名
の一覧を配列で返します。
@param inherited_too false を指定するとそのモジュールで定義されているメソッドのみ返します。
@see Object#public_methods, Module#instance_methods... -
BasicObject (6072.0)
-
特殊な用途のために意図的にほとんど何も定義されていないクラスです。 Objectクラスの親にあたります。Ruby 1.9 以降で導入されました。
...定義されていないクラスです。
Objectクラスの親にあたります。Ruby 1.9 以降で導入されました。
=== 性質
BasicObject クラスは Object クラスからほとんどのメソッドを取り除いたクラスです。
Object クラスは様々な便利なメソッ......これに対して、 BasicObject クラスはオブジェクトの同一性を識別したりメソッドを呼んだりする
最低限の機能の他は一切の機能を持っていません。
=== 用途
基本的にはほぼすべてのクラスの親は Object と考えて差し支えあり......し、ある種のクラスを定義する際には Object クラスは持っているメソッドが多すぎる
場合があります。
例えば、 BasicObject#method_missingを利用して Proxy パターンを実
装する場合にはObject クラスに定義済みのメソッドはプロク... -
NoMethodError (6032.0)
-
定義されていないメソッドの呼び出しが行われたときに発生します。
...例:
self.bar
# => -:1: undefined method `bar' for #<Object:0x401a6c40> (NoMethodError)
プライベートなインスタンスメソッドを呼び出そうとした場合にも発生します。
例:
"".puts
# => NoMethodError: private method `puts' called for "":String
メソッド......呼び出しの形式でなければ NameError 例外が発生します。
例:
bar
# => -:1: undefined local variable or method `bar' for #<Object:0x401a6c40> (NameError)... -
BasicObject
# instance _ eval {|obj| . . . } -> object (3122.0) -
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。
.../def#nest_method を参照してください。
BasicObject を継承して作ったクラス内で instance_eval する場合はトップレベルの定数や Kernel モジュールに定義されているメソッドは見えません。
これは、トップレベルの定数が Object 以下に......imeError)
//}
//emlist[例][ruby]{
class Bar < BasicObject
def call1
instance_eval("::ENV.class")
end
def call2
instance_eval("ENV.class")
end
end
bar = Bar.new
bar.call1 # => Object
bar.call2 # raise NameError
//}
@see Module#module_eval, Kernel.#eval, BasicObject#instance_exec...