回答編集履歴
1
修正
answer
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
まず、「意図しない動作」ではありますが、「エラー」ではありません。
|
2
2
|
|
3
3
|
Rubyのメソッド呼び出しの`()`省略時に`do end`でブロック付きで呼び出そうとすると
|
4
|
-
|
4
|
+
このような意図しない動作を引き起こします。
|
5
5
|
|
6
6
|
今回の場合は、Rubyは↓のように解釈しています。
|
7
7
|
```ruby
|
@@ -10,4 +10,5 @@
|
|
10
10
|
end
|
11
11
|
```
|
12
12
|
|
13
|
-
なお、`{}`によるブロック付き呼び出し
|
13
|
+
なお、`{}`によるブロック付き呼び出しは、`do end`より強く結合しているためこの問題はおこりません。
|
14
|
+
[参考:ブロック付きメソッド呼び出し](https://docs.ruby-lang.org/ja/2.6.0/doc/spec=2fcall.html#block)
|