kind=defined
names=is_a?,kind_of?
visibility=public

--- is_a?(mod) -> bool
--- kind_of?(mod) -> bool

オブジェクトが指定されたクラス mod かそのサブクラスのインスタンスであるとき真を返します。

また、オブジェクトがモジュール mod をインクルードしたクラスかそのサブクラス
のインスタンスである場合にも真を返します。
上記のいずれでもない場合に false を返します。

@param mod クラスやモジュールなど、[[c:Module]]かそのサブクラスのインスタンスです。

    module M
    end
    class C < Object
      include M
    end
    class S < C
    end

    obj = S.new
    p obj.is_a?(S)       # true
    p obj.is_a?(C)       # true
    p obj.is_a?(Object)  # true
    p obj.is_a?(M)       # true
    p obj.is_a?(Hash)    # false

@see [[m:Object#instance_of?]],[[m:Module#===]],[[m:Object#class]]

