mirror of https://github.com/sbt/sbt.git
1. KList[M[_]] now instead of KList[HL <: HList, M[_]]
a. head, tail work properly in this variant
b. disadvantage is that full type not easily transformed to new type constructor
2. AList abstracts on K[L[x]], a higher order type constructor.
A. Instances written for:
a. KList
b. Seq[M[T]] for a fixed T
c. TupleN
d. single values
e. operate on one type constructor when nested
B. Main disadvantage is type inference. It just doesn't happen for K[L[x]].
This is mitigated by AList being used internally and rarely needing to construct a K.
|
||
|---|---|---|
| .. | ||
| src/test/scala | ||
| AList.scala | ||
| Attributes.scala | ||
| Classes.scala | ||
| Dag.scala | ||
| HList.scala | ||
| IDSet.scala | ||
| INode.scala | ||
| KList.scala | ||
| NOTICE | ||
| PMap.scala | ||
| Param.scala | ||
| Positions.scala | ||
| Settings.scala | ||
| Show.scala | ||
| Signal.scala | ||
| TypeFunctions.scala | ||
| Types.scala | ||
| Util.scala | ||