I have a trait Foo
that has a single method run() -> Result<Self::Item, Self::Error>
and I'd like to provide blanket implementations for all FnOnce()
and FnOnce() -> Result<I, E>
. I'd expect to be able to do this with specialization, but I'm getting an error saying the implementations are conflicting. You can see the example here.
Why are do the two impls conflict? Is this genuinely not covered under specialization or is this a part of specialization that has not yet been fully implemented?