module Bio.Utils.Map ( (!?!) ) where import GHC.Stack (HasCallStack) import Data.Map.Strict (Map, (!?)) import Data.Maybe (fromMaybe) infix 9 !?! (!?!) :: (HasCallStack, Ord k, Show k, Show a) => Map k a -> k -> a !?! :: Map k a -> k -> a (!?!) Map k a m k k = a -> Maybe a -> a forall a. a -> Maybe a -> a fromMaybe ([Char] -> a forall a. HasCallStack => [Char] -> a error ([Char] -> a) -> [Char] -> a forall a b. (a -> b) -> a -> b $ [Char] "cobot-io: No key " [Char] -> [Char] -> [Char] forall a. [a] -> [a] -> [a] ++ k -> [Char] forall a. Show a => a -> [Char] show k k [Char] -> [Char] -> [Char] forall a. [a] -> [a] -> [a] ++ [Char] " in Map: " [Char] -> [Char] -> [Char] forall a. [a] -> [a] -> [a] ++ Map k a -> [Char] forall a. Show a => a -> [Char] show Map k a m) (Maybe a -> a) -> Maybe a -> a forall a b. (a -> b) -> a -> b $ Map k a m Map k a -> k -> Maybe a forall k a. Ord k => Map k a -> k -> Maybe a !? k k