I realize this is copied from existing code, but for consistency with the way Collection is done, wdyt about moving the body of this into another method that handles assignment of the coerced value to the Hash?