別のキーワード
種類
- インスタンスメソッド (40)
- 特異メソッド (2)
ライブラリ
- ビルトイン (42)
キーワード
- attr (1)
-
attr
_ accessor (1) -
attr
_ reader (1) -
attr
_ writer (1) - autoload (1)
- autoload? (1)
-
class
_ eval (1) -
class
_ variable _ defined? (1) -
class
_ variable _ get (1) -
class
_ variable _ set (1) -
const
_ defined? (1) -
const
_ get (1) -
const
_ set (1) -
define
_ method (2) - inspect (1)
-
instance
_ method (1) -
method
_ added (1) -
method
_ defined? (1) -
method
_ removed (1) -
method
_ undefined (1) -
module
_ eval (1) -
module
_ function (1) - new (2)
- private (1)
-
private
_ class _ method (1) -
private
_ constant (1) -
private
_ method _ defined? (1) - protected (1)
-
protected
_ method _ defined? (1) - public (1)
-
public
_ class _ method (1) -
public
_ constant (1) -
public
_ instance _ method (1) -
public
_ method _ defined? (1) -
remove
_ class _ variable (1) -
remove
_ const (1) -
remove
_ method (1) -
to
_ s (1) -
undef
_ method (1)
検索結果
先頭5件
-
Module
# name -> String (15239.0) -
モジュールやクラスの名前を文字列で返します。
...スに対しては nil を返します。
module A
module B
end
p B.name #=> "A::B"
class C
end
end
p A.name #=> "A"
p A::B.name #=> "A::B"
p A::C.name #=> "A::C"
# 名前のないモジュール / クラス
p Module.new.name #=> nil
p Class.new.name... -
Module
# attr(name , assignable = false) -> nil (255.0) -
インスタンス変数読み取りのためのインスタンスメソッド name を定義します。
インスタンス変数読み取りのためのインスタンスメソッド name を定義します。
このメソッドで定義されるアクセスメソッドの定義は次の通りです。
def name
@name
end
省略可能な第 2 引数 assignable が指定されその値が真である
場合には、属性の書き込み用メソッド name= も同時に定義されます。
その定義は次の通りです。
def name=(val)
@name = val
end
@param name String または Symbol で指定します。
@param assignable true を指定するとイン... -
Module
# attr _ writer(*name) -> nil (253.0) -
インスタンス変数 name への書き込みメソッド (name=) を定義します。
インスタンス変数 name への書き込みメソッド (name=) を定義します。
このメソッドで定義されるメソッドの定義は以下の通りです。
def name=(val)
@name = val
end
@param name String または Symbol を 1 つ以上指定します。 -
Module
# attr _ accessor(*name) -> nil (249.0) -
インスタンス変数 name に対する読み取りメソッドと書き込みメソッドの両方を 定義します。
インスタンス変数 name に対する読み取りメソッドと書き込みメソッドの両方を
定義します。
このメソッドで定義されるメソッドの定義は以下の通りです。
def name
@name
end
def name=(val)
@name = val
end
@param name String または Symbol を 1 つ以上指定します。 -
Module
# attr _ reader(*name) -> nil (237.0) -
インスタンス変数 name の読み取りメソッドを定義します。
インスタンス変数 name の読み取りメソッドを定義します。
このメソッドで定義されるメソッドの定義は以下の通りです。
def name
@name
end
@param name String または Symbol を 1 つ以上指定します。 -
Module
# method _ added(name) -> () (237.0) -
メソッド name が追加された時にインタプリタがこのメソッドを呼び出します。
メソッド name が追加された時にインタプリタがこのメソッドを呼び出します。
特異メソッドの追加に対するフックには
BasicObject#singleton_method_added
を使います。
@param name 追加されたメソッドの名前が Symbol で渡されます。
class Foo
def Foo.method_added(name)
puts "method \"#{name}\" was added"
end
def foo
end
define_method :bar, instance_method(... -
Module
# method _ undefined(name) -> () (237.0) -
このモジュールのインスタンスメソッド name が Module#undef_method によって削除されるか、 undef 文により未定義にされると、インタプリタがこのメソッドを呼び出します。
...このモジュールのインスタンスメソッド name が
Module#undef_method によって削除されるか、
undef 文により未定義にされると、インタプリタがこのメソッドを呼び出します。
特異メソッドの削除をフックするには
BasicObject#singlet... -
Module
# autoload(const _ name , feature) -> nil (231.0) -
定数 const_name を最初に参照した時に feature を Kernel.#require するように設定します。
定数 const_name を最初に参照した時に feature を Kernel.#require するように設定します。
@param const_name String または Symbol で指定します。
なお、const_name には、"::" 演算子を含めることはできません。
つまり、トップレベルの定数しか指定できません。
@param feature Kernel.#require と同様な方法で autoload する対象を指定する。
@see Kernel.#autoload
例:
Date # NameError: uniniti... -
Module
# class _ variable _ get(name) -> object (231.0) -
クラス/モジュールに定義されているクラス変数 name の値を返します。
クラス/モジュールに定義されているクラス変数 name の値を返します。
@param name String または Symbol を指定します。
@raise NameError クラス変数 name が定義されていない場合、発生します。
class Fred
@@foo = 99
end
def Fred.foo
class_variable_get(:@@foo)
end
p Fred.foo #=> 99 -
Module
# const _ get(name , inherit = true) -> object (231.0) -
name で指定される名前の定数の値を取り出します。
...name で指定される名前の定数の値を取り出します。
Module#const_defined? と違って Object を特別扱いすることはありません。
@param name 定数名。String か Symbol で指定します。
完全修飾名を指定しなかった場合はモジュー......で
定義された定数は対象にはなりません。
@raise NameError 定数が定義されていないときに発生します。
module Bar
BAR = 1
end
class Object
include Bar
end
# Object では include されたモジュールに定義された定数を見付け... -
Module
# const _ set(name , value) -> object (231.0) -
モジュールに name で指定された名前の定数を value とい う値として定義し、value を返します。
...されます。
@param name Symbol,String で定数の名前を指定します。
@param value セットしたい値を指定します。
例:
module Foo; end
# Symbolを指定した場合
Foo.const_set(:FOO, 123)
Foo::FOO # => 123
# Stringを指定した場合
Foo.const_set('BAR',... -
Module
# public _ instance _ method(name) -> UnboundMethod (231.0) -
self の public インスタンスメソッド name をオブジェクト化した UnboundMethod を返します。
...ソッド名を引数として与えると発生します。
Kernel.public_instance_method(:object_id) #=> #<UnboundMethod: Kernel#object_id>
Kernel.public_instance_method(:p) # method `p' for module `Kernel' is private (NameError)
@see Module#instance_method,Object#public_method... -
Module
# undef _ method(*name) -> self (231.0) -
このモジュールのインスタンスメソッド name を未定義にします。
...名を String または Symbol で与えられることです。
module M1
def foo
end
def self.moo
undef foo
end
end
M1.instance_methods false #=> ["foo"]
M1.moo
M1.instance_methods false #=> []
module M2
def foo
end
def self.moo
undef_method :fo... -
Module
# define _ method(name) { . . . } -> Symbol (226.0) -
インスタンスメソッド name を定義します。
インスタンスメソッド name を定義します。
ブロックを与えた場合、定義したメソッドの実行時にブロックが
レシーバクラスのインスタンスの上で BasicObject#instance_eval されます。
@param name メソッド名を String または Symbol を指定します。
@param method Proc、Method あるいは UnboundMethod の
いずれかのインスタンスを指定します。
@return メソッド名を表す Symbol を返します。
@raise TypeError method に同じクラス、サブクラス、モジュー... -
Module
# define _ method(name , method) -> Symbol (226.0) -
インスタンスメソッド name を定義します。
インスタンスメソッド name を定義します。
ブロックを与えた場合、定義したメソッドの実行時にブロックが
レシーバクラスのインスタンスの上で BasicObject#instance_eval されます。
@param name メソッド名を String または Symbol を指定します。
@param method Proc、Method あるいは UnboundMethod の
いずれかのインスタンスを指定します。
@return メソッド名を表す Symbol を返します。
@raise TypeError method に同じクラス、サブクラス、モジュー... -
Module
# class _ variable _ defined?(name) -> bool (225.0) -
name で与えられた名前のクラス変数がモジュールに存在する場合 true を 返します。
name で与えられた名前のクラス変数がモジュールに存在する場合 true を
返します。
@param name Symbol か String を指定します。
class Fred
@@foo = 99
end
Fred.class_variable_defined?(:@@foo) #=> true
Fred.class_variable_defined?(:@@bar) #=> false
Fred.class_variable_defined?('@@foo') #=> true
Fred.class_variab... -
Module
# class _ variable _ set(name , val) -> object (225.0) -
クラス/モジュールにクラス変数 name を定義して、その値として val をセットします。val を返します。
クラス/モジュールにクラス変数 name を定義して、その値として
val をセットします。val を返します。
@param name String または Symbol を指定します。
class Fred
@@foo = 99
def foo
@@foo
end
end
def Fred.foo(val)
class_variable_set(:@@foo, val)
end
p Fred.foo(101) # => 101
p Fred.new.foo # => 101 -
Module
# const _ defined?(name , inherit = true) -> bool (225.0) -
モジュールに name で指定される名前の定数が定義されている時真 を返します。
...定義された定数は対象にはなりません。
module Kernel
FOO = 1
end
# Object は include したモジュールの定数に対しても
# true を返す
p Object.const_defined?(:FOO) # => true
module Bar
BAR = 1
end
class Object
include Bar
end... -
Module
# instance _ method(name) -> UnboundMethod (225.0) -
self のインスタンスメソッド name をオブジェクト化した UnboundMethod を返します。
...Symbol または String で指定します。
@raise NameError self に存在しないメソッドを指定した場合に発生します。
@see Module#public_instance_method, Object#method
例:
class Interpreter
def do_a() print "there, "; end
def do_d() print "Hello "; end
def d... -
Module
# method _ defined?(name) -> bool (225.0) -
モジュールにインスタンスメソッド name が定義されており、 かつその可視性が public または protected であるときに true を返します。
...に
true を返します。
@param name Symbol か String を指定します。
@see Module#public_method_defined?, Module#private_method_defined?, Module#protected_method_defined?
//emlist[例][ruby]{
module A
def method1() end
def protected_method1() end
protected :protected_method1
end... -
Module
# private _ class _ method(*name) -> self (225.0) -
name で指定したクラスメソッド (クラスの特異メソッド) の 可視性を private に変更します。
...の特異メソッド) の
可視性を private に変更します。
@param name 0 個以上の String か Symbol を指定します。
例:
module Foo
def self.foo; end
end
Foo.singleton_class.private_method_defined?(:foo) # => false
Foo.private_class_method(:foo) # => Foo... -
Module
# private _ constant(*name) -> self (225.0) -
name で指定した定数の可視性を private に変更します。
...で指定した定数の可視性を private に変更します。
@param name 0 個以上の String か Symbol を指定します。
@raise NameError 存在しない定数を指定した場合に発生します。
@return self を返します。
@see Module#public_constant, Object#untrusted?... -
Module
# private _ method _ defined?(name) -> bool (225.0) -
インスタンスメソッド name がモジュールに定義されており、 しかもその可視性が private であるときに true を返します。 そうでなければ false を返します。
...れば false を返します。
@param name Symbol か String を指定します。
@see Module#method_defined?, Module#public_method_defined?, Module#protected_method_defined?
//emlist[例][ruby]{
module A
def method1() end
end
class B
private
def method2() end
end
class C < B
include... -
Module
# protected _ method _ defined?(name) -> bool (225.0) -
インスタンスメソッド name がモジュールに定義されており、 しかもその可視性が protected であるときに true を返します。 そうでなければ false を返します。
...ければ false を返します。
@param name Symbol か String を指定します。
@see Module#method_defined?, Module#public_method_defined?, Module#private_method_defined?
//emlist[例][ruby]{
module A
def method1() end
end
class B
protected
def method2() end
end
class C < B
inclu... -
Module
# public _ class _ method(*name) -> self (225.0) -
name で指定したクラスメソッド (クラスの特異メソッド) の 可視性を public に変更します。
name で指定したクラスメソッド (クラスの特異メソッド) の
可視性を public に変更します。
@param name 0 個以上の String か Symbol を指定します。
例:
class Foo
def self.foo
"foo"
end
private_class_method :foo
end
Foo.foo # NoMethodError: private method `foo' called for Foo:Class
Foo.public_class_method(:foo) # => Foo
... -
Module
# public _ constant(*name) -> self (225.0) -
name で指定した定数の可視性を public に変更します。
...指定した定数の可視性を public に変更します。
@param name 0 個以上の String か Symbol を指定します。
@raise NameError 存在しない定数を指定した場合に発生します。
@return self を返します。
@see Module#private_constant, Object#untrusted?... -
Module
# public _ method _ defined?(name) -> bool (225.0) -
インスタンスメソッド name がモジュールに定義されており、 しかもその可視性が public であるときに true を返します。 そうでなければ false を返します。
...れば false を返します。
@param name Symbol か String を指定します。
@see Module#method_defined?, Module#private_method_defined?, Module#protected_method_defined?
//emlist[例][ruby]{
module A
def method1() end
end
class B
protected
def method2() end
end
class C < B
inclu... -
Module
# remove _ const(name) -> object (225.0) -
name で指定した定数を取り除き、その定数に設定されていた値を 返します。
...指定した(まだロードしてない)定数を含めて削除する事ができます。
取り除かれた定数は参照できなくなりますが、消える訳ではないので注意して
使用してください。
@see Module#remove_class_variable, Object#remove_instance_variable... -
Module
# remove _ method(*name) -> self (225.0) -
インスタンスメソッド name をモジュールから削除します。
...以上の String か Symbol を指定します。
@raise NameError 指定したメソッドが定義されていない場合に発生します。
class C
def foo
end
remove_method :foo
remove_method :no_such_method # 例外 NameError が発生
end
@see Module#undef_method... -
Module
# method _ removed(name) -> () (221.0) -
メソッドが Module#remove_method により削除 された時にインタプリタがこのメソッドを呼び出します。
...メソッドが Module#remove_method により削除
された時にインタプリタがこのメソッドを呼び出します。
特異メソッドの削除に対するフックには
BasicObject#singleton_method_removed
を使います。
@param name 削除されたメソッド名が Symbol... -
Module
# private(*name) -> self (215.0) -
メソッドを private に設定します。
メソッドを private に設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを関数形式でだけ呼び出せるように(private)設定します。
引数が与えられた時には引数によって指定されたメソッドを private に
設定します。
可視性については d:spec/def#limit を参照して下さい。
@param name String または Symbol を 0 個以上指定します。
@raise NameError 存在しないメソッド名を指定した場合に発生します。
class Foo
def foo1() 1 end... -
Module
# public(*name) -> self (215.0) -
メソッドを public に設定します。
メソッドを public に設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドをどんな形式でも呼び出せるように(public)設定します。
引数が与えられた時には引数によって指定されたメソッドを public に設
定します。
可視性については d:spec/def#limit を参照して下さい。
@param name String または Symbol を 0 個以上指定します。
@raise NameError 存在しないメソッド名を指定した場合に発生します。
def foo() 1 end
p foo ... -
Module
# autoload?(const _ name) -> String | nil (209.0) -
autoload 定数がまだ定義されてない(ロードされていない) ときにそのパス名を返します。 また、ロード済みなら nil を返します。
autoload 定数がまだ定義されてない(ロードされていない) ときにそのパス名を返します。
また、ロード済みなら nil を返します。
@param const_name String または Symbol で指定します。
@see Kernel.#autoload?
例:
autoload :Date, 'date'
autoload?(:Date) # => "date"
Date
autoload?(:Date) # => nil
autoload?(:Foo) # => nil -
Module
# module _ function(*name) -> self (209.0) -
メソッドをモジュール関数にします。
...すべてモジュール関数です。
self を返します。
@param name String または Symbol を 0 個以上指定します。
=== 注意
module_function はメソッドに「モジュール関数」という属性をつけるメ
ソッドではなく、プライベートメソッドとモ......てもモジュール関数の別名は定義できません。
module M
def foo
p "foo"
end
module_function :foo
alias bar foo
end
M.foo # => "foo"
M.bar # => undefined method `bar' for Foo:Module (NoMethodError)
このコードでは、モジュール関数 foo......名を付けるには、
以下のように、先に別名を定義してから
それぞれをモジュール関数にしなければいけません。
module M
def foo
p "foo"
end
alias bar foo
module_function :foo, :bar
end
M.foo # => "foo"
M.bar # => "foo"... -
Module
# protected(*name) -> self (209.0) -
メソッドを protected に設定します。
メソッドを protected に設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを protected に設定します。
引数が与えられた時には引数によって指定されたメソッドを protected
に設定します。
可視性については d:spec/def#limit を参照して下さい。
@param name String または Symbol を 0 個以上指定します。
@raise NameError 存在しないメソッド名を指定した場合に発生します。 -
Module
# remove _ class _ variable(name) -> object (209.0) -
引数で指定したクラス変数を取り除き、そのクラス変数に設定さ れていた値を返します。
...そのモジュールやクラスに定義されていない場合に発生します。
class Foo
@@foo = 1
remove_class_variable(:@@foo) # => 1
p @@foo # => uninitialized class variable @@foo in Foo (NameError)
end
@see Module#remove_const, Object#remove_instance_variable... -
Module
# class _ eval(expr , fname = "(eval)" , lineno = 1) -> object (202.0) -
モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを 評価してその結果を返します。
...ことです。
つまり、そのモジュールの定義式の中にあるかのように実行されます。
ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。
文字列が与えられた場合には、定数とクラス変数のスコープ......表示などを差し替えることができます。
例:
class C
end
a = 1
C.class_eval %Q{
def m # メソッドを動的に定義できる。
return :m, #{a}
end
}
p C.new.m #=> [:m, 1]
@see BasicObject#instance_eval, Module.new, Kernel.#eval... -
Module
# module _ eval(expr , fname = "(eval)" , lineno = 1) -> object (202.0) -
モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを 評価してその結果を返します。
...ことです。
つまり、そのモジュールの定義式の中にあるかのように実行されます。
ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。
文字列が与えられた場合には、定数とクラス変数のスコープ......表示などを差し替えることができます。
例:
class C
end
a = 1
C.class_eval %Q{
def m # メソッドを動的に定義できる。
return :m, #{a}
end
}
p C.new.m #=> [:m, 1]
@see BasicObject#instance_eval, Module.new, Kernel.#eval... -
Module
# inspect -> String (139.0) -
モジュールやクラスの名前を文字列で返します。
...スに対しては nil を返します。
module A
module B
end
p B.name #=> "A::B"
class C
end
end
p A.name #=> "A"
p A::B.name #=> "A::B"
p A::C.name #=> "A::C"
# 名前のないモジュール / クラス
p Module.new.name #=> nil
p Class.new.name... -
Module
# to _ s -> String (139.0) -
モジュールやクラスの名前を文字列で返します。
...スに対しては nil を返します。
module A
module B
end
p B.name #=> "A::B"
class C
end
end
p A.name #=> "A"
p A::B.name #=> "A::B"
p A::C.name #=> "A::C"
# 名前のないモジュール / クラス
p Module.new.name #=> nil
p Class.new.name... -
Module
. new -> Module (132.0) -
名前の付いていないモジュールを新しく生成して返します。
...ックに渡し、
モジュールのコンテキストでブロックを実行します。
mod = Module.new
mod.module_eval {|m| ... }
mod
と同じです。
ブロックの実行は Module#initialize が行います。
ブロックを与えた場合も生成したモジュールを返し......ます。
モジュールの名前は、
そのモジュールが代入されている定数名のいずれかです。
m = Module.new
p m # => #<Module 0lx40198a54>
p m.name # => nil # まだ名前は未定
Foo = m
# m.name # ここで m.name を呼べ... -
Module
. new {|mod| . . . } -> Module (132.0) -
名前の付いていないモジュールを新しく生成して返します。
...ックに渡し、
モジュールのコンテキストでブロックを実行します。
mod = Module.new
mod.module_eval {|m| ... }
mod
と同じです。
ブロックの実行は Module#initialize が行います。
ブロックを与えた場合も生成したモジュールを返し......ます。
モジュールの名前は、
そのモジュールが代入されている定数名のいずれかです。
m = Module.new
p m # => #<Module 0lx40198a54>
p m.name # => nil # まだ名前は未定
Foo = m
# m.name # ここで m.name を呼べ...