Ruby's triple equals (`===`) is defined differently based on the type of the operand on the left hand side.
`a === b` is syntactic sugar for `a.===(b)`; and for classes `klass.===(other)` is defined as `other.is_a?(klass)`.
More examples here: https://dev.to/baweaver/understanding-ruby-triple-equals-2p9...