@@ -12,19 +12,19 @@ opaque type LinearMap[K <: AnyRef, V >: Null <: AnyRef] =
1212
1313object LinearMap :
1414
15- def Empty [K <: AnyRef , V >: Null <: AnyRef ]: LinearMap [K , V ] =
15+ def empty [K <: AnyRef , V >: Null <: AnyRef ]: LinearMap [K , V ] =
1616 immutable.Map .empty[K , V ]
1717
1818 extension [K <: AnyRef , V >: Null <: AnyRef ](m : LinearMap [K , V ]):
1919
20- def lookup (key : K ): V /* | Null*/ = m match
21- case m : immutable.Map [K , V ] @ unchecked =>
20+ def lookup (key : K ): V /* | Null*/ = ( m : @ unchecked) match
21+ case m : immutable.AbstractMap [K , V ] @ unchecked =>
2222 if m.contains(key) then m(key) else null
2323 case m : HashMap [K , V ] @ unchecked =>
2424 m.lookup(key)
2525
26- def updated (key : K , value : V ): LinearMap [K , V ] = m match
27- case m : immutable.Map [K , V ] @ unchecked =>
26+ def updated (key : K , value : V ): LinearMap [K , V ] = ( m : @ unchecked) match
27+ case m : immutable.AbstractMap [K , V ] @ unchecked =>
2828 if m.size < 4 then
2929 m.updated(key, value)
3030 else
@@ -36,8 +36,8 @@ object LinearMap:
3636 m(key) = value
3737 m
3838
39- def size = m match
40- case m : immutable.Map [K , V ] @ unchecked => m.size
39+ def size = ( m : @ unchecked) match
40+ case m : immutable.AbstractMap [K , V ] @ unchecked => m.size
4141 case m : HashMap [K , V ] @ unchecked => m.size
4242
4343end LinearMap
0 commit comments