diff options
Diffstat (limited to 'public/posts/2021-10-02/ruby-then-keyword-and-case-in/index.html')
| -rw-r--r-- | public/posts/2021-10-02/ruby-then-keyword-and-case-in/index.html | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/public/posts/2021-10-02/ruby-then-keyword-and-case-in/index.html b/public/posts/2021-10-02/ruby-then-keyword-and-case-in/index.html index 097d417..ba31a99 100644 --- a/public/posts/2021-10-02/ruby-then-keyword-and-case-in/index.html +++ b/public/posts/2021-10-02/ruby-then-keyword-and-case-in/index.html @@ -65,15 +65,15 @@ </hr> </p> - <section id="section--_tl_dr"> - <h2><a href="#section--_tl_dr">TL; DR</a></h2> + <section id="section--tl-dr"> + <h2><a href="#section--tl-dr">TL; DR</a></h2> <p> <code>case</code> - <code>in</code> によるパターンマッチング構文でも、<code>case</code> - <code>when</code> と同じように <code>then</code> が使える (場合によっては使う必要がある)。 </p> </section> - <section id="section--_then_とは"> - <h2><a href="#section--_then_とは"><code>then</code> とは</a></h2> + <section id="section--what-is-then-keyword"> + <h2><a href="#section--what-is-then-keyword"><code>then</code> とは</a></h2> <p> 使われることは稀だが、Ruby では <code>then</code> がキーワードになっている。次のように使う: </p> @@ -110,8 +110,8 @@ <span class="hljs-keyword">end</span></code></pre> </section> - <section id="section--_なぜ普段は書かなくてもよいのか"> - <h2><a href="#section--_なぜ普段は書かなくてもよいのか">なぜ普段は書かなくてもよいのか</a></h2> + <section id="section--why-then-is-usually-unnecessary"> + <h2><a href="#section--why-then-is-usually-unnecessary">なぜ普段は書かなくてもよいのか</a></h2> <p> 普通 Ruby のコードで <code>then</code> を書くことはない。なぜか。次のコードを実行してみるとわかる。 </p> @@ -144,8 +144,8 @@ puts <span class="hljs-string">'Hello, World!'</span> <span class="hlj </p> </section> - <section id="section--_なぜ_then_や_や改行が必要か"> - <h2><a href="#section--_なぜ_then_や_や改行が必要か">なぜ <code>then</code> や <code>;</code> や改行が必要か</a></h2> + <section id="section--why-then-or-linebreak-is-needed"> + <h2><a href="#section--why-then-or-linebreak-is-needed">なぜ <code>then</code> や <code>;</code> や改行が必要か</a></h2> <p> なぜ <code>then</code> や <code>;</code> や改行 (以下 「<code>then</code> 等」) が必要なのだろうか。次の例を見てほしい: </p> @@ -175,8 +175,8 @@ b </p> </section> - <section id="section--_case_in_における_then"> - <h2><a href="#section--_case_in_における_then"><code>case</code> - <code>in</code> における <code>then</code></a></h2> + <section id="section--then-in-case-in"> + <h2><a href="#section--then-in-case-in"><code>case</code> - <code>in</code> における <code>then</code></a></h2> <p> ようやく本題にたどり着いた。来る Ruby 3.0 では <code>case</code> と <code>in</code> キーワードを使ったパターンマッチングの構文が入る予定である。この構文でもパターン部との区切りとして <code>then</code> 等が必要になる。 (現在の) Ruby には formal な形式での文法仕様は存在しないので、yacc の定義ファイルを参照した (yacc の説明は省略)。 </p> @@ -259,8 +259,8 @@ p_cases <span class="hljs-keyword">end</span></code></pre> </section> - <section id="section--_まとめ"> - <h2><a href="#section--_まとめ">まとめ</a></h2> + <section id="section--outro"> + <h2><a href="#section--outro">まとめ</a></h2> <ul> <li> <code>if</code> や <code>case</code> の条件の後ろには <code>then</code>、<code>;</code>、改行のいずれかが必要 |
