るりまサーチ

最速Rubyリファレンスマニュアル検索!
262件ヒット [1-100件を表示] (0.141秒)
トップページ > クエリ:i[x] > クエリ:-[x] > クエリ:@[x] > クエリ:self[x] > クラス:Module[x]

別のキーワード

  1. _builtin to_i
  2. fiddle to_i
  3. matrix elements_to_i
  4. csv to_i
  5. ipaddr to_i

ライブラリ

検索結果

<< 1 2 3 > >>

Module#alias_method(new, original) -> self (6332.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,...

Module#private_constant(*name) -> self (6332.0)

name で指定した定数の可視性を private に変更します。

...を private に変更します。

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

@
raise NameError 存在しない定数を指定した場合に発生します。

@
return self を返します。

@
see Module#public_constant, Object#untrusted?

//emlist[例][ruby]{
module
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
//}...
...可視性を private に変更します。

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

@
raise NameError 存在しない定数を指定した場合に発生します。

@
return self を返します。

@
see Module#public_constant

//emlist[例][ruby]{
module
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
//}...

Module#public_constant(*name) -> self (6332.0)

name で指定した定数の可視性を public に変更します。

...可視性を public に変更します。

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

@
raise NameError 存在しない定数を指定した場合に発生します。

@
return self を返します。

//emlist[例][ruby]{
module
SampleModule
class SampleInnerClass
end...
...private にする
private_constant :SampleInnerClass
end

begin
SampleModule::SampleInnerClass
rescue => e
e # => #<NameError: private constant SampleModule::SampleInnerClass referenced>
end

module
SampleModule
# => 非公開クラスであることは承知で利用するために public...
...にする
public_constant :SampleInnerClass
end

SampleModule::SampleInnerClass # => SampleModule::SampleInnerClass
//}

@
see Module#private_constant, Object#untrusted?...
...にする
public_constant :SampleInnerClass
end

SampleModule::SampleInnerClass # => SampleModule::SampleInnerClass
//}

@
see Module#private_constant...

Module#public(*name) -> self (6326.0)

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

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

引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドをどんな形式でも呼び出せるように(public)設定します。

引数が与えられた時には引数によって指定...
...ッドを public に設
定します。

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

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

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

//emlist[例][ruby]{
d...
...ef foo() 1 end
p foo # => 1
# the toplevel default is private
p self.foo # => private method `foo' called for #<Object:0x401c83b0> (NoMethodError)

def bar() 2 end
public :bar # visibility changed (all access allowed)
p bar # => 2
p self.bar # => 2
//}...

Module#using(module) -> self (6326.0)

引数で指定したモジュールで定義された拡張を現在のクラス、モジュールで有 効にします。

...ルで有
効にします。

有効にした拡張の有効範囲については以下を参照してください。

* https://docs.ruby-lang.org/en/master/syntax/refinements_rdoc.html#label-Scope

@
param module 有効にするモジュールを指定します。

@
see Module#refine, main.using...

絞り込み条件を変える

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

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

...を private に変更します。

@
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)...
...# => false
Foo.private_class_method(:foo) # => Foo
Foo.singleton_class.private_method_defined?(:foo) # => true
//}...

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

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

...を private に変更します。

@
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)...
...# => false
Foo.private_class_method(:foo) # => Foo
Foo.singleton_class.private_method_defined?(:foo) # => true
//}...

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

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

...) の
可視性を 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
e...
...nd

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

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

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

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

...) の
可視性を 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
e...
...nd

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

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

Module#include(*mod) -> self (6320.0)

モジュール mod をインクルードします。

...します。

@
param mod Module のインスタンス( Enumerable など)を指定します。

@
raise ArgumentError 継承関係が循環してしまうような include を行った場合に発生します。

//emlist[例][ruby]{
module
M
end
module
M2
i
nclude M
end
module
M
i
nclude M2
end
//...
...}

実行結果:

-
:3:in `append_features': cyclic include detected (ArgumentError)
from -:3:in `include'
from -:3


インクルードとは、指定されたモジュールの定義
(メソッド、定数) を引き継ぐことです。
インクルードは多重継承の代...
...わりに用いられており、 mix-in とも呼びます。

//emlist[例][ruby]{
class C
i
nclude FileTest
i
nclude Math
end

p C.ancestors

# => [C, Math, FileTest, Object, Kernel]
//}

モジュールの機能追加は、クラスの継承関係の間にそのモジュールが挿入
され...

絞り込み条件を変える

Module#module_function(*name) -> self (6314.0)

メソッドをモジュール関数にします。

...例えば Math モジュールのメソッドはすべてモジュール関数です。

self
を返します。

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

=== 注意
module
_function はメソッドに「モジュール関数」という属性をつけるメ
ソッド...
...もモジュール関数の別名は定義できません。

//emlist[例][ruby]{
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)
//}

このコードでは、モジュール関数...
...けるには、
以下のように、先に別名を定義してから
それぞれをモジュール関数にしなければいけません。

//emlist[例][ruby]{
module
M
def foo
p "foo"
end

alias bar foo
module
_function :foo, :bar
end

M.foo # => "foo"
M.bar # => "foo"
//}...

Module#private(*name) -> self (6314.0)

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

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

引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを関数形式でだけ呼び出せるように(private)設定します。

引数が与えられた時には引数によって指定...
...ッドを private に
設定します。

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

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

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

//emlist[例][ruby]{...
...oo
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> (NoMeth...

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

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

...を private に変更します。

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

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

Foo.singleton_class.private_method_defined?(:foo) # => false
Foo.private_class_method(:foo) # => Foo
Foo.singleton_class.private_meth...
...od_defined?(:foo) # => true
//}...

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

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

...性を public に変更します。

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

//emlist[例][ruby]{
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(...
<< 1 2 3 > >>