Full support for unliftable implies that it's possible to interleave
deconstruction with higher rank and unlifting of the values.
In particular extraction of List[Tree] as List[T: Unliftable] requires
helper extractors that would do the job: UnliftListElementwise[T]. Similarly
List[List[Tree]] needs UnliftListOfListsElementwise[T].
See also "unlift list" tests in UnapplyProps.scala
Full support for unliftable implies that it's possible to interleave deconstruction with higher rank and unlifting of the values. In particular extraction of List[Tree] as List[T: Unliftable] requires helper extractors that would do the job: UnliftListElementwise[T]. Similarly List[List[Tree]] needs UnliftListOfListsElementwise[T].
See also "unlift list" tests in UnapplyProps.scala