るりまサーチ

最速Rubyリファレンスマニュアル検索!
11件ヒット [1-11件を表示] (0.034秒)
トップページ > クラス:Module[x] > クエリ:class[x] > クエリ:new[x] > クエリ:prepend[x]

別のキーワード

  1. argf.class lines
  2. argf.class each_line
  3. argf.class each
  4. class new
  5. argf.class readline

ライブラリ

検索結果

Module#prepend(*modules) -> self (18198.0)

指定したモジュールを self の継承チェインの先頭に「追加する」ことで self の定数、メソッド、モジュール変数を「上書き」します。

...たメソッドは
override されます。

module
s で指定したモジュールは後ろから順に処理されるため、
module
s の先頭が最も優先されます。

また、継承によってこの「上書き」を処理するため、prependの引数として
渡したモジュール...
...す。


@param modules prepend する Module を指定します
@see Module#prepend_features, Module#prepended

//emlist[例][ruby]{
# super と prepend の組み合わせの例
module
X
def foo
puts "X1" # (1x)
super # (2x)
puts "X2" # (3x)
end
end

class
A
prepend
X

def foo...
...A.new.foo
# (1x) (2x)(ここの super で A#foo を呼びだす) (1a) (3x) の順に実行される
# >> X1
# >> A
# >> X2

# 2つのモジュールを X, Y を prepend X, Y という順で指定したもの
module
Y
def foo
puts "Y1" #(1y)
super #(2y)
puts "Y2" #(3y)
end
end

class
...