💬

[Feature #20756] `Boolean` クラスを追加する提案

2024/09/20に公開

[Feature #20756] Introduce Boolean class

  • Boolean クラスを追加する提案
  • 雰囲気、以下のような感じ
class TrueClass  < Boolean ; end
class FalseClass < Boolean ; end

# もしくは以下のようなハック
module Boolean ; end
TrueClass.include(Boolean);
FalseClass.include(Boolean);
  • 要は true false を同じ型として扱いたいような要望ですね
case(value)
when String  ...
when Integer ...
when true, false ... # Boolean かどうか
end
  • これなんですが https://bugs.ruby-lang.org/issues/20756#note-4 に書かれている理由により Reject されています
    • Boolean で共通処理がなかったり、入れたとしても #kind_of? を使ってチェックするだけでそれはダックタイピングの原則にそってなよね、っていうのはそれはそうよねえ
GitHubで編集を提案

Discussion