Following the awesomely enlightening question by @TravisBrown concerning the enumeration of ADTs using shapeless, I am left with the following code snippet:
impl
If you look at the definition of implicitly[X], you can see that is requires an implicit argument of type X
in scope. In your example, you have implicit ev: T
in scope, which is not enough to call implicitly[EnumerableAdt[T]]
! Try the following definition instead:
def imply[T](implicit ev: EnumerableAdt[T]):Set[T] = ev.values