るりまサーチ

最速Rubyリファレンスマニュアル検索!
372件ヒット [101-200件を表示] (0.115秒)

別のキーワード

  1. string []=
  2. string slice
  3. string []
  4. string slice!
  5. string gsub

検索結果

<< < 1 2 3 4 > >>

Module#undef_method(*name) -> self (6163.0)

このモジュールのインスタンスメソッド name を未定義にします。

...このモジュールのインスタンスメソッド name を未定義にします。

@
param name 0 個以上の String か Symbol を指定します。

@
raise NameError 指定したインスタンスメソッドが定義されていない場合に発生します。

=== 「未定義にする...
...k
puts 'B'
end
end

B.new.ok # => B

# undef_method の場合はスーパークラスに同名のメソッドがあっても
# その呼び出しはエラーになる
class B
undef_method :ok
end
B.new.ok # => NameError

# remove_method の場合はスーパークラスに同名のメソ...
...ass B
remove_method :ok
end
B.new.ok # => A
//}

また、undef 文と undef_method の違いは、
メソッド名を String または Symbol で与えられることです。

//emlist[例][ruby]{
module
M1
def foo
end
def self.moo
undef foo
end
end
M1.instance_methods false #=> ["...

Module#alias_method(new, original) -> self (6157.0)

メソッドの別名を定義します。

...メソッドの別名を定義します。

//emlist[例][ruby]{
module
Kernel
alias_method :hoge, :puts # => Kernel
end
//}

alias との違いは以下の通りです。

* メソッド名は String または Symbol で指定します
* グローバル変数の別名をつけることはで...
...せん。

@
param new 新しいメソッド名。String または Symbol で指定します。

@
param original 元のメソッド名。String または Symbol で指定します。

@
return self を返します。

@
see d:spec/def#alias

//emlist[例][ruby]{
module
Kernel
alias_method :foo, :puts...

Module#remove_method(*name) -> self (6151.0)

インスタンスメソッド name をモジュールから削除します。

...除できます。

@
param name 0 個以上の String か Symbol を指定します。

@
raise NameError 指定したメソッドが定義されていない場合に発生します。

//emlist[例][ruby]{
class C
def foo
end

remove_method :foo
remove_method :no_such_method # 例外 NameE...
...rror が発生
end
//}

@
see Module#undef_method...

Module#private_class_method(*name) -> self (6146.0)

name で指定したクラスメソッド (クラスの特異メソッド) の 可視性を private に変更します。

...te に変更します。

@
param name 0 個以上の String または Symbol を指定します。
@
param names 0 個以上の String または Symbol を Array で指定します。

//emlist[例][ruby]{
module
Foo
def self.foo; end
end

Foo.singleton_class.private_method_defined?(:foo) # => fal...
...se
Foo.private_class_method(:foo) # => Foo
Foo.singleton_class.private_method_defined?(:foo) # => true
//}...

Module#private_class_method(names) -> self (6146.0)

name で指定したクラスメソッド (クラスの特異メソッド) の 可視性を private に変更します。

...te に変更します。

@
param name 0 個以上の String または Symbol を指定します。
@
param names 0 個以上の String または Symbol を Array で指定します。

//emlist[例][ruby]{
module
Foo
def self.foo; end
end

Foo.singleton_class.private_method_defined?(:foo) # => fal...
...se
Foo.private_class_method(:foo) # => Foo
Foo.singleton_class.private_method_defined?(:foo) # => true
//}...

絞り込み条件を変える

Module#public_class_method(*name) -> self (6146.0)

name で指定したクラスメソッド (クラスの特異メソッド) の 可視性を public に変更します。

...

@
param name 0 個以上の String または Symbol を指定します。
@
param names 0 個以上の String または Symbol を Array で指定します。

//emlist[例][ruby]{
class Foo
def self.foo
"foo"
end

private_class_method :foo
end

Foo.foo # NoMethodError: private method `fo...
...o' called for Foo:Class

Foo.public_class_method(:foo) # => Foo
Foo.foo # => "foo"
//}...

Module#public_class_method(names) -> self (6146.0)

name で指定したクラスメソッド (クラスの特異メソッド) の 可視性を public に変更します。

...

@
param name 0 個以上の String または Symbol を指定します。
@
param names 0 個以上の String または Symbol を Array で指定します。

//emlist[例][ruby]{
class Foo
def self.foo
"foo"
end

private_class_method :foo
end

Foo.foo # NoMethodError: private method `fo...
...o' called for Foo:Class

Foo.public_class_method(:foo) # => Foo
Foo.foo # => "foo"
//}...

Module#protected(name) -> String | Symbol (145.0)

メソッドを protected に設定します。

...さい。

@
param name 0 個以上の String または Symbol を指定します。
@
param names 0 個以上の String または Symbol を Array で指定します。

@
raise NameError 存在しないメソッド名を指定した場合に発生します。


@
see Module#protected_method_defined?...

Module#private(name) -> String | Symbol (139.0)

メソッドを private に設定します。

...可視性については d:spec/def#limit を参照して下さい。

@
param name 0 個以上の String または Symbol を指定します。
@
param names 0 個以上の String または Symbol を Array で指定します。

@
raise NameError 存在しないメソッド名を指定した場合...
...) 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> (NoMethodError)
//}...
<< < 1 2 3 4 > >>