From db3d51ddc421dad68abddb95d01ffdab440197d6 Mon Sep 17 00:00:00 2001
From: nsfisis
case - in によるパターンマッチング構文でも、case - when と同じように then が使える (場合によっては使う必要がある)。
then とはthen とは
使われることは稀だが、Ruby では then がキーワードになっている。次のように使う:
普通 Ruby のコードで then を書くことはない。なぜか。次のコードを実行してみるとわかる。
then や ; や改行が必要かthen や ; や改行が必要か
なぜ then や ; や改行 (以下 「then 等」) が必要なのだろうか。次の例を見てほしい:
case - in における thencase - in における then
ようやく本題にたどり着いた。来る Ruby 3.0 では case と in キーワードを使ったパターンマッチングの構文が入る予定である。この構文でもパターン部との区切りとして then 等が必要になる。 (現在の) Ruby には formal な形式での文法仕様は存在しないので、yacc の定義ファイルを参照した (yacc の説明は省略)。
if や case の条件の後ろには then、;、改行のいずれかが必要
--
cgit v1.2.3-70-g09d2