2022-03-01から1ヶ月間の記事一覧

2022/03/31 今回の気になった bugs.ruby のチケット

今週は正規表現マッチするときのタイムアウトを導入するチケットがマージされました。 前回のまとめ [Feature #17837] Add support for Regexp timeouts 正規表現を比較する時にタイムアウトの概念を導入するチケット 色々と議論があったが最終的にはタイム…

2022/03/24 今回の気になった bugs.ruby のチケット

今週は注釈付き代入演算子を提案するチケットなどがありました。 前回のまとめ [Feature #18626] 注釈付き代入演算子 ()= の提案 以下のような注釈付き代入演算子の提案になる class Object # 代入するときの処理をフックする def self.()= (what) what.is_a…

2022/03/17 今回の気になった bugs.ruby のチケット

今週はブロックの引数に関するバグチケなどチケットがありました。 [Bug #18635] Enumerable#inject without block/symbol will return values or raise LocalJumpError ブロック引数のない Enumerable#inject を呼び出すと『値が返ってくるか例外が発生する…

Ruby の呼び出し可能オブジェクトについて

メタプロRuby本を参考にしつつ Ruby の呼び出し可能オブジェクトについてまとめてみました。 呼び出し可能オブジェクトとは Ruby のブロックは『呼び出すメソッドに対して何かしらの処理を外から渡す』記法になります。 # 『配列の要素を2倍にする』という処…

Ruby の引数の種類をまとめてみた

普段何気なく書いている Ruby なんですが実はメソッドの引数の種類って思ったよりも多くてまとめてみました。 実際自分も Ruby の AST をいじっている時に引数の種類が多すぎて混乱したのでまとめておくと色々と役に立つかなーと。 と、軽い気持ちで書いてみ…

2022/03/10 今回の気になった bugs.ruby のチケット

今週はブロックの引数で Hash が分割して受け取れなくなったチケットがありました。 [Misc #18609] keyword decomposition in enumerable (question/guidance) Ruby 3.0 から次のように Hash をキーワード引数で受け取れなくなったというチケット drafts = […

2022/03/03 今回の気になった bugs.ruby のチケット

今週はラテン文字を String#downcase したときのバグ報告がありました。 前回のまとめ [Feature #18603] Allow syntax like obj.method(arg)=value 次のようのような構文を許容する提案 obj.method(arg) = value これは以下と同じ意味になる obj.__send__(:m…