Conversation
That requires making a 1-to-1 relationship between each `Smashable`-adopter and each `Value`-adopter Does that permit Brent’s use case, where it accepts one Value but returns a different one? Oh, the associated type solution wouldn’t permit that, no. I’m looking at your original one. How can valueBySmashing… take a Foo and return a Bar? I'm backing out because I'm realizing I don't understand what Brent wants. :-)