種類
- インスタンスメソッド (123)
- 文書 (39)
- 特異メソッド (23)
- クラス (11)
ライブラリ
- ビルトイン (157)
クラス
- BasicObject (22)
- Module (79)
- Object (22)
オブジェクト
- main (23)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (11) -
NEWS for Ruby 2
. 6 . 0 (6) - NoMethodError (11)
-
initialize
_ copy (11) -
instance
_ eval (22) -
private
_ constant (11) - public (23)
-
public
_ constant (11) -
public
_ instance _ method (11) -
public
_ method (11) -
ruby 1
. 9 feature (11) - クラス/メソッドの定義 (11)
検索結果
先頭5件
-
Module
# private() -> nil (18162.0) -
メソッドを private に設定します。
...メソッドを private に設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを関数形式でだけ呼び出せるように(private)設定します。
引数が与えられた時には引数によって指定......ッドを private に
設定します。
可視性については d:spec/def#limit を参照して下さい。
@param name 0 個以上の String または Symbol を指定します。
@param names 0 個以上の String または Symbol を Array で指定します。
@raise NameError 存在し......def foo1() 1 end # デフォルトでは public
private # 可視性を private に変更
def foo2() 2 end # foo2 は private メソッド
end
foo = Foo.new
p foo.foo1 # => 1
p foo.foo2 # => private method `foo2' called for #<Foo:0x401b7628> (NoMethodE... -
Module
# private(*name) -> Array (18162.0) -
メソッドを private に設定します。
...メソッドを private に設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを関数形式でだけ呼び出せるように(private)設定します。
引数が与えられた時には引数によって指定......ッドを private に
設定します。
可視性については d:spec/def#limit を参照して下さい。
@param name 0 個以上の String または Symbol を指定します。
@param names 0 個以上の String または Symbol を Array で指定します。
@raise NameError 存在し......def foo1() 1 end # デフォルトでは public
private # 可視性を private に変更
def foo2() 2 end # foo2 は private メソッド
end
foo = Foo.new
p foo.foo1 # => 1
p foo.foo2 # => private method `foo2' called for #<Foo:0x401b7628> (NoMethodE... -
Module
# private(name) -> String | Symbol (18162.0) -
メソッドを private に設定します。
...メソッドを private に設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを関数形式でだけ呼び出せるように(private)設定します。
引数が与えられた時には引数によって指定......ッドを private に
設定します。
可視性については d:spec/def#limit を参照して下さい。
@param name 0 個以上の String または Symbol を指定します。
@param names 0 個以上の String または Symbol を Array で指定します。
@raise NameError 存在し......def foo1() 1 end # デフォルトでは public
private # 可視性を private に変更
def foo2() 2 end # foo2 は private メソッド
end
foo = Foo.new
p foo.foo1 # => 1
p foo.foo2 # => private method `foo2' called for #<Foo:0x401b7628> (NoMethodE... -
Module
# private(names) -> Array (18162.0) -
メソッドを private に設定します。
...メソッドを private に設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを関数形式でだけ呼び出せるように(private)設定します。
引数が与えられた時には引数によって指定......ッドを private に
設定します。
可視性については d:spec/def#limit を参照して下さい。
@param name 0 個以上の String または Symbol を指定します。
@param names 0 個以上の String または Symbol を Array で指定します。
@raise NameError 存在し......def foo1() 1 end # デフォルトでは public
private # 可視性を private に変更
def foo2() 2 end # foo2 は private メソッド
end
foo = Foo.new
p foo.foo1 # => 1
p foo.foo2 # => private method `foo2' called for #<Foo:0x401b7628> (NoMethodE... -
Module
# private(*name) -> self (18159.0) -
メソッドを private に設定します。
...メソッドを private に設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを関数形式でだけ呼び出せるように(private)設定します。
引数が与えられた時には引数によって指定......されたメソッドを private に
設定します。
可視性については d:spec/def#limit を参照して下さい。
@param name 0 個以上の String または Symbol を指定します。
@raise NameError 存在しないメソッド名を指定した場合に発生します。
//emli......def foo1() 1 end # デフォルトでは public
private # 可視性を private に変更
def foo2() 2 end # foo2 は private メソッド
end
foo = Foo.new
p foo.foo1 # => 1
p foo.foo2 # => private method `foo2' called for #<Foo:0x401b7628> (NoMethodE... -
main
. private() -> nil (18144.0) -
メソッドを private に設定します。
...メソッドを private に設定します。
引数が与えられた時には引数によって指定されたメソッドを private に
設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを関数形式で......(private)設定します。
@param name 0 個以上の String または Symbol を指定します。
@param names 0 個以上の String または Symbol を Array で指定します。
@raise NameError 存在しないメソッド名を指定した場合に発生します。
@see Module#private... -
main
. private(*name) -> Array (18144.0) -
メソッドを private に設定します。
...メソッドを private に設定します。
引数が与えられた時には引数によって指定されたメソッドを private に
設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを関数形式で......(private)設定します。
@param name 0 個以上の String または Symbol を指定します。
@param names 0 個以上の String または Symbol を Array で指定します。
@raise NameError 存在しないメソッド名を指定した場合に発生します。
@see Module#private... -
main
. private(name) -> String | Symbol (18144.0) -
メソッドを private に設定します。
...メソッドを private に設定します。
引数が与えられた時には引数によって指定されたメソッドを private に
設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを関数形式で......(private)設定します。
@param name 0 個以上の String または Symbol を指定します。
@param names 0 個以上の String または Symbol を Array で指定します。
@raise NameError 存在しないメソッド名を指定した場合に発生します。
@see Module#private... -
main
. private(names) -> Array (18144.0) -
メソッドを private に設定します。
...メソッドを private に設定します。
引数が与えられた時には引数によって指定されたメソッドを private に
設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを関数形式で......(private)設定します。
@param name 0 個以上の String または Symbol を指定します。
@param names 0 個以上の String または Symbol を Array で指定します。
@raise NameError 存在しないメソッド名を指定した場合に発生します。
@see Module#private... -
main
. private(*name) -> self (18141.0) -
メソッドを private に設定します。
...メソッドを private に設定します。
引数が与えられた時には引数によって指定されたメソッドを private に
設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを関数形式で......だけ呼び出せるように(private)設定します。
@param name 0 個以上の String または Symbol を指定します。
@raise NameError 存在しないメソッド名を指定した場合に発生します。
@see Module#private... -
Module
# private _ constant(*name) -> self (6159.0) -
name で指定した定数の可視性を private に変更します。
...name で指定した定数の可視性を private に変更します。
@param name 0 個以上の String か Symbol を指定します。
@raise NameError 存在しない定数を指定した場合に発生します。
@return self を返します。
@see Module#public_constant, Object#untrust......Foo
BAR = 'bar'
class Baz; end
QUX = 'qux'
class Quux; end
private_constant :QUX
private_constant :Quux
end
Foo::BAR # => "bar"
Foo::Baz # => Foo::Baz
Foo::QUX # => NameError: private constant Foo::QUX referenced
Foo::Quux # => NameError: private constant Foo::Quux referenced
//}......name で指定した定数の可視性を private に変更します。
@param name 0 個以上の String か Symbol を指定します。
@raise NameError 存在しない定数を指定した場合に発生します。
@return self を返します。
@see Module#public_constant
//emlist[例][... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (120.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
...りました。
((<ruby-core:00927>))
: ((<NameError>)) & ((<NoMethodError>)) [change]
NameError を StandardError のサブクラスに戻しました。
クラス階層は以下のようになりました。
NoMethodError < NameError < StandardError.
: ((<Interrupt>))......ng という名のメソッドを
呼ぶようになりました。デフォルトでは NameError 例外を発生させます。
((<ruby-core:00441>))
: ((<Module#private_method_defined?|Module/private_method_defined?>)) [new]
: ((<Module#protected_method_defined?|Module/protected_method_def......odule#method_removed|Module/method_removed>)) [new]
: ((<Module#method_undefined|Module/method_undefined>)) [new]
追加
=== NameError
: ((<NameError#name|NameError/name>)) [new]
追加
=== NilClass
: ((<NilClass#to_f|NilClass/to_f>)) [new]
追加
=== Numeric
: ((<Num... -
クラス/メソッドの定義 (102.0)
-
クラス/メソッドの定義 * クラス/メソッドの定義: * class * singleton_class * module * method * operator * nest_method * eval_method * singleton_method * class_method * limit * 定義に関する操作: * alias * undef * defined
...例えば
//emlist[][ruby]{
foo # <- foo は未定義
def foo
print "foo\n"
end
//}
は未定義メソッドの呼び出しで例外 NameError を発生させます。
===[a:singleton_method] 特異メソッド定義
//emlist[例][ruby]{
def foo.test
print "this is foo\n"
end
//}......い。
===[a:limit] 呼び出し制限
メソッドは public、private、protected の三通りの
呼び出し制限を持ちます。
* public に設定されたメソッドは制限なしに呼び出せます。
* private に設定されたメソッドは関数形式でしか呼び出せま......:foo
end
obj = Foo.new
# そのままでは呼べない
obj.foo rescue nil # => -:11 - protected method `foo' called for #<Foo:0x401a1860> (NameError)
# クラス定義内でも呼べない
class Foo
Foo.new.foo rescue nil # => -:15 - protected method `foo' called for #<Foo:0x4019eea8>
#... -
Module
# public _ constant(*name) -> self (36.0) -
name で指定した定数の可視性を public に変更します。
...。
@raise NameError 存在しない定数を指定した場合に発生します。
@return self を返します。
//emlist[例][ruby]{
module SampleModule
class SampleInnerClass
end
# => 非公開クラスであることを明示するために private にする
private_constant :Samp......leInnerClass
end
begin
SampleModule::SampleInnerClass
rescue => e
e # => #<NameError: private constant SampleModule::SampleInnerClass referenced>
end
module SampleModule
# => 非公開クラスであることは承知で利用するために public にする
public_constant :SampleInnerCla......ss
end
SampleModule::SampleInnerClass # => SampleModule::SampleInnerClass
//}
@see Module#private_constant, Object#untrusted?......ss
end
SampleModule::SampleInnerClass # => SampleModule::SampleInnerClass
//}
@see Module#private_constant... -
Module
# public _ instance _ method(name) -> UnboundMethod (24.0) -
self の public インスタンスメソッド name をオブジェクト化した UnboundMethod を返します。
...します。
@param name メソッド名を Symbol または String で指定します。
@raise NameError 定義されていないメソッド名や、
protected メソッド名、 private メソッド名を引数として与えると発生します。
//emlist[例][ruby]{
Kernel.public_i......nstance_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...