質問です

渡された引数が
true か false ならそれをインスタンス変数に保存し
それ以外(nilも)なら例外を出す

って処理を書きたいのですが

def test(b)
  if b == true || b == false then
    @b = b
  else
    raise TypeError
  end
end

って冗長な気がします。
TrueClass と FalseClass を纏めるクラスもなさそうなので
クラスでの判別にすると更に冗長になりそうですし。

短い書き方無いでしょうか?