2020-07-01から1ヶ月間の記事一覧

今週の気になった bugs.ruby

内容は適当です。 今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。 先週のまとめ [Feature #16923] Switch reserved for numbered parameter warning to SyntaxError _1 という名前は Numbered parameter で使用されて…

Ruby で #initialize を呼ばずにクラスのインスタンスを生成する

通常はクラスからインスタンスを生成するときに .new を使用するんですが、類似するクラスメソッドに .allocate というメソッドがあります。 Class#allocate (Ruby 2.7.0 リファレンスマニュアル) .allocate も .new と同様にクラスのインスタンスを生成する…

Ruby で単項演算子を . 演算子で呼び出す

Ruby では単項演算子 ! や + などをメソッドとして再定義する事ができます。 class X # ! はそのまま ! という名前のメソッドとして定義する def ! "X#!" end # + は二項演算子と区別するために +@ と書く def +@ "X#+@" end end x = X.new p !x # => "X#!" …

今週の気になった bugs.ruby

内容は適当です。 今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。 先週のまとめ [Feature #17043] Invokable module for custom Proc-like objects 『Proc なオブジェクト』を明示化できるモジュールの追加案 Invokab…

今週の気になった bugs.ruby

内容は適当です。 今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。 今週は少なめ。 先週のまとめ [Bug #17017] Range#max & Range#minmax incorrectly use Float end as max Range#max と Range#minmax の戻り値に一貫…

今週の気になった bugs.ruby

内容は適当です。 今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。 先週のまとめ [Feature #17006] Let Kernel#Hash take a block to provide the default value Hash に default_proc を渡せるようにする提案 # 既存…

今週の気になった bugs.ruby

書き溜めてはいたんですが、ブログに公開するのを忘れてました。 内容は適当です。 今週と言っても今週みかけたチケットなだけでチケット自体は昔からあるやつもあります。 先週のまとめ [Feature #16986] Anonymous Struct literal Struct.new(:a, :b).new(…

Ruby でメソッドの戻り値を受け取るかどうかを判定する RubyVM.return_value_is_used? が面白そう

こんな深夜に Ruby で面白そうなチケットを見かけたのでいろいろと試してみました。 チケット: [Feature #17004] Provide a way for methods to omit their return value PR : Provide a way for methods to omit their return value (rev.2) by shyouhei ·…