Ruby で bool?


ロバート・マーチンには「Ruby が死ぬ!」とか言われそうですが、Smalltalk 使いとしては、id:asipruby さんの提案通り、やっぱりモジュールで実装するほうがしっくりきます。^^;

module Boolean
  def bool?; true end
end

module Kernel
  def bool?; false end
end

class TrueClass; include Boolean end
class FalseClass; include Boolean end
true.bool?    #=> true
false.bool?   #=> true
nil.bool?     #=> false
Object.new.bool?      #=> false