diff --git a/src/Dodge/Combine.hs b/src/Dodge/Combine.hs index 2c5913ed7..448938b01 100644 --- a/src/Dodge/Combine.hs +++ b/src/Dodge/Combine.hs @@ -18,7 +18,7 @@ import Dodge.Module import Multiset import SimpleTrie -import Data.Foldable +--import Data.Foldable import Data.Map.Merge.Strict import Control.Monad import Control.Lens @@ -26,7 +26,7 @@ import Data.Bifunctor import qualified Data.IntMap.Strict as IM --import qualified Data.IntSet as IS import qualified Data.Map.Strict as M -import Data.Map.Merge.Strict +--import Data.Map.Merge.Strict import Data.Maybe import Data.List (scanl',sortOn,sort) @@ -57,6 +57,7 @@ combineItemListYouX = map (first f) . lookupItems' . yourInv combineItemListYou' :: World -> [([Int],(Item,[String]))] combineItemListYou' w = map (cmm (yourInv w)) $ combineItemListYouX w +combineItemListYou :: World -> [([Int],Item)] combineItemListYou = map (second fst) . combineItemListYou' cmm :: IM.IntMap Item -> ([Int],Item) -> ([Int],(Item,[String])) @@ -77,17 +78,14 @@ cMod = mergeA (filterAMissing f) (zipWithAMatched g) where - f k EMPTYMODULE = ([],False) - f k md = ([rm "REMOVES" md],False) - f' k EMPTYMODULE = ([],True) - f' k md = ([rm "KEEPS" md],True) - g k EMPTYMODULE md = ([],md) - g k md EMPTYMODULE = ([],md) - g k md1 md2 = ([rm "REPLACES" md1 ++ rm " WITH " md2],md2) + f _ EMPTYMODULE = ([],False) + f _ md = ([rm "REMOVES" md],False) + g _ EMPTYMODULE md = ([],md) + g _ md EMPTYMODULE = ([],md) + g _ md1 md2 = ([rm "REPLACES" md1 ++ rm " WITH " md2],md2) rm str md = str ++ " "++fullModuleName md - sm k = show k ++ ":" - +fullModuleName :: ItemModuleType -> [Char] fullModuleName = fromMaybe "EMPTYMODULE" . moduleName