module Funcons.Operations.Libraries where import qualified Data.Map as M import Funcons.Operations.Expr type Library t = M.Map OP (ValueOp t) libFromList :: [(OP, ValueOp t)] -> Library t libFromList :: [(OP, ValueOp t)] -> Library t libFromList = [(OP, ValueOp t)] -> Library t forall k a. Ord k => [(k, a)] -> Map k a M.fromList libLookup :: OP -> Library t -> Maybe (ValueOp t) libLookup :: OP -> Library t -> Maybe (ValueOp t) libLookup = OP -> Library t -> Maybe (ValueOp t) forall k a. Ord k => k -> Map k a -> Maybe a M.lookup libUnite :: [Library t] -> Library t libUnite :: [Library t] -> Library t libUnite = [Library t] -> Library t forall (f :: * -> *) k a. (Foldable f, Ord k) => f (Map k a) -> Map k a M.unions