Method: Module#singleton_class?

Defined in:
object.c

#singleton_class?Boolean

Returns true if mod is a singleton class or false if it is an ordinary class or module.

class C
end
C.singleton_class?                  #=> false
C.singleton_class.singleton_class?  #=> true

Returns:

  • (Boolean)


3040
3041
3042
3043
3044
3045
3046
# File 'object.c', line 3040

static VALUE
rb_mod_singleton_p(VALUE klass)
{
    if (RB_TYPE_P(klass, T_CLASS) && FL_TEST(klass, FL_SINGLETON))
	return Qtrue;
    return Qfalse;
}