@@ -540,7 +540,7 @@ type Map<[<EqualityConditionalOn>]'Key, [<EqualityConditionalOn; ComparisonCondi
540
540
member __.OnDeserialized ( context : System.Runtime.Serialization.StreamingContext ) =
541
541
ignore context
542
542
comparer <- LanguagePrimitives.FastGenericComparer< 'Key>
543
- tree <- serializedData |> Array.map ( fun ( KeyValue ( k , v )) -> ( k , v ) ) |> MapTree.ofArray comparer
543
+ tree <- serializedData |> Array.map ( fun kvp -> kvp.Key , kvp.Value ) |> MapTree.ofArray comparer
544
544
serializedData <- null
545
545
546
546
static member Empty : Map < 'Key , 'Value > =
@@ -670,7 +670,8 @@ type Map<[<EqualityConditionalOn>]'Key, [<EqualityConditionalOn; ComparisonCondi
670
670
let m1 = e1.MoveNext()
671
671
let m2 = e2.MoveNext()
672
672
( m1 = m2) && ( not m1 ||
673
- ( let e1c , e2c = e1.Current, e2.Current
673
+ ( let e1c = e1.Current
674
+ let e2c = e2.Current
674
675
(( e1c.Key = e2c.Key) && ( Unchecked.equals e1c.Value e2c.Value) && loop())))
675
676
loop()
676
677
| _ -> false
@@ -852,19 +853,19 @@ module Map =
852
853
853
854
[<CompiledName( " FoldBack" ) >]
854
855
let foldBack < 'Key , 'T , 'State when 'Key : comparison > folder ( table : Map < 'Key , 'T >) ( state : 'State ) =
855
- MapTree.foldBack folder table.Tree state
856
+ MapTree.foldBack folder table.Tree state
856
857
857
858
[<CompiledName( " ToSeq" ) >]
858
859
let toSeq ( table : Map < _ , _ >) =
859
860
table |> Seq.map ( fun kvp -> kvp.Key, kvp.Value)
860
861
861
862
[<CompiledName( " FindKey" ) >]
862
863
let findKey predicate ( table : Map < _ , _ >) =
863
- table |> toSeq |> Seq.pick ( fun ( k , v ) -> if predicate k v then Some k else None)
864
+ table |> Seq.pick ( fun kvp -> let k = kvp.Key in if predicate k kvp.Value then Some k else None)
864
865
865
866
[<CompiledName( " TryFindKey" ) >]
866
867
let tryFindKey predicate ( table : Map < _ , _ >) =
867
- table |> toSeq |> Seq.tryPick ( fun ( k , v ) -> if predicate k v then Some k else None)
868
+ table |> Seq.tryPick ( fun kvp -> let k = kvp.Key in if predicate k kvp.Value then Some k else None)
868
869
869
870
[<CompiledName( " OfList" ) >]
870
871
let ofList ( elements : ( 'Key * 'Value ) list ) =
0 commit comments