module Hydra.Dsl.Lib.Maps where import Hydra.Phantoms import Hydra.Sources.Libraries import qualified Hydra.Dsl.Terms as Terms import Data.Map empty :: TTerm (Map k v) empty :: forall k v. TTerm (Map k v) empty = Term -> TTerm (Map k v) forall a. Term -> TTerm a TTerm (Term -> TTerm (Map k v)) -> Term -> TTerm (Map k v) forall a b. (a -> b) -> a -> b $ Name -> Term Terms.primitive Name _maps_empty fromList :: TTerm ([(k, v)] -> Map k v) fromList :: forall k v. TTerm ([(k, v)] -> Map k v) fromList = Term -> TTerm ([(k, v)] -> Map k v) forall a. Term -> TTerm a TTerm (Term -> TTerm ([(k, v)] -> Map k v)) -> Term -> TTerm ([(k, v)] -> Map k v) forall a b. (a -> b) -> a -> b $ Name -> Term Terms.primitive Name _maps_fromList insert :: TTerm (k -> v -> Map k v -> Map k v) insert :: forall k v. TTerm (k -> v -> Map k v -> Map k v) insert = Term -> TTerm (k -> v -> Map k v -> Map k v) forall a. Term -> TTerm a TTerm (Term -> TTerm (k -> v -> Map k v -> Map k v)) -> Term -> TTerm (k -> v -> Map k v -> Map k v) forall a b. (a -> b) -> a -> b $ Name -> Term Terms.primitive Name _maps_insert isEmpty :: TTerm (Map k v -> Bool) isEmpty :: forall k v. TTerm (Map k v -> Bool) isEmpty = Term -> TTerm (Map k v -> Bool) forall a. Term -> TTerm a TTerm (Term -> TTerm (Map k v -> Bool)) -> Term -> TTerm (Map k v -> Bool) forall a b. (a -> b) -> a -> b $ Name -> Term Terms.primitive Name _maps_isEmpty keys :: TTerm (Map k v -> [k]) keys :: forall k v. TTerm (Map k v -> [k]) keys = Term -> TTerm (Map k v -> [k]) forall a. Term -> TTerm a TTerm (Term -> TTerm (Map k v -> [k])) -> Term -> TTerm (Map k v -> [k]) forall a b. (a -> b) -> a -> b $ Name -> Term Terms.primitive Name _maps_keys lookup :: TTerm (k -> Map k v -> Maybe v) lookup :: forall k v. TTerm (k -> Map k v -> Maybe v) lookup = Term -> TTerm (k -> Map k v -> Maybe v) forall a. Term -> TTerm a TTerm (Term -> TTerm (k -> Map k v -> Maybe v)) -> Term -> TTerm (k -> Map k v -> Maybe v) forall a b. (a -> b) -> a -> b $ Name -> Term Terms.primitive Name _maps_lookup map :: TTerm ((v1 -> v2) -> Map k v1 -> Map k v2) map :: forall v1 v2 k. TTerm ((v1 -> v2) -> Map k v1 -> Map k v2) map = Term -> TTerm ((v1 -> v2) -> Map k v1 -> Map k v2) forall a. Term -> TTerm a TTerm (Term -> TTerm ((v1 -> v2) -> Map k v1 -> Map k v2)) -> Term -> TTerm ((v1 -> v2) -> Map k v1 -> Map k v2) forall a b. (a -> b) -> a -> b $ Name -> Term Terms.primitive Name _maps_map mapKeys :: TTerm ((k1 -> k2) -> Map k1 v -> Map k2 v) mapKeys :: forall k1 k2 v. TTerm ((k1 -> k2) -> Map k1 v -> Map k2 v) mapKeys = Term -> TTerm ((k1 -> k2) -> Map k1 v -> Map k2 v) forall a. Term -> TTerm a TTerm (Term -> TTerm ((k1 -> k2) -> Map k1 v -> Map k2 v)) -> Term -> TTerm ((k1 -> k2) -> Map k1 v -> Map k2 v) forall a b. (a -> b) -> a -> b $ Name -> Term Terms.primitive Name _maps_mapKeys remove :: TTerm (k -> Map k v -> Map k v) remove :: forall k v. TTerm (k -> Map k v -> Map k v) remove = Term -> TTerm (k -> Map k v -> Map k v) forall a. Term -> TTerm a TTerm (Term -> TTerm (k -> Map k v -> Map k v)) -> Term -> TTerm (k -> Map k v -> Map k v) forall a b. (a -> b) -> a -> b $ Name -> Term Terms.primitive Name _maps_remove singleton :: TTerm (k -> v -> Map k v) singleton :: forall k v. TTerm (k -> v -> Map k v) singleton = Term -> TTerm (k -> v -> Map k v) forall a. Term -> TTerm a TTerm (Term -> TTerm (k -> v -> Map k v)) -> Term -> TTerm (k -> v -> Map k v) forall a b. (a -> b) -> a -> b $ Name -> Term Terms.primitive Name _maps_singleton size :: TTerm (Map k v -> Int) size :: forall k v. TTerm (Map k v -> Int) size = Term -> TTerm (Map k v -> Int) forall a. Term -> TTerm a TTerm (Term -> TTerm (Map k v -> Int)) -> Term -> TTerm (Map k v -> Int) forall a b. (a -> b) -> a -> b $ Name -> Term Terms.primitive Name _maps_size toList :: TTerm (Map k v -> [(k, v)]) toList :: forall k v. TTerm (Map k v -> [(k, v)]) toList = Term -> TTerm (Map k v -> [(k, v)]) forall a. Term -> TTerm a TTerm (Term -> TTerm (Map k v -> [(k, v)])) -> Term -> TTerm (Map k v -> [(k, v)]) forall a b. (a -> b) -> a -> b $ Name -> Term Terms.primitive Name _maps_toList values :: TTerm (Map k v -> [v]) values :: forall k v. TTerm (Map k v -> [v]) values = Term -> TTerm (Map k v -> [v]) forall a. Term -> TTerm a TTerm (Term -> TTerm (Map k v -> [v])) -> Term -> TTerm (Map k v -> [v]) forall a b. (a -> b) -> a -> b $ Name -> Term Terms.primitive Name _maps_values