1{-# LANGUAGE CPP #-} 2 3-- | Strict @Map@. Import as: 4-- 5-- > import qualified RIO.Map as Map 6-- 7-- This module does not export any partial or unchecked functions. For those, 8-- see "RIO.Map.Partial" and "RIO.Map.Unchecked" 9module RIO.Map 10 ( 11 -- * Map type 12 Data.Map.Strict.Map 13 14 -- * Operators 15#if MIN_VERSION_containers(0,5,9) 16 , (Data.Map.Strict.!?) 17#endif 18 , (Data.Map.Strict.\\) 19 20 -- * Query 21 , Data.Map.Strict.null 22 , Data.Map.Strict.size 23 , Data.Map.Strict.member 24 , Data.Map.Strict.notMember 25 , Data.Map.Strict.lookup 26 , Data.Map.Strict.findWithDefault 27 , Data.Map.Strict.lookupLT 28 , Data.Map.Strict.lookupGT 29 , Data.Map.Strict.lookupLE 30 , Data.Map.Strict.lookupGE 31 32 -- * Construction 33 , Data.Map.Strict.empty 34 , Data.Map.Strict.singleton 35 36 -- ** Insertion 37 , Data.Map.Strict.insert 38 , Data.Map.Strict.insertWith 39 , Data.Map.Strict.insertWithKey 40 , Data.Map.Strict.insertLookupWithKey 41 42 -- ** Delete\/Update 43 , Data.Map.Strict.delete 44 , Data.Map.Strict.adjust 45 , Data.Map.Strict.adjustWithKey 46 , Data.Map.Strict.update 47 , Data.Map.Strict.updateWithKey 48 , Data.Map.Strict.updateLookupWithKey 49 , Data.Map.Strict.alter 50#if MIN_VERSION_containers(0,5,8) 51 , Data.Map.Strict.alterF 52#endif 53 54 -- * Combine 55 56 -- ** Union 57 , Data.Map.Strict.union 58 , Data.Map.Strict.unionWith 59 , Data.Map.Strict.unionWithKey 60 , Data.Map.Strict.unions 61 , Data.Map.Strict.unionsWith 62 63 -- ** Difference 64 , Data.Map.Strict.difference 65 , Data.Map.Strict.differenceWith 66 , Data.Map.Strict.differenceWithKey 67 68 -- ** Intersection 69 , Data.Map.Strict.intersection 70 , Data.Map.Strict.intersectionWith 71 , Data.Map.Strict.intersectionWithKey 72 73 -- ** General combining functions 74 -- | See "Data.Map.Merge.Strict" 75 76 -- ** Deprecated general combining function 77 78 , Data.Map.Strict.mergeWithKey 79 80 -- * Traversal 81 -- ** Map 82 , Data.Map.Strict.map 83 , Data.Map.Strict.mapWithKey 84 , Data.Map.Strict.traverseWithKey 85#if MIN_VERSION_containers(0,5,8) 86 , Data.Map.Strict.traverseMaybeWithKey 87#endif 88 , Data.Map.Strict.mapAccum 89 , Data.Map.Strict.mapAccumWithKey 90 , Data.Map.Strict.mapAccumRWithKey 91 , Data.Map.Strict.mapKeys 92 , Data.Map.Strict.mapKeysWith 93 94 -- * Folds 95 , Data.Map.Strict.foldr 96 , Data.Map.Strict.foldl 97 , Data.Map.Strict.foldrWithKey 98 , Data.Map.Strict.foldlWithKey 99 , Data.Map.Strict.foldMapWithKey 100 101 -- ** Strict folds 102 , Data.Map.Strict.foldr' 103 , Data.Map.Strict.foldl' 104 , Data.Map.Strict.foldrWithKey' 105 , Data.Map.Strict.foldlWithKey' 106 107 -- * Conversion 108 , Data.Map.Strict.elems 109 , Data.Map.Strict.keys 110 , Data.Map.Strict.assocs 111 , Data.Map.Strict.keysSet 112 , Data.Map.Strict.fromSet 113 114 -- ** Lists 115 , Data.Map.Strict.toList 116 , Data.Map.Strict.fromList 117 , Data.Map.Strict.fromListWith 118 , Data.Map.Strict.fromListWithKey 119 120 -- ** Ordered lists 121 , Data.Map.Strict.toAscList 122#if MIN_VERSION_containers(0,5,8) 123 , Data.Map.Strict.toDescList 124#endif 125 126 -- * Filter 127 , Data.Map.Strict.filter 128 , Data.Map.Strict.filterWithKey 129#if MIN_VERSION_containers(0,5,8) 130 , Data.Map.Strict.restrictKeys 131 , Data.Map.Strict.withoutKeys 132#endif 133 , Data.Map.Strict.partition 134 , Data.Map.Strict.partitionWithKey 135 136#if MIN_VERSION_containers(0,5,8) 137 , Data.Map.Strict.takeWhileAntitone 138 , Data.Map.Strict.dropWhileAntitone 139 , Data.Map.Strict.spanAntitone 140#endif 141 142 , Data.Map.Strict.mapMaybe 143 , Data.Map.Strict.mapMaybeWithKey 144 , Data.Map.Strict.mapEither 145 , Data.Map.Strict.mapEitherWithKey 146 147 , Data.Map.Strict.split 148 , Data.Map.Strict.splitLookup 149 , Data.Map.Strict.splitRoot 150 151 -- * Submap 152 , Data.Map.Strict.isSubmapOf 153 , Data.Map.Strict.isSubmapOfBy 154 , Data.Map.Strict.isProperSubmapOf 155 , Data.Map.Strict.isProperSubmapOfBy 156 157 -- * Indexed 158 , Data.Map.Strict.lookupIndex 159 , Data.Map.Strict.elemAt 160 , Data.Map.Strict.deleteAt 161#if MIN_VERSION_containers(0,5,8) 162 , Data.Map.Strict.take 163 , Data.Map.Strict.drop 164 , Data.Map.Strict.splitAt 165#endif 166 167 -- * Min\/Max 168#if MIN_VERSION_containers(0,5,9) 169 , Data.Map.Strict.lookupMin 170 , Data.Map.Strict.lookupMax 171#endif 172 , Data.Map.Strict.deleteMin 173 , Data.Map.Strict.deleteMax 174 , Data.Map.Strict.updateMin 175 , Data.Map.Strict.updateMax 176 , Data.Map.Strict.updateMinWithKey 177 , Data.Map.Strict.updateMaxWithKey 178 , Data.Map.Strict.minView 179 , Data.Map.Strict.maxView 180 , Data.Map.Strict.minViewWithKey 181 , Data.Map.Strict.maxViewWithKey 182 183 -- * Debugging 184 , Data.Map.Strict.showTree 185 , Data.Map.Strict.showTreeWith 186 , Data.Map.Strict.valid 187 ) where 188 189import qualified Data.Map.Strict 190