18件ヒット
[1-18件を表示]
(0.040秒)
検索結果
-
Proc
# parameters(lambda: nil) -> [object] (18244.0) -
Proc オブジェクトの引数の情報を返します。
...&b|}
prc.parameters #=> x], [:opt, :y], [:rest, :other], [:keyreq, :k_x], [:key, :k_y], [:keyrest, :k_other], [:block, :b
//}
//emlist[lambda: の例][ruby]{
prc = proc{|x, y=42, *other|}
p prc.parameters # => x], [:opt, :y], [:rest, :other
prc = lambda{|x, y=42, *other|}
p prc.parameters # => x]......, [:opt, :y], [:rest, :other
prc = proc{|x, y=42, *other|}
p prc.parameters(lambda: true) # => x], [:opt, :y], [:rest, :other
prc = lambda{|x, y=42, *other|}
p prc.parameters(lambda: false) # => x], [:opt, :y], [:rest, :other
//}
@see Method#parameters, UnboundMethod#parameters... -
NEWS for Ruby 2
. 7 . 0 (78.0) -
NEWS for Ruby 2.7.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...で**nilと書くことで、このメソッドがキーワードを
受け取らないことを明示できるようになりました。このようなメソッドを
キーワード引数付きで呼び出すとArgumentErrorになります。 14183
//emlist[][ruby]{
def foo(h, **nil); en......d; foo(key: 1) # ArgumentError
def foo(h, **nil); end; foo(**{key: 1}) # ArgumentError
def foo(h, **nil); end; foo("str" => 1) # ArgumentError
def foo(h, **nil); end; foo({key: 1}) # OK
def foo(h, **nil); end; foo({"str" => 1}) # OK
//}
* キーワード引数を受け取らない......「Warning[:deprecated] = false」
としてください。
==== 番号指定パラメータ
* 番号指定パラメータ(Numbered parameters)がデフォルトのブロックの仮引数として
導入されました。 4475
//emlist[][ruby]{
[1, 2, 10].map { _1.to_s(16) } #=... -
メソッド呼び出し(super・ブロック付き・yield) (76.0)
-
メソッド呼び出し(super・ブロック付き・yield) * super * block * yield * block_arg * numbered_parameters * call_method
...メソッド呼び出し(super・ブロック付き・yield)
* super
* block
* yield
* block_arg
* numbered_parameters
* call_method
//emlist[例][ruby]{
foo.bar()
foo.bar
bar()
print "hello world\n"
print
Class.new
Class::new
//}
文法:
[式 `.'] 識別子 [`(' [[`*']......にオーバーライドしたメソッドを呼び出すには
super() と括弧を明示します。
//emlist[例][ruby]{
class Foo
def foo(arg=nil)
p arg
end
end
class Bar < Foo
def foo(arg)
super(5) # 5 を引数にして呼び出す
super(arg) # 5 を引数にし......ソッドの戻り値は、通常のメソッドと同様ですが、ブロックの中から
d:spec/control#break により中断された場合は nil を返します。
break に引数を指定した場合はその値がブロック付きメソッドの戻り値になります。
===[a:yield] y......メソッドを呼びだそうとすると、レシーバが nil の場合は
以下のように働きます。
* 引数の評価が行なわれない
* メソッド呼び出しが行われない
* nil を返す
レシーバが nil でない場合は通常のメソッド呼び出しが行わ......れます。
//emlist[][ruby]{
foo = 13
foo&.to_s # => "13"
foo = nil
foo&.to_s # nil, not ""
//}
`&.' は要素代入(アトリビュート)に対しても使えます。
//emlist[][ruby]{
foo&.bar = "abc" # for `bar=' method
//}
===[a:super] super
//emlist[例][ruby]{
super
super(1,2,3)
//}...