Changeset 2433 for src/Pugs/Types/Hash.hs
- Timestamp:
- 04/28/05 13:59:35 (4 years ago)
- svk:copy_cache_prev:
- 3914
- Files:
-
- 1 modified
-
src/Pugs/Types/Hash.hs (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Pugs/Types/Hash.hs
r2221 r2433 6 6 import Pugs.Internals 7 7 import Pugs.Types 8 import qualified Data.Map as Map 8 9 9 10 type Index = VStr … … 16 17 keys <- fetchKeys hv 17 18 vals <- mapM (fetchVal hv) keys 18 return $ keys `zip` vals19 return . Map.fromList $ keys `zip` vals 19 20 store :: a -> VHash -> Eval () 20 21 store hv vals = do 21 22 clear hv 22 forM_ vals$ \(key, val) -> do23 forM_ (Map.assocs vals) $ \(key, val) -> do 23 24 storeVal hv key val 24 25 fetchElem :: a -> Index -> Eval (IVar VScalar) -- autovivify … … 40 41 fetchKeys :: a -> Eval [Index] 41 42 fetchKeys hv = do 42 pairs <- fetch hv43 return $ map fst pairs43 vals <- fetch hv 44 return $ Map.keys vals 44 45 deleteElem :: a -> Index -> Eval () 45 46 existsElem :: a -> Index -> Eval VBool
