Skip to content

Commit

Permalink
Simplify TokenMap.maximumQuantity.
Browse files Browse the repository at this point in the history
  • Loading branch information
jonathanknowles committed Dec 2, 2022
1 parent 9363ed2 commit ccd1533
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 15 deletions.
16 changes: 1 addition & 15 deletions lib/primitive/lib/Cardano/Wallet/Primitive/Types/TokenMap.hs
Expand Up @@ -156,7 +156,6 @@ import qualified Data.Aeson as Aeson
import qualified Data.Foldable as F
import qualified Data.List as L
import qualified Data.List.NonEmpty as NE
import qualified Data.Map.Strict as Map
import qualified Data.Monoid.Null as MonoidNull
import qualified Data.MonoidMap as MonoidMap
import qualified Data.Set as Set
Expand Down Expand Up @@ -662,20 +661,7 @@ removeQuantity m asset = setQuantity m asset TokenQuantity.zero
-- | Get the largest quantity from this map.
--
maximumQuantity :: TokenMap -> TokenQuantity
maximumQuantity
= Map.foldl' (\a -> Map.foldr findMaximum a . MonoidMap.toMap) zero
. MonoidMap.toMap
. unTokenMap
where
zero :: TokenQuantity
zero = TokenQuantity 0

findMaximum :: TokenQuantity -> TokenQuantity -> TokenQuantity
findMaximum challenger champion
| challenger > champion =
challenger
| otherwise =
champion
maximumQuantity = F.foldl' (F.foldr max) mempty . unTokenMap

--------------------------------------------------------------------------------
-- Partitioning
Expand Down
Expand Up @@ -264,6 +264,8 @@ spec =
property prop_adjustQuantity_hasQuantity
it "prop_maximumQuantity_all" $
property prop_maximumQuantity_all
it "prop_maximumQuantity_mempty" $
property prop_maximumQuantity_mempty

parallel $ describe "Queries" $ do

Expand Down Expand Up @@ -705,6 +707,9 @@ prop_maximumQuantity_all b =
where
maxQ = TokenMap.maximumQuantity b

prop_maximumQuantity_mempty :: Property
prop_maximumQuantity_mempty = TokenMap.maximumQuantity mempty === mempty

--------------------------------------------------------------------------------
-- Queries
--------------------------------------------------------------------------------
Expand Down

0 comments on commit ccd1533

Please sign in to comment.