scala/scala — pull request #2874 by paulp (2013-08-25 17:08:18+00:00)
Title: Value class Depth.

It's the obvious translation from a raw Int into a value class.

It wasn't that long ago one could find a signature like this:
```
def merge(tps: List[Type], variance: Int, depth: Int): Type
```
Do you feel lucky, method caller? Well, do ya?

Anyway, now it is:
```
def merge(tps: List[Type], variance: Variance, depth: Depth): Type
```
Forget for a moment the fact that you'd probably rather not pass variance
for depth and depth for variance and look at the type signatures:
```
(List[Type], Variance, Depth) => Type
(List[Type], Int, Int) => Type
```