Check whether a variable is a string in Ruby

idioms, ruby, typechecking

Solution

I think you are looking for `instance_of?`. `is_a?` and `kind_of?` will return true for instances from derived classes.

class X < String
end

foo = X.new

foo.is_a? String         # true
foo.kind_of? String      # true
foo.instance_of? String  # false
foo.instance_of? X       # true

Problem

Is there anything more idiomatic than the following? ``` foo.class == String ```

Original source

Related problems