This file is indexed.

/usr/lib/hugs/packages/base/Data/FunctorM.hs is in libhugs-base-bundled 98.200609.21-5.3ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
-----------------------------------------------------------------------------
-- |
-- Module      :  Data.FunctorM
-- Copyright   :  (c) The University of Glasgow 2005
-- License     :  BSD-style (see the file libraries/base/LICENSE)
-- 
-- Maintainer  :  libraries@haskell.org
-- Stability   :  provisional
-- Portability :  portable
--
-- fmapM generalises fmap, just as mapM generalises map.
--
-- NOTE: This module is DEPRECATED.
-- The classes in "Data.Foldable" and "Data.Traversable" provide a
-- more general interface.
--
-----------------------------------------------------------------------------

module Data.FunctorM
{-# DEPRECATED "Use the more general Data.Foldable and Data.Traversable instead" #-}
  (FunctorM(..)) where

import Prelude
import Data.Array

class FunctorM f where
    fmapM  :: Monad m => (a -> m b) -> f a -> m (f b)
    fmapM_ :: Monad m => (a -> m b) -> f a -> m ()

    fmapM_ f t = fmapM f t >> return ()

instance FunctorM [] where
    fmapM  = mapM
    fmapM_ = mapM_

instance FunctorM Maybe where
    fmapM _ Nothing = return Nothing
    fmapM f (Just x) = f x >>= return . Just 

    fmapM_ _ Nothing = return ()
    fmapM_ f (Just x) = f x >> return ()

instance Ix i => FunctorM (Array i) where
    fmapM f a = do 
	a' <- sequence [ f e >>= return . (,) i | (i,e) <- assocs a]
	return (array (bounds a) a')