We could also add a dummy parameter to next<T>()
with a default value:
mutating func next<T>(of type: T.Type = T.self) -> T where T: FixedWidthInteger & UnsignedInteger
This currently prevents the compiler from matching it to the requirement, while code such as r.next() as UInt
will continue to work as originally intended. (Although I'm not sure if that's a bug...)