if this method returned the `mapping` in the end (which would make more conventional sense than returning the last added type which happens now), then you also won't need to use `.tap`:

`@type_map ||= initialize_type_map(Type::TypeMap.new)`