def each
      return to_enum(__method__) { instance.size } unless block_given?
      instance.each_key { |k| yield(k, self[k]) }
      self
    end
def each
      return to_enum(__method__) { instance.size } unless block_given?
      instance.each_key { |k| yield(k, self[k]) }
      self
    end
yields each key and value of this JSI.
 each yielded key is the same as a key of the instance, and each yielded
 value is the result of self[key] (see #[]).
 returns an Enumerator if no block is given.
 @yield [Object, Object] each key and value of this JSI hash
 @return [self, Enumerator]