Skip to content

Instantly share code, notes, and snippets.

@master-q
Created March 5, 2013 13:30
Show Gist options
  • Save master-q/5090300 to your computer and use it in GitHub Desktop.
Save master-q/5090300 to your computer and use it in GitHub Desktop.
ghci使わなくても関数の型簡単に調べる方法を見つけた #ghc #haskell
diff --git a/Makefile.am b/Makefile.am
index 2838240..967a174 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -64,7 +64,7 @@ GHCLANG= -XTypeFamilies -XViewPatterns -XUndecidableInstances -XOverlappingInsta
-XPatternGuards -XLiberalTypeSynonyms -XRankNTypes -XTypeOperators \
-XEmptyDataDecls -XKindSignatures
-GHCOPTS= $(HSOPTS) -XBangPatterns -O @GHCFLAGS@ $(GHCDEBUGOPTS) $(GHCINC) $(PACKAGES) $(GHCLANG)
+GHCOPTS= $(HSOPTS) -XBangPatterns -O @GHCFLAGS@ $(GHCDEBUGOPTS) $(GHCINC) $(PACKAGES) $(GHCLANG) -ddump-types
LIB_OPTIONS=$(RTSOPTS) $(AJHC_TEST) -L- -L.
include library_deps.make
This file has been truncated, but you can view the full file.
echo -n "`sed -ne 's/^ tagged \(.*\)/\1/p' ChangeLog`-`grep -c '^ \*' ChangeLog`" > src/data/shortchange.txt
perl ./utils/op_raw.prl src/RawFiles src/data/ViaGhc.hs src/data/prelude.m4 src/data/targets.ini rts/rts/constants.h rts/rts/stableptr.c rts/sys/queue.h rts/HsFFI.h rts/sys/wsize.h rts/sys/bitarray.h ChangeLog src/data/shortchange.txt rts/rts/slub.c rts/rts/gc_jgc.c rts/rts/gc_jgc.h rts/rts/profile.c rts/rts/profile.h rts/rts/cdefs.h rts/rts/rts_support.c rts/rts/rts_support.h rts/rts/gc.h rts/rts/gc_none.c rts/rts/gc_none.h rts/rts/jhc_rts.c rts/rts/jhc_rts.h rts/lib/lib_cbits.c rts/jhc_rts_header.h rts/lib/lib_cbits.h rts/rts/gc_jgc_internal.h > src/RawFiles.hs
happy -a -g -c src/FrontEnd/HsParser.y -o src/FrontEnd/HsParser.hs
shift/reduce conflicts: 60
reduce/reduce conflicts: 74
perl ./utils/opt_sets.prl -n src/FlagDump.flags src/FlagDump.flags > src/FlagDump.hs
Use of uninitialized value $cat in hash element at ./utils/opt_sets.prl line 45, <> line 79.
perl ./utils/opt_sets.prl -n src/FlagOpts.flags src/FlagOpts.flags > src/FlagOpts.hs
Use of uninitialized value $cat in hash element at ./utils/opt_sets.prl line 45, <> line 47.
Use of uninitialized value $cat in hash element at ./utils/opt_sets.prl line 45, <> line 47.
perl utils/op_names.prl > src/Name/Prim.hs || rm -f src/Name/Prim.hs
perl ./utils/gen_props.prl src/data/props.txt > src/Info/Properties.hs || rm -f src/Info/Properties.hs
make all-am
make[1]: ディレクトリ `/home/kiwamu/src/ajhc' に入ります
mkdir -p `echo src/StringTable/Atom.hs | sed -e 's@/[^/]*$@@'`
/usr/bin/hsc2hs -I./src/data -I./src/StringTable -I./src/cbits -I./src/cbits -o src/StringTable/Atom.hs src/StringTable/Atom.hsc
mkdir -p `echo src/StringTable/StringTable_cbits.o | sed -e 's@/[^/]*$@@'`
/usr/bin/ghc -I./src/data -I./src/StringTable -I./src/cbits -I./src/cbits -optc-std=c99 -optc-O2 -optc-Wall src/StringTable/StringTable_cbits.c -c -o src/StringTable/StringTable_cbits.o
mkdir -p `echo src/cbits/md5sum.o | sed -e 's@/[^/]*$@@'`
/usr/bin/ghc -I./src/data -I./src/StringTable -I./src/cbits -I./src/cbits -optc-std=c99 -optc-O2 -optc-Wall src/cbits/md5sum.c -c -o src/cbits/md5sum.o
mkdir -p `echo src/cbits/lookup3.o | sed -e 's@/[^/]*$@@'`
/usr/bin/ghc -I./src/data -I./src/StringTable -I./src/cbits -I./src/cbits -optc-std=c99 -optc-O2 -optc-Wall src/cbits/lookup3.c -c -o src/cbits/lookup3.o
/usr/bin/ghc -XBangPatterns -O -hide-all-packages -package base -package syb -package old-time -package pretty -package readline -W -fno-warn-unused-matches -fwarn-type-defaults -i -i./compat/haskell98 -i./drift_processed -i./src -i./src -odir ./src -hidir ./src -I./src -I./src -hide-all-packages -package base -package fgl -package regex-compat -package random -package array -package directory -package bytestring -package binary -package mtl -package containers -package unix -package utf8-string -package zlib -package HsSyck -package filepath -package process -XTypeFamilies -XViewPatterns -XUndecidableInstances -XOverlappingInstances -XRecordWildCards -XRecursiveDo -XTupleSections -XParallelListComp -XGeneralizedNewtypeDeriving -XScopedTypeVariables -XFlexibleInstances -XTypeSynonymInstances -XMultiParamTypeClasses -XDeriveDataTypeable -XNoMonoLocalBinds -XNamedFieldPuns -XForeignFunctionInterface -XUnliftedFFITypes -XImplicitParams -XUnboxedTuples -XStandaloneDeriving -XDeriveFunctor -XDeriveFoldable -XDeriveTraversable -XDeriveGeneric -XFlexibleContexts -XConstrainedClassMethods -XFunctionalDependencies -XMagicHash -XPolymorphicComponents -XExistentialQuantification -XUnicodeSyntax -XPostfixOperators -XPatternGuards -XLiberalTypeSynonyms -XRankNTypes -XTypeOperators -XEmptyDataDecls -XKindSignatures -ddump-types --make src/Main.hs src/StringTable/StringTable_cbits.o src/cbits/md5sum.o src/cbits/lookup3.o -o ajhc
on the commandline:
Warning: -XRecursiveDo is deprecated: use -XDoRec or pragma {-# LANGUAGE DoRec #-} instead
[ 1 of 182] Compiling Util.ReaderWriter ( src/Util/ReaderWriter.hs, src/Util/ReaderWriter.o )
TYPE SIGNATURES
_runReaderWriter :: forall r w a.
ReaderWriter r w a -> r -> (# a, w #)
runReaderWriter :: forall r w a. ReaderWriter r w a -> r -> (a, w)
TYPE CONSTRUCTORS
newtype ReaderWriter r w a
RecFlag NonRecursive
= ReaderWriter :: forall r w a.
(r -> (# a, w #)) -> ReaderWriter r w a
Stricts: _
Fields: _runReaderWriter
FamilyInstance: none
COERCION AXIOMS
axiom Util.ReaderWriter.NTCo:ReaderWriter [r, w, a]
:: ReaderWriter r w a ~# (r -> (# a, w #))
INSTANCES
instance [overlap ok] Monoid w => MonadReader r (ReaderWriter r w)
-- Defined at src/Util/ReaderWriter.hs:36:10
instance [overlap ok] Monoid w => MonadWriter w (ReaderWriter r w)
-- Defined at src/Util/ReaderWriter.hs:29:10
instance [overlap ok] Monoid w => Monad (ReaderWriter r w)
-- Defined at src/Util/ReaderWriter.hs:19:10
instance [overlap ok] Functor (ReaderWriter r w)
-- Defined at src/Util/ReaderWriter.hs:15:10
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp, mtl-2.1.1,
transformers-0.3.0.0]
[ 2 of 182] Compiling Util.Once ( src/Util/Once.hs, src/Util/Once.o )
TYPE SIGNATURES
altOnce :: forall b. Once () -> IO b -> IO b -> IO b
altOnceMap :: forall a b.
Ord a =>
OnceMap a () -> a -> IO b -> IO b -> IO b
newOnce :: forall a. IO (Once a)
newOnceMap :: forall a b. Ord a => IO (OnceMap a b)
onceMapElems :: forall a b. OnceMap a b -> IO [b]
onceMapKeys :: forall a b. OnceMap a b -> IO [a]
onceMapToList :: forall a b. OnceMap a b -> IO [(a, b)]
runOnce :: forall a. Once a -> IO a -> IO a
runOnceMap :: forall a b. Ord a => OnceMap a b -> a -> IO b -> IO b
TYPE CONSTRUCTORS
newtype Once a
RecFlag NonRecursive
= Once :: forall a. (IORef (Maybe a)) -> Once a Stricts: _
FamilyInstance: none
newtype OnceMap a b
RecFlag NonRecursive
= OnceMap :: forall a b. (IORef (Map.Map a b)) -> OnceMap a b
Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom Util.Once.NTCo:Once [a] :: Once a ~# IORef (Maybe a)
axiom Util.Once.NTCo:OnceMap [a, b]
:: OnceMap a b ~# IORef (Map.Map a b)
INSTANCES
instance [overlap ok] Typeable1 Once
-- Defined at src/Util/Once.hs:25:14
instance [overlap ok] Typeable2 OnceMap
-- Defined at src/Util/Once.hs:60:14
Dependent modules: []
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp]
[ 3 of 182] Compiling Util.RWS ( src/Util/RWS.hs, src/Util/RWS.o )
TYPE SIGNATURES
runRWS :: forall r w s a. RWS r w s a -> r -> s -> (a, s, w)
runRWS' :: forall r w s a. RWS r w s a -> r -> s -> (# a, s, w #)
TYPE CONSTRUCTORS
newtype RWS r w s a
RecFlag NonRecursive
= RWS :: forall r w s a. (r -> s -> (# a, s, w #)) -> RWS r w s a
Stricts: _
Fields: runRWS'
FamilyInstance: none
COERCION AXIOMS
axiom Util.RWS.NTCo:RWS [r, w, s, a]
:: RWS r w s a ~# (r -> s -> (# a, s, w #))
INSTANCES
instance [overlap ok] Monoid w => MonadState s (RWS r w s)
-- Defined at src/Util/RWS.hs:64:10
instance [overlap ok] Monoid w => MonadWriter w (RWS r w s)
-- Defined at src/Util/RWS.hs:57:10
instance [overlap ok] Monoid w => MonadReader r (RWS r w s)
-- Defined at src/Util/RWS.hs:53:10
instance [overlap ok] Monoid w => Monad (RWS r w s)
-- Defined at src/Util/RWS.hs:43:10
instance [overlap ok] Functor (RWS r w s)
-- Defined at src/Util/RWS.hs:39:10
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp, mtl-2.1.1,
transformers-0.3.0.0]
[ 4 of 182] Compiling Util.UnionFind ( src/Util/UnionFind.hs, src/Util/UnionFind.o )
TYPE SIGNATURES
find :: forall (m :: * -> *) w a.
MonadIO m =>
Element w a -> m (Element w a)
fromElement :: forall w a. Element w a -> a
getW :: forall (m :: * -> *) w a. MonadIO m => Element w a -> m w
new :: forall (m :: * -> *) w a.
MonadIO m =>
w -> a -> m (Element w a)
new_ :: forall (m :: * -> *) a. MonadIO m => a -> m (Element () a)
putW :: forall (m :: * -> *) w a.
MonadIO m =>
Element w a -> w -> m ()
union :: forall (m :: * -> *) w a.
MonadIO m =>
(w -> w -> w) -> Element w a -> Element w a -> m ()
union_ :: forall (m :: * -> *) a.
MonadIO m =>
Element () a -> Element () a -> m ()
updateW :: forall (m :: * -> *) w a.
MonadIO m =>
(w -> w) -> Element w a -> m ()
TYPE CONSTRUCTORS
data Element w a
RecFlag NonRecursive
= Element :: forall w a.
a -> Unique -> (IORef (Link w a)) -> Element w a
HasWrapper
Stricts: _ ! {-# UNPACK #-} !
FamilyInstance: none
data Link w a
RecFlag NonRecursive
= Weight :: forall w a. Int -> w -> Link w a
HasWrapper
Stricts: {-# UNPACK #-} ! _ |
Next :: forall w a. (Element w a) -> Link w a Stricts: _
FamilyInstance: none
type T
= Element
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Show a => Show (Element w a)
-- Defined at src/Util/UnionFind.hs:89:10
instance [overlap ok] Ord (Element w a)
-- Defined at src/Util/UnionFind.hs:84:10
instance [overlap ok] Eq (Element w a)
-- Defined at src/Util/UnionFind.hs:80:10
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp, mtl-2.1.1,
transformers-0.3.0.0]
[ 5 of 182] Compiling Util.UnionSolve ( src/Util/UnionSolve.hs, src/Util/UnionSolve.o )
TYPE SIGNATURES
Util.UnionSolve.$con2tag_Topped :: forall a.
Topped a -> ghc-prim:GHC.Prim.Int#
Util.UnionSolve.$dmeq :: forall a. Fixable a => a -> a -> Bool
Util.UnionSolve.$dmisBottom :: forall a. Fixable a => a -> Bool
Util.UnionSolve.$dmisTop :: forall a. Fixable a => a -> Bool
Util.UnionSolve.$dmshowFixable :: forall a.
Fixable a =>
a -> String
@<= :: forall l v. v -> l -> C l v
@<=@ :: forall l v. v -> v -> C l v
@= :: forall l v. v -> l -> C l v
@=@ :: forall l v. v -> v -> C l v
@>= :: forall l v. v -> l -> C l v
@>=@ :: forall l v. v -> v -> C l v
bool :: forall t. t -> t -> Bool -> t
cAnnotate :: forall l v. String -> C l v -> C l v
cL :: forall l v. v -> Op -> l -> C l v
cV :: forall l v. v -> Op -> v -> C l v
check :: forall a. Fixable a => Op -> a -> a -> Bool
equals :: forall l v.
(Fixable l, Ord v) =>
Either v l -> Either v l -> C l v
isgte :: forall l v.
(Fixable l, Ord v) =>
Either v l -> Either v l -> C l v
islte :: forall l v.
(Fixable l, Ord v) =>
Either v l -> Either v l -> C l v
prepareConstraints :: forall v l.
Ord v =>
C l v -> IO ([CL l (RS l v)], Map.Map v (RS l v))
resultLB :: forall l a. Result l a -> Maybe l
resultLBV :: forall l a. Result l a -> [a]
resultRep :: forall l a. Result l a -> a
resultUB :: forall l a. Result l a -> Maybe l
resultUBV :: forall l a. Result l a -> [a]
resultValue :: forall l a. Result l a -> l
showResult :: forall a l. (Show l, Show a) => Result l a -> [Char]
solve :: forall l v.
(Fixable l, Show l, Show v, Ord v) =>
(String -> IO ())
-> C l v -> IO (Map.Map v v, Map.Map v (Result l v))
TYPE CONSTRUCTORS
newtype C l v
RecFlag NonRecursive
= C :: forall l v. (S.Seq (CL l v)) -> C l v Stricts: _
FamilyInstance: none
data CL l v
RecFlag NonRecursive
= CV :: forall l v. v -> Op -> v -> CL l v Stricts: _ _ _ |
CL :: forall l v. v -> Op -> l -> CL l v Stricts: _ _ _ |
CLAnnotate :: forall l v. String -> (CL l v) -> CL l v Stricts: _ _
FamilyInstance: none
class Fixable a
RecFlag NonRecursive
isBottom {- Has default method -} :: a -> Bool
isTop {- Has default method -} :: a -> Bool
join :: a -> a -> a
meet :: a -> a -> a
eq {- Has default method -} :: a -> a -> Bool
lte :: a -> a -> Bool
showFixable {- Has default method -} :: a -> String
data Op
RecFlag NonRecursive
= OpLte :: Op | OpEq :: Op | OpGte :: Op
FamilyInstance: none
data R l a
RecFlag NonRecursive
= R :: forall l a. l -> R l a Stricts: _ |
Ri :: forall l a.
(Maybe l) -> (Set.Set (RS l a)) -> (Maybe l) -> (Set.Set (RS l a))
-> R l a
Stricts: _ _ _ _
FamilyInstance: none
type RS l a
= Element (R l a) a
FamilyInstance: none
data Result l a
RecFlag NonRecursive
= ResultJust :: forall l a. a -> l -> Result l a
Stricts: _ _
Fields: resultRep resultValue |
ResultBounded :: forall l a.
a -> (Maybe l) -> (Maybe l) -> [a] -> [a] -> Result l a
Stricts: _ _ _ _ _
Fields: resultRep resultLB resultUB resultLBV resultUBV
FamilyInstance: none
data Topped a
RecFlag NonRecursive
= Only :: forall a. a -> Topped a Stricts: _ |
Top :: forall a. Topped a
FamilyInstance: none
COERCION AXIOMS
axiom Util.UnionSolve.NTCo:C [l, v] :: C l v ~# S.Seq (CL l v)
INSTANCES
instance [overlap ok] Monoid (C l v)
-- Defined at src/Util/UnionSolve.hs:51:14
instance [overlap ok] (Show l, Show a) => Show (R l a)
-- Defined at src/Util/UnionSolve.hs:112:14
instance [overlap ok] Eq a => Eq (Topped a)
-- Defined at src/Util/UnionSolve.hs:352:14
instance [overlap ok] Ord a => Ord (Topped a)
-- Defined at src/Util/UnionSolve.hs:352:17
instance [overlap ok] Show a => Show (Topped a)
-- Defined at src/Util/UnionSolve.hs:352:21
instance [overlap ok] Fixable a => Fixable (Topped a)
-- Defined at src/Util/UnionSolve.hs:355:10
instance [overlap ok] Fixable a => Fixable (Maybe a)
-- Defined at src/Util/UnionSolve.hs:334:10
instance [overlap ok] (Fixable a, Fixable b) => Fixable (a, b)
-- Defined at src/Util/UnionSolve.hs:325:10
instance [overlap ok] Fixable Int
-- Defined at src/Util/UnionSolve.hs:319:10
instance [overlap ok] Fixable Bool
-- Defined at src/Util/UnionSolve.hs:310:10
instance [overlap ok] Ord n => Fixable (Set.Set n)
-- Defined at src/Util/UnionSolve.hs:303:10
instance [overlap ok] (Show l, Show a) => Show (Result l a)
-- Defined at src/Util/UnionSolve.hs:289:10
instance [overlap ok] (Show e, Show l) => Show (CL l e)
-- Defined at src/Util/UnionSolve.hs:74:10
instance [overlap ok] (Show e, Show l) => Show (C l e)
-- Defined at src/Util/UnionSolve.hs:71:10
instance [overlap ok] Show Op
-- Defined at src/Util/UnionSolve.hs:61:10
Dependent modules: [(Util.UnionFind, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp, mtl-2.1.1,
transformers-0.3.0.0]
[ 6 of 182] Compiling Support.Transform ( src/Support/Transform.hs, src/Support/Transform.o )
TYPE SIGNATURES
Support.Transform.$con2tag_Iterate :: Iterate
-> ghc-prim:GHC.Prim.Int#
doIterate :: Iterate -> Bool -> Bool
iterateStep :: Iterate -> Iterate
transformCategory :: forall p. TransformParms p -> String
transformDumpProgress :: forall p. TransformParms p -> Bool
transformIterate :: forall p. TransformParms p -> Iterate
transformName :: forall p. TransformParms p -> String
transformOperation :: forall p. TransformParms p -> p -> IO p
transformParms :: forall p. TransformParms p
transformPass :: forall p. TransformParms p -> String
transformSkipNoStats :: forall p. TransformParms p -> Bool
TYPE CONSTRUCTORS
data Iterate
RecFlag NonRecursive
= DontIterate :: Iterate |
IterateMax :: Int -> Iterate HasWrapper Stricts: ! |
IterateExactly :: Int -> Iterate HasWrapper Stricts: ! |
IterateDone :: Iterate
FamilyInstance: none
data TransformParms p
RecFlag NonRecursive
= TransformParms :: forall p.
Iterate -> Bool -> Bool -> (p -> IO p) -> String -> String
-> String -> TransformParms p
Stricts: _ _ _ _ _ _ _
Fields: transformIterate transformDumpProgress transformSkipNoStats transformOperation transformCategory transformPass transformName
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Eq Iterate
-- Defined at src/Support/Transform.hs:25:14
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 7 of 182] Compiling Util.Perhaps ( src/Util/Perhaps.hs, src/Util/Perhaps.o )
TYPE SIGNATURES
Util.Perhaps.$con2tag_Perhaps :: Perhaps -> ghc-prim:GHC.Prim.Int#
TYPE CONSTRUCTORS
data Perhaps
RecFlag NonRecursive
= No :: Perhaps | Maybe :: Perhaps | Yes :: Perhaps
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Typeable Perhaps
-- Defined at src/Util/Perhaps.hs:7:24
instance [overlap ok] Show Perhaps
-- Defined at src/Util/Perhaps.hs:7:14
instance [overlap ok] Read Perhaps
-- Defined at src/Util/Perhaps.hs:7:19
instance [overlap ok] Eq Perhaps
-- Defined at src/Util/Perhaps.hs:7:33
instance [overlap ok] Ord Perhaps
-- Defined at src/Util/Perhaps.hs:7:36
instance [overlap ok] Monoid Perhaps
-- Defined at src/Util/Perhaps.hs:12:10
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 8 of 182] Compiling FrontEnd.DependAnalysis ( src/FrontEnd/DependAnalysis.hs, src/FrontEnd/DependAnalysis.o )
TYPE SIGNATURES
debugBindGroups :: forall name node.
Eq name =>
[[node]]
-> (node -> String) -> (node -> name) -> (node -> [name]) -> String
debugBindGroups_ :: forall name node.
Eq name =>
[[node]]
-> (node -> String)
-> (node -> name)
-> (node -> [name])
-> Int
-> [(Int, [name])]
-> String
expandBindGroup :: forall name node.
Eq name =>
[node]
-> (node -> String)
-> (node -> [name])
-> [(Int, [name])]
-> ([String], [Int], [String])
getBindGroups :: forall name node.
Ord name =>
[node] -> (node -> name) -> (node -> [name]) -> [[node]]
inHistory :: forall name.
Eq name =>
[name] -> [(Int, [name])] -> ([Int], Bool)
listToString :: forall a. [a] -> (a -> String) -> String
searchHistory :: forall name.
Eq name =>
name -> [(Int, [name])] -> Int
showBindGroup :: ([String], [Int], [String]) -> String
wrapString :: String -> String -> String
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp]
[ 9 of 182] Compiling Util.Progress ( src/Util/Progress.hs, src/Util/Progress.o )
TYPE SIGNATURES
extract :: forall k p.
(Ord k, Ord p) =>
Treap k p -> Maybe (k, p, Treap k p)
insertWith :: forall k p.
(Ord k, Ord p) =>
(p -> p -> p) -> k -> p -> Treap k p -> Treap k p
merge :: forall p k. Ord p => Treap k p -> Treap k p -> Treap k p
pBias :: forall k. Progress k -> Double
pDecrement :: forall k. Progress k -> Double
pIncrement :: forall k. Progress k -> Double
pTotal :: forall k. Progress k -> Double
pTreap :: forall k. Progress k -> Treap k Double
progressIONew :: Int -> Int -> Char -> IO (IORef (Progress Char))
progressIOSteps :: IORef (Progress Char) -> [Char] -> IO ()
progressNew :: forall k. Int -> Int -> Progress k
progressStep :: forall k.
Ord k =>
Progress k -> k -> (Progress k, [k])
progressSteps :: forall k.
Ord k =>
Progress k -> [k] -> (Progress k, [k])
toPercent :: Double -> Double
TYPE CONSTRUCTORS
data Progress k
RecFlag NonRecursive
= Progress :: forall k.
(Treap k Double) -> Double -> Double -> Double -> Double
-> Progress k
HasWrapper
Stricts: _ ! ! ! !
Fields: pTreap pIncrement pDecrement pBias pTotal
FamilyInstance: none
data Treap k p
RecFlag NonRecursive
= Nil :: forall k p. Treap k p |
Fork :: forall k p.
k -> p -> (Treap k p) -> (Treap k p) -> Treap k p
Stricts: _ _ _ _
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] (Show k, Show p) => Show (Treap k p)
-- Defined at src/Util/Progress.hs:98:14
instance [overlap ok] Show (Progress k)
-- Defined at src/Util/Progress.hs:21:10
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 10 of 182] Compiling Util.IntBag ( src/Util/IntBag.hs, src/Util/IntBag.o )
TYPE SIGNATURES
! :: IntBag -> Key -> Int
_match :: Key -> Prefix -> Mask -> Bool
assocs :: IntBag -> [(Key, Int)]
bin :: Prefix -> Mask -> IntBag -> IntBag -> IntBag
branchMask :: Prefix -> Prefix -> Mask
delete :: Key -> Int -> IntBag -> IntBag
empty :: IntBag
equal :: IntBag -> IntBag -> Bool
find' :: Key -> IntBag -> Int
fold :: forall b. (Int -> b -> b) -> b -> IntBag -> b
foldWithKey :: forall b. (Key -> Int -> b -> b) -> b -> IntBag -> b
foldlStrict :: forall t a. (a -> t -> a) -> a -> [t] -> a
foldr :: forall b. (Key -> Int -> b -> b) -> b -> IntBag -> b
foldr' :: forall b. (Key -> Int -> b -> b) -> b -> IntBag -> b
fromList :: [(Key, Int)] -> IntBag
highestBitMask :: Nat -> Nat
insert :: Key -> Int -> IntBag -> IntBag
intFromNat :: Nat -> Key
join :: Prefix -> IntBag -> Prefix -> IntBag -> IntBag
lookupN :: Nat -> IntBag -> Int
mask :: Key -> Mask -> Prefix
maskW :: Nat -> Nat -> Prefix
msingleton :: Key -> Int -> IntBag
natFromInt :: Key -> Nat
nequal :: IntBag -> IntBag -> Bool
nomatch :: Key -> Prefix -> Mask -> Bool
null :: IntBag -> Bool
shiftRL :: Nat -> Key -> Nat
shorter :: Mask -> Mask -> Bool
singleton :: Key -> IntBag
size :: IntBag -> Int
toAscList :: IntBag -> [(Key, Int)]
toList :: IntBag -> [(Key, Int)]
union :: IntBag -> IntBag -> IntBag
unions :: [IntBag] -> IntBag
zero :: Key -> Mask -> Bool
zeroN :: Nat -> Nat -> Bool
TYPE CONSTRUCTORS
data IntBag
RecFlag NonRecursive
= Nil :: IntBag |
Tip :: Key -> Int -> IntBag
HasWrapper
Stricts: {-# UNPACK #-} ! {-# UNPACK #-} ! |
Bin :: Prefix -> Mask -> IntBag -> IntBag -> IntBag
HasWrapper
Stricts: {-# UNPACK #-} ! {-# UNPACK #-} ! ! !
FamilyInstance: none
type Key
= Int
FamilyInstance: none
type Mask
= Int
FamilyInstance: none
type Nat
= Word
FamilyInstance: none
type Prefix
= Int
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Show IntBag
-- Defined at src/Util/IntBag.hs:1014:10
instance [overlap ok] Ord IntBag
-- Defined at src/Util/IntBag.hs:1006:10
instance [overlap ok] Eq IntBag
-- Defined at src/Util/IntBag.hs:982:10
instance [overlap ok] Monoid IntBag
-- Defined at src/Util/IntBag.hs:189:10
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 11 of 182] Compiling Util.SameShape ( src/Util/SameShape.hs, src/Util/SameShape.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
class SameShape1 (f::* -> *)
RecFlag NonRecursive
sameShape1 :: forall a b. f a -> f b -> Bool
class SameShape2 (f::* -> * -> *)
RecFlag NonRecursive
sameShape2 :: forall a b c d. f a b -> f c d -> Bool
COERCION AXIOMS
axiom Util.SameShape.NTCo:SameShape1 [f]
:: SameShape1 f ~# (forall a b. f a -> f b -> Bool)
axiom Util.SameShape.NTCo:SameShape2 [f]
:: SameShape2 f ~# (forall a b c d. f a b -> f c d -> Bool)
INSTANCES
instance [overlap ok] SameShape1 IO
-- Defined at src/Util/SameShape.hs:42:10
instance [overlap ok] SameShape2 Either
-- Defined at src/Util/SameShape.hs:37:10
instance [overlap ok] SameShape1 Maybe
-- Defined at src/Util/SameShape.hs:32:10
instance [overlap ok] SameShape1 Tree
-- Defined at src/Util/SameShape.hs:26:10
instance [overlap ok] SameShape1 []
-- Defined at src/Util/SameShape.hs:21:10
Dependent modules: []
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp]
[ 12 of 182] Compiling Info.Properties ( src/Info/Properties.hs, src/Info/Properties.o )
TYPE SIGNATURES
Info.Properties.$con2tag_Property :: Property
-> ghc-prim:GHC.Prim.Int#
Info.Properties.$maxtag_Property :: Int
Info.Properties.$tag2con_Property :: Int -> Property
prop_CYCLIC :: Property
prop_EXPORTED :: Property
prop_HASRULE :: Property
prop_INLINE :: Property
prop_INSTANCE :: Property
prop_JOINPOINT :: Property
prop_METHOD :: Property
prop_MULTISPECIALIZE :: Property
prop_NOETA :: Property
prop_NOINLINE :: Property
prop_ONESHOT :: Property
prop_PLACEHOLDER :: Property
prop_RULEBINDER :: Property
prop_SCRUTINIZED :: Property
prop_SPECIALIZATION :: Property
prop_SRCLOC_ANNOTATE :: Property
prop_SRCLOC_ANNOTATE_FUN :: Property
prop_SUPERINLINE :: Property
prop_SUPERSPECIALIZE :: Property
prop_UNSHARED :: Property
prop_WHNF :: Property
prop_WORKER :: Property
prop_WRAPPER :: Property
readProp :: forall (m :: * -> *). Monad m => [Char] -> m Property
TYPE CONSTRUCTORS
data Property
RecFlag NonRecursive
= PROP_INLINE :: Property |
PROP_MULTISPECIALIZE :: Property |
PROP_NOINLINE :: Property |
PROP_SRCLOC_ANNOTATE :: Property |
PROP_SUPERINLINE :: Property |
PROP_NOETA :: Property |
PROP_CYCLIC :: Property |
PROP_EXPORTED :: Property |
PROP_INSTANCE :: Property |
PROP_JOINPOINT :: Property |
PROP_METHOD :: Property |
PROP_ONESHOT :: Property |
PROP_PLACEHOLDER :: Property |
PROP_RULEBINDER :: Property |
PROP_SCRUTINIZED :: Property |
PROP_SPECIALIZATION :: Property |
PROP_SRCLOC_ANNOTATE_FUN :: Property |
PROP_SUPERSPECIALIZE :: Property |
PROP_UNSHARED :: Property |
PROP_WHNF :: Property |
PROP_WORKER :: Property |
PROP_WRAPPER :: Property |
PROP_HASRULE :: Property
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Eq Property
-- Defined at src/Info/Properties.hs:4:14
instance [overlap ok] Ord Property
-- Defined at src/Info/Properties.hs:4:17
instance [overlap ok] Enum Property
-- Defined at src/Info/Properties.hs:4:21
instance [overlap ok] Bounded Property
-- Defined at src/Info/Properties.hs:4:26
instance [overlap ok] Show Property
-- Defined at src/Info/Properties.hs:6:10
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 13 of 182] Compiling Util.NameMonad ( src/Util/NameMonad.hs, src/Util/NameMonad.o )
TYPE SIGNATURES
Util.NameMonad.$dmaddNames :: forall n (m :: * -> *).
NameMonad n m =>
[n] -> m ()
freeNames :: forall n. (Ord n, GenName n) => Set.Set n -> [n]
fromNameMT :: forall n (m :: * -> *) a.
NameMT n m a -> StateT (Set.Set n, Set.Set n) m a
hashInt :: Int -> Int
mixInt :: Int -> Int -> Int
mixInt3 :: Int -> Int -> Int -> Int
runNameMT :: forall (m :: * -> *) a1 a.
Monad m =>
NameMT a1 m a -> m a
runNameMT' :: forall (m :: * -> *) a1 a.
Monad m =>
NameMT a1 m a -> m (a, Set.Set a1)
TYPE CONSTRUCTORS
class GenName n
RecFlag NonRecursive
genNames :: Int -> [n]
newtype NameMT n (m::* -> *) a
RecFlag NonRecursive
= NameMT :: forall n (m::* -> *) a.
(StateT (Set.Set n, Set.Set n) m a) -> NameMT n m a
Stricts: _
FamilyInstance: none
class Monad m => NameMonad n (m::* -> *) | m -> n
RecFlag NonRecursive
addNames {- Has default method -} :: [n] -> m ()
addBoundNames :: [n] -> m ()
newName :: m n
newNameFrom :: [n] -> m n
uniqueName :: n -> m n
COERCION AXIOMS
axiom Util.NameMonad.NTCo:GenName [n] :: GenName n ~# (Int -> [n])
axiom Util.NameMonad.NTCo:NameMT [n]
:: NameMT n ~# StateT (Set.Set n, Set.Set n)
INSTANCES
instance [overlap ok] Monad m => Monad (NameMT n m)
-- Defined at src/Util/NameMonad.hs:51:14
instance [overlap ok] MonadTrans (NameMT n)
-- Defined at src/Util/NameMonad.hs:51:21
instance [overlap ok] Functor m => Functor (NameMT n m)
-- Defined at src/Util/NameMonad.hs:51:33
instance [overlap ok] MonadFix m => MonadFix (NameMT n m)
-- Defined at src/Util/NameMonad.hs:51:42
instance [overlap ok] MonadPlus m => MonadPlus (NameMT n m)
-- Defined at src/Util/NameMonad.hs:51:52
instance [overlap ok] MonadIO m => MonadIO (NameMT n m)
-- Defined at src/Util/NameMonad.hs:51:63
instance [overlap ok] (GenName n, Ord n, Monad m) =>
NameMonad n (NameMT n m)
-- Defined at src/Util/NameMonad.hs:65:10
instance [overlap ok] (Monad m, Monad (t m), MonadTrans t,
NameMonad n m) =>
NameMonad n (t m)
-- Defined at src/Util/NameMonad.hs:40:10
instance [overlap ok] GenName Int
-- Defined at src/Util/NameMonad.hs:32:10
Dependent modules: []
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp, mtl-2.1.1,
transformers-0.3.0.0]
[ 14 of 182] Compiling Support.MD5 ( src/Support/MD5.hs, src/Support/MD5.o )
TYPE SIGNATURES
emptyHash :: Hash
get_md5_statesize :: CInt
hashToBytes :: Hash -> [Word8]
md5 :: BS.ByteString -> Hash
md5Bytes :: [Word8] -> Hash
md5Data :: Ptr Word8 -> CInt -> Ptr Word8 -> IO ()
md5Handle :: Handle -> IO Hash
md5String :: String -> Hash
md5_append :: MState -> Ptr Word8 -> CInt -> IO ()
md5_finish :: MState -> Ptr Word8 -> IO ()
md5_init :: MState -> IO ()
md5file :: FilePath -> IO Hash
md5lazy :: LBS.ByteString -> Hash
md5lazyIO :: LBS.ByteString -> IO Hash
md5show32 :: Hash -> String
peekWord32 :: forall b. Ptr b -> Int -> IO Word32
readDigest :: forall b. Ptr b -> IO Hash
showAsHex :: Word32 -> ShowS
TYPE CONSTRUCTORS
data Hash
RecFlag NonRecursive
= Hash :: Word32 -> Word32 -> Word32 -> Word32 -> Hash
HasWrapper
Stricts: {-# UNPACK #-} ! {-# UNPACK #-} ! {-# UNPACK #-} ! {-# UNPACK #-} !
FamilyInstance: none
newtype MState
RecFlag Recursive
= MState :: (Ptr MState) -> MState Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom Support.MD5.NTCo:MState [] :: MState ~# Ptr MState
INSTANCES
instance [overlap ok] Eq Hash
-- Defined at src/Support/MD5.hs:21:14
instance [overlap ok] Ord Hash
-- Defined at src/Support/MD5.hs:21:17
instance [overlap ok] Show Hash
-- Defined at src/Support/MD5.hs:100:10
instance [overlap ok] Binary Hash
-- Defined at src/Support/MD5.hs:57:10
Dependent modules: []
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0, ghc-prim,
integer-gmp]
[ 15 of 182] Compiling Support.CFF ( src/Support/CFF.hs, src/Support/CFF.o )
TYPE SIGNATURES
bsCFF :: forall (m :: * -> *).
Monad m =>
BS.ByteString -> m (FileType, [(ChunkType, BS.ByteString)])
bytesToChunkType :: Word8 -> Word8 -> Word8 -> Word8 -> ChunkType
bytesToWord32 :: Word8 -> Word8 -> Word8 -> Word8 -> Word32
chunkType :: String -> ChunkType
getByte :: Handle -> IO Word8
isCritical :: ChunkType -> Bool
isPrivate :: ChunkType -> Bool
isSafeToCopy :: ChunkType -> Bool
lazyWriteCFF :: Handle
-> ChunkType -> [(ChunkType, LBS.ByteString)] -> IO ()
lbsCFF :: forall (m :: * -> *).
Monad m =>
LBS.ByteString -> m (FileType, [(ChunkType, LBS.ByteString)])
mkCFFHeader :: FileType -> BS.ByteString
mkCFFfile :: FileType
-> [(ChunkType, LBS.ByteString)] -> LBS.ByteString
readCFF :: Handle -> IO (ChunkType, [(ChunkType, BS.ByteString)])
readCFFHeader :: Handle -> IO ChunkType
readCFFInfo :: Handle
-> IO (ChunkType, [(ChunkType, FileOffset, ChunkLength)])
readChunk :: Handle -> ChunkType -> ChunkType -> IO BS.ByteString
readChunkType :: Handle -> IO ChunkType
readWord32 :: Handle -> IO Word32
word32ToBytes :: Word32 -> (Word8, Word8, Word8, Word8)
writeByte :: Handle -> Word8 -> IO ()
writeCFF :: Handle
-> ChunkType -> [(ChunkType, BS.ByteString)] -> IO ()
writeCFFHeader :: Handle -> FileType -> IO ()
writeWord32 :: Handle -> Word32 -> IO ()
zero :: LBS.ByteString
TYPE CONSTRUCTORS
type ChunkLength
= Word
FamilyInstance: none
newtype ChunkType
RecFlag NonRecursive
= ChunkType :: Word32 -> ChunkType Stricts: _
FamilyInstance: none
type FileOffset
= Word
FamilyInstance: none
type FileType
= ChunkType
FamilyInstance: none
COERCION AXIOMS
axiom Support.CFF.NTCo:ChunkType [] :: ChunkType ~# Word32
INSTANCES
instance [overlap ok] Eq ChunkType
-- Defined at src/Support/CFF.hs:52:14
instance [overlap ok] Ord ChunkType
-- Defined at src/Support/CFF.hs:52:17
instance [overlap ok] Read ChunkType
-- Defined at src/Support/CFF.hs:58:10
instance [overlap ok] Show ChunkType
-- Defined at src/Support/CFF.hs:54:10
Dependent modules: []
Dependent packages: [base, bytestring-0.9.2.1, ghc-prim,
integer-gmp]
[ 16 of 182] Compiling Util.Seq ( src/Util/Seq.hs, src/Util/Seq.o )
TYPE SIGNATURES
<> :: forall a. Seq a -> Seq a -> Seq a
append :: forall a. Seq a -> Seq a -> Seq a
Util.Seq.concat :: forall a. Seq (Seq a) -> Seq a
cons :: forall a. a -> Seq a -> Seq a
empty :: forall a. Seq a
fromList :: forall a. [a] -> Seq a
single :: forall a. a -> Seq a
singleton :: forall a. a -> Seq a
toList :: forall a. Seq a -> [a]
TYPE CONSTRUCTORS
newtype Seq a
RecFlag NonRecursive
= Seq :: forall a. ([a] -> [a]) -> Seq a Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom Util.Seq.NTCo:Seq [a] :: Seq a ~# ([a] -> [a])
INSTANCES
instance [overlap ok] Monoid (Seq a)
-- Defined at src/Util/Seq.hs:118:10
instance [overlap ok] MonadPlus Seq
-- Defined at src/Util/Seq.hs:113:10
instance [overlap ok] Monad Seq
-- Defined at src/Util/Seq.hs:107:10
instance [overlap ok] Functor Seq
-- Defined at src/Util/Seq.hs:103:10
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 17 of 182] Compiling Util.ContextMonad ( src/Util/ContextMonad.hs, src/Util/ContextMonad.o )
TYPE SIGNATURES
runContextEither :: forall t. ContextEither t -> Either [String] t
runSimpleContextMonad :: forall a. ContextEither a -> a
TYPE CONSTRUCTORS
newtype ContextEither a
RecFlag NonRecursive
= ContextEither :: forall a. (Either [String] a) -> ContextEither a
Stricts: _
FamilyInstance: none
class Monad m => ContextMonad (m::* -> *)
RecFlag NonRecursive
type family ContextOf (m::* -> *) :: *
withContext :: forall a. ContextOf m -> m a -> m a
COERCION AXIOMS
axiom Util.ContextMonad.NTCo:ContextEither []
:: ContextEither ~# Either [String]
axiom Util.ContextMonad.TFCo:R:ContextOfContextEither []
:: ContextOf ContextEither
~#
Util.ContextMonad.R:ContextOfContextEither
INSTANCES
instance [overlap ok] Functor ContextEither
-- Defined at src/Util/ContextMonad.hs:14:14
instance [overlap ok] ContextMonad ContextEither
-- Defined at src/Util/ContextMonad.hs:25:10
instance [overlap ok] Monad ContextEither
-- Defined at src/Util/ContextMonad.hs:18:10
instance [overlap ok] Error [String]
-- Defined at src/Util/ContextMonad.hs:9:10
FAMILY INSTANCES
type ContextOf ContextEither
-- Defined at src/Util/ContextMonad.hs:26:10
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp, mtl-2.1.1,
transformers-0.3.0.0]
[ 18 of 182] Compiling Util.VarName ( src/Util/VarName.hs, src/Util/VarName.o )
TYPE SIGNATURES
lookupName :: forall ni (m :: * -> *) nc no.
(Ord ni, Monad m, Show ni) =>
ni -> VarNameT nc ni no m no
maybeLookupName :: forall ni (m :: * -> *) nc no.
(Ord ni, Monad m, Show ni) =>
ni -> VarNameT nc ni no m (Maybe no)
newLookupName :: forall ni nc (m :: * -> *) no.
(Ord ni, Ord nc, Monad m) =>
[no] -> nc -> ni -> VarNameT nc ni no m no
newName :: forall ni nc (m :: * -> *) no.
(Ord ni, Ord nc, Monad m) =>
[no] -> nc -> ni -> VarNameT nc ni no m no
runVarName :: forall ni no a. VarName ni no a -> a
runVarNameT :: forall (m :: * -> *) nc ni no a.
Monad m =>
VarNameT nc ni no m a -> m a
subVarName :: forall (m :: * -> *) nc ni no a.
Monad m =>
VarNameT nc ni no m a -> VarNameT nc ni no m a
TYPE CONSTRUCTORS
type VarName ni no a
= VarNameT () ni no Identity a
FamilyInstance: none
newtype VarNameT nc ni no (m::* -> *) a
RecFlag NonRecursive
= VarName :: forall nc ni no (m::* -> *) a.
(StateT (Map.Map ni no, Map.Map nc Int) m a)
-> VarNameT nc ni no m a
Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom Util.VarName.NTCo:VarNameT [nc, ni, no]
:: VarNameT nc ni no ~# StateT (Map.Map ni no, Map.Map nc Int)
INSTANCES
instance [overlap ok] Monad m => Monad (VarNameT nc ni no m)
-- Defined at src/Util/VarName.hs:17:14
instance [overlap ok] MonadTrans (VarNameT nc ni no)
-- Defined at src/Util/VarName.hs:17:21
instance [overlap ok] Functor m => Functor (VarNameT nc ni no m)
-- Defined at src/Util/VarName.hs:17:33
instance [overlap ok] MonadFix m => MonadFix (VarNameT nc ni no m)
-- Defined at src/Util/VarName.hs:17:42
instance [overlap ok] MonadPlus m =>
MonadPlus (VarNameT nc ni no m)
-- Defined at src/Util/VarName.hs:17:52
instance [overlap ok] MonadIO m => MonadIO (VarNameT nc ni no m)
-- Defined at src/Util/VarName.hs:17:63
Dependent modules: []
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp, mtl-2.1.1,
transformers-0.3.0.0]
[ 19 of 182] Compiling Support.CanType ( src/Support/CanType.hs, src/Support/CanType.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
class CanType a
RecFlag NonRecursive
type family TypeOf a :: *
getType :: a -> TypeOf a
COERCION AXIOMS
axiom Support.CanType.NTCo:CanType [a]
:: CanType a ~# (a -> TypeOf a)
axiom Support.CanType.TFCo:R:TypeOfEither [e1, e2]
:: TypeOf (Either e1 e2) ~# Support.CanType.R:TypeOfEither e1 e2
axiom Support.CanType.TFCo:R:TypeOfMaybe [e]
:: TypeOf (Maybe e) ~# Support.CanType.R:TypeOfMaybe e
axiom Support.CanType.TFCo:R:TypeOf[] [e]
:: TypeOf [e] ~# Support.CanType.R:TypeOf[] e
INSTANCES
instance [overlap ok] (CanType e1, CanType e2) =>
CanType (Either e1 e2)
-- Defined at src/Support/CanType.hs:19:10
instance [overlap ok] CanType e => CanType (Maybe e)
-- Defined at src/Support/CanType.hs:14:10
instance [overlap ok] CanType e => CanType [e]
-- Defined at src/Support/CanType.hs:10:10
FAMILY INSTANCES
type TypeOf (Either e1 e2)
-- Defined at src/Support/CanType.hs:20:10
type TypeOf (Maybe e) -- Defined at src/Support/CanType.hs:15:10
type TypeOf [e] -- Defined at src/Support/CanType.hs:11:10
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp, mtl-2.1.1,
transformers-0.3.0.0]
[ 20 of 182] Compiling Support.Tickle ( src/Support/Tickle.hs, src/Support/Tickle.o )
TYPE SIGNATURES
Support.Tickle.$dmtickle :: forall a b.
Tickleable a b =>
(a -> a) -> b -> b
Support.Tickle.$dmtickleM_ :: forall a b.
Tickleable a b =>
forall (m :: * -> *) c. Monad m => (a -> m c) -> b -> m ()
tickleCollect :: forall a b o.
(Tickleable a b, Monoid o) =>
(a -> o) -> b -> o
TYPE CONSTRUCTORS
class Tickleable a b
RecFlag NonRecursive
tickleM :: forall (m::* -> *). Monad m -> (a -> m a) -> b -> m b
tickleM_ {- Has default method -} :: forall (m::* -> *) c.
Monad m -> (a -> m c) -> b -> m ()
tickle {- Has default method -} :: (a -> a) -> b -> b
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp, mtl-2.1.1,
transformers-0.3.0.0]
[ 21 of 182] Compiling Util.Inst ( src/Util/Inst.hs, src/Util/Inst.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
INSTANCES
instance [overlap ok] Show a => Show (Identity a)
-- Defined at src/Util/Inst.hs:27:10
instance [overlap ok] Monoid Bool
-- Defined at src/Util/Inst.hs:21:10
instance [overlap ok] Monoid (IO ())
-- Defined at src/Util/Inst.hs:17:10
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp, mtl-2.1.1,
transformers-0.3.0.0]
[ 22 of 182] Compiling Support.FreeVars ( src/Support/FreeVars.hs, src/Support/FreeVars.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
class Monoid b => FreeVars a b
RecFlag NonRecursive
freeVars :: a -> b
COERCION AXIOMS
INSTANCES
instance [overlap ok] (FreeVars x b, FreeVars y b) =>
FreeVars (Either x y) b
-- Defined at src/Support/FreeVars.hs:24:10
instance [overlap ok] FreeVars a b => FreeVars (Maybe a) b
-- Defined at src/Support/FreeVars.hs:20:10
instance [overlap ok] FreeVars a b => FreeVars [a] b
-- Defined at src/Support/FreeVars.hs:17:10
instance [overlap ok] (FreeVars x b, FreeVars y b, FreeVars z b) =>
FreeVars (x, y, z) b
-- Defined at src/Support/FreeVars.hs:14:10
instance [overlap ok] (FreeVars x b, FreeVars y b) =>
FreeVars (x, y) b
-- Defined at src/Support/FreeVars.hs:11:10
instance [overlap ok] Monoid x => FreeVars () x
-- Defined at src/Support/FreeVars.hs:8:11
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 23 of 182] Compiling Name.VConsts ( drift_processed/Name/VConsts.hs, src/Name/VConsts.o )
TYPE SIGNATURES
Name.VConsts.$dmtBool :: forall a. TypeNames a => a
Name.VConsts.$dmtChar :: forall a. TypeNames a => a
Name.VConsts.$dmtCharzh :: forall a. TypeNames a => a
Name.VConsts.$dmtEnumzh :: forall a. TypeNames a => a
Name.VConsts.$dmtInt :: forall a. TypeNames a => a
Name.VConsts.$dmtInteger :: forall a. TypeNames a => a
Name.VConsts.$dmtIntzh :: forall a. TypeNames a => a
Name.VConsts.$dmtRational :: forall a. TypeNames a => a
Name.VConsts.$dmtString :: forall a. TypeNames a => a
Name.VConsts.$dmtUnit :: forall a. TypeNames a => a
Name.VConsts.$dmtWorld__ :: forall a. TypeNames a => a
Name.VConsts.$dmvCons :: forall a. ConNames a => a
Name.VConsts.$dmvFalse :: forall a. ConNames a => a
Name.VConsts.$dmvTrue :: forall a. ConNames a => a
Name.VConsts.$dmvUnit :: forall a. ConNames a => a
func_equals :: forall a. FuncNames a -> a
func_fromInt :: forall a. FuncNames a -> a
func_fromInteger :: forall a. FuncNames a -> a
func_fromRational :: forall a. FuncNames a -> a
func_negate :: forall a. FuncNames a -> a
func_runExpr :: forall a. FuncNames a -> a
func_runMain :: forall a. FuncNames a -> a
func_runNoWrapper :: forall a. FuncNames a -> a
func_runRaw :: forall a. FuncNames a -> a
TYPE CONSTRUCTORS
class ConNames a
RecFlag NonRecursive
vTrue {- Has default method -} :: a
vFalse {- Has default method -} :: a
vCons {- Has default method -} :: a
vUnit {- Has default method -} :: a
class FromTupname a
RecFlag NonRecursive
fromTupname :: forall (m::* -> *). Monad m -> a -> m Int
data FuncNames a
RecFlag NonRecursive
= FuncNames :: forall a.
a -> a -> a -> a -> a -> a -> a -> a -> a -> FuncNames a
Stricts: _ _ _ _ _ _ _ _ _
Fields: func_equals func_fromInt func_fromInteger func_fromRational func_negate func_runExpr func_runMain func_runNoWrapper func_runRaw
FamilyInstance: none
class ToTuple a
RecFlag NonRecursive
toTuple :: Int -> a
class TypeNames a
RecFlag NonRecursive
tInt {- Has default method -} :: a
tRational {- Has default method -} :: a
tChar {- Has default method -} :: a
tIntzh {- Has default method -} :: a
tEnumzh {- Has default method -} :: a
tCharzh {- Has default method -} :: a
tBool {- Has default method -} :: a
tUnit {- Has default method -} :: a
tString {- Has default method -} :: a
tInteger {- Has default method -} :: a
tWorld__ {- Has default method -} :: a
COERCION AXIOMS
axiom Name.VConsts.NTCo:FromTupname [a]
:: FromTupname a ~# (forall (m :: * -> *). Monad m => a -> m Int)
axiom Name.VConsts.NTCo:ToTuple [] :: ToTuple ~# (->) Int
INSTANCES
instance [overlap ok] Foldable FuncNames
-- Defined at src/Name/VConsts.hs:88:10
instance [overlap ok] Traversable FuncNames
-- Defined at src/Name/VConsts.hs:84:10
instance [overlap ok] Functor FuncNames
-- Defined at src/Name/VConsts.hs:80:10
instance [overlap ok] ToTuple (String, String)
-- Defined at src/Name/VConsts.hs:63:10
instance [overlap ok] ToTuple String
-- Defined at src/Name/VConsts.hs:60:10
instance [overlap ok] FromTupname (String, String)
-- Defined at src/Name/VConsts.hs:53:10
instance [overlap ok] FromTupname String
-- Defined at src/Name/VConsts.hs:49:10
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 24 of 182] Compiling FlagOpts ( src/FlagOpts.hs, src/FlagOpts.o )
TYPE SIGNATURES
FlagOpts.$con2tag_Flag :: Flag -> ghc-prim:GHC.Prim.Int#
helpFlags :: [[Char]]
helpMsg :: [Char]
one :: [Char] -> Either [Char] (Set.Set Flag -> Set.Set Flag)
process :: Set.Set Flag -> [[Char]] -> (Set.Set Flag, [[Char]])
TYPE CONSTRUCTORS
data Flag
RecFlag NonRecursive
= BangPatterns :: Flag |
Boehm :: Flag |
Controlled :: Flag |
Cpp :: Flag |
Debug :: Flag |
Defaulting :: Flag |
Exists :: Flag |
Ffi :: Flag |
Forall :: Flag |
FullInt :: Flag |
GlobalOptimize :: Flag |
InlinePragmas :: Flag |
Jgc :: Flag |
Lint :: Flag |
M4 :: Flag |
MonomorphismRestriction :: Flag |
Negate :: Flag |
Prelude :: Flag |
Profile :: Flag |
Raw :: Flag |
Rules :: Flag |
Standalone :: Flag |
TypeAnalysis :: Flag |
TypeFamilies :: Flag |
UnboxedTuples :: Flag |
UnboxedValues :: Flag |
UserKinds :: Flag |
Wrapper :: Flag
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Eq Flag -- Defined at src/FlagOpts.hs:35:14
instance [overlap ok] Ord Flag -- Defined at src/FlagOpts.hs:35:17
instance [overlap ok] Bounded Flag
-- Defined at src/FlagOpts.hs:35:21
instance [overlap ok] Show Flag -- Defined at src/FlagOpts.hs:37:10
Dependent modules: []
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp]
[ 25 of 182] Compiling Version.Config ( src/Version/Config.hs, src/Version/Config.o )
TYPE SIGNATURES
confDir :: [Char]
datadir :: [Char]
host :: [Char]
libdir :: [Char]
libraryInstall :: [Char]
package :: [Char]
revision :: String
shortVersion :: [Char]
version :: [Char]
version_major :: Int
version_minor :: Int
version_patch :: Int
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 26 of 182] Compiling Util.YAML ( src/Util/YAML.hs, src/Util/YAML.o )
TYPE SIGNATURES
dumpNode :: Node -> String
showString' :: [Char] -> [Char] -> [Char]
showYAML :: forall a. ToNode a => a -> String
TYPE CONSTRUCTORS
class MapKey a
RecFlag NonRecursive
showMapKey :: a -> String
data Node
RecFlag NonRecursive
= Leaf :: String -> Node Stricts: _ |
List :: [Node] -> Node Stricts: _ |
Map :: [(String, Node)] -> Node Stricts: _ |
Null :: Node
FamilyInstance: none
class ToNode a
RecFlag NonRecursive
toNode :: a -> Node
COERCION AXIOMS
axiom Util.YAML.NTCo:MapKey [a] :: MapKey a ~# (a -> String)
axiom Util.YAML.NTCo:ToNode [a] :: ToNode a ~# (a -> Node)
INSTANCES
instance [overlap ok] ToNode ()
-- Defined at src/Util/YAML.hs:48:10
instance [overlap ok] ToNode Bool
-- Defined at src/Util/YAML.hs:44:10
instance [overlap ok] (ToNode a, ToNode b) => ToNode (Either a b)
-- Defined at src/Util/YAML.hs:40:10
instance [overlap ok] ToNode a => ToNode (Maybe a)
-- Defined at src/Util/YAML.hs:36:10
instance [overlap ok] ToNode a => ToNode (S.Set a)
-- Defined at src/Util/YAML.hs:33:10
instance [overlap ok] (MapKey k, ToNode b) => ToNode (M.Map k b)
-- Defined at src/Util/YAML.hs:30:10
instance [overlap ok] (MapKey k, ToNode a) => ToNode [(k, a)]
-- Defined at src/Util/YAML.hs:27:10
instance [overlap ok] ToNode a => ToNode [a]
-- Defined at src/Util/YAML.hs:24:10
instance [overlap ok] ToNode String
-- Defined at src/Util/YAML.hs:21:10
instance [overlap ok] ToNode Node
-- Defined at src/Util/YAML.hs:18:10
instance [overlap ok] MapKey String
-- Defined at src/Util/YAML.hs:12:10
Dependent modules: []
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp]
[ 27 of 182] Compiling Util.ExitCodes ( src/Util/ExitCodes.hs, src/Util/ExitCodes.o )
TYPE SIGNATURES
exitCodeCantCreate :: ExitCode
exitCodeConfig :: ExitCode
exitCodeDataError :: ExitCode
exitCodeIOErr :: ExitCode
exitCodeNoHost :: ExitCode
exitCodeNoInput :: ExitCode
exitCodeNoPerm :: ExitCode
exitCodeNoUser :: ExitCode
exitCodeOSError :: ExitCode
exitCodeOSFile :: ExitCode
exitCodeProtocol :: ExitCode
exitCodeSoftware :: ExitCode
exitCodeTempFailure :: ExitCode
exitCodeUnavailable :: ExitCode
exitCodeUsage :: ExitCode
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 28 of 182] Compiling RawFiles ( src/RawFiles.hs, src/RawFiles.o )
TYPE SIGNATURES
bitarray_h :: ByteString
cdefs_h :: ByteString
changelog :: ByteString
constants_h :: ByteString
gc_h :: ByteString
gc_jgc_c :: ByteString
gc_jgc_h :: ByteString
gc_jgc_internal_h :: ByteString
gc_none_c :: ByteString
gc_none_h :: ByteString
hsffi_h :: ByteString
jhc_rts_c :: ByteString
jhc_rts_h :: ByteString
jhc_rts_header_h :: ByteString
lib_cbits_c :: ByteString
lib_cbits_h :: ByteString
prelude_m4 :: ByteString
profile_c :: ByteString
profile_h :: ByteString
queue_h :: ByteString
rts_support_c :: ByteString
rts_support_h :: ByteString
shortchange_txt :: ByteString
slub_c :: ByteString
stableptr_c :: ByteString
targets_ini :: ByteString
viaghc_hs :: ByteString
wsize_h :: ByteString
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, bytestring-0.9.2.1, ghc-prim,
integer-gmp]
[ 29 of 182] Compiling PackedString ( src/PackedString.hs, src/PackedString.o )
TYPE SIGNATURES
PackedString.$cPS :: Constr
PackedString.$tPackedString :: DataType
packString :: String -> PackedString
unpackPS :: PackedString -> String
TYPE CONSTRUCTORS
newtype PackedString
RecFlag NonRecursive
= PS :: BSU.ByteString -> PackedString Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom PackedString.NTCo:PackedString []
:: PackedString ~# BSU.ByteString
INSTANCES
instance [overlap ok] Typeable PackedString
-- Defined at src/PackedString.hs:16:14
instance [overlap ok] Binary PackedString
-- Defined at src/PackedString.hs:16:23
instance [overlap ok] Eq PackedString
-- Defined at src/PackedString.hs:16:30
instance [overlap ok] Ord PackedString
-- Defined at src/PackedString.hs:16:33
instance [overlap ok] Monoid PackedString
-- Defined at src/PackedString.hs:16:37
instance [overlap ok] Data PackedString
-- Defined at src/PackedString.hs:16:44
instance [overlap ok] IsString PackedString
-- Defined at src/PackedString.hs:28:10
instance [overlap ok] Show PackedString
-- Defined at src/PackedString.hs:18:10
Dependent modules: []
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0, ghc-prim,
integer-gmp, syb-0.3.6.1, utf8-string-0.3.7]
[ 30 of 182] Compiling FrontEnd.SrcLoc ( drift_processed/FrontEnd/SrcLoc.hs, src/FrontEnd/SrcLoc.o )
TYPE SIGNATURES
FrontEnd.SrcLoc.$cLocated :: Constr
FrontEnd.SrcLoc.$cSrcLoc :: Constr
FrontEnd.SrcLoc.$cSrcSpan :: Constr
FrontEnd.SrcLoc.$dmgetSrcLoc :: forall (m :: * -> *).
MonadSrcLoc m =>
m SrcLoc
FrontEnd.SrcLoc.$dmgetSrcSpan :: forall (m :: * -> *).
MonadSrcLoc m =>
m SrcSpan
FrontEnd.SrcLoc.$dmsrcLoc :: forall a. HasLocation a => a -> SrcLoc
FrontEnd.SrcLoc.$dmsrcSpan :: forall a.
HasLocation a =>
a -> SrcSpan
FrontEnd.SrcLoc.$dmwithSrcLoc :: forall (m :: * -> *).
MonadSetSrcLoc m =>
forall a. SrcLoc -> m a -> m a
FrontEnd.SrcLoc.$dmwithSrcSpan :: forall (m :: * -> *).
MonadSetSrcLoc m =>
forall a. SrcSpan -> m a -> m a
FrontEnd.SrcLoc.$tLocated :: DataType
FrontEnd.SrcLoc.$tSrcLoc :: DataType
FrontEnd.SrcLoc.$tSrcSpan :: DataType
bogusASrcLoc :: SrcLoc
bogusSrcSpan :: SrcSpan
fileNameCommandLine :: PackedString
fileNameGenerated :: PackedString
fileNameUnknown :: PackedString
fromLocated :: forall x. Located x -> x
located :: forall x a. HasLocation a => a -> x -> Located x
srcLocColumn :: SrcLoc -> Int
srcLocColumn_s :: Int -> SrcLoc -> SrcLoc
srcLocColumn_u :: (Int -> Int) -> SrcLoc -> SrcLoc
srcLocFileName :: SrcLoc -> PackedString
srcLocFileName_s :: PackedString -> SrcLoc -> SrcLoc
srcLocFileName_u :: (PackedString -> PackedString)
-> SrcLoc -> SrcLoc
srcLocLine :: SrcLoc -> Int
srcLocLine_s :: Int -> SrcLoc -> SrcLoc
srcLocLine_u :: (Int -> Int) -> SrcLoc -> SrcLoc
srcSpanBegin :: SrcSpan -> SrcLoc
srcSpanBegin_s :: SrcLoc -> SrcSpan -> SrcSpan
srcSpanBegin_u :: (SrcLoc -> SrcLoc) -> SrcSpan -> SrcSpan
srcSpanEnd :: SrcSpan -> SrcLoc
srcSpanEnd_s :: SrcLoc -> SrcSpan -> SrcSpan
srcSpanEnd_u :: (SrcLoc -> SrcLoc) -> SrcSpan -> SrcSpan
withLocation :: forall l (m :: * -> *) a.
(HasLocation l, MonadSetSrcLoc m) =>
l -> m a -> m a
TYPE CONSTRUCTORS
class HasLocation a
RecFlag NonRecursive
srcLoc {- Has default method -} :: a -> SrcLoc
srcSpan {- Has default method -} :: a -> SrcSpan
data Located x
RecFlag NonRecursive
= Located :: forall x. SrcSpan -> x -> Located x Stricts: _ _
FamilyInstance: none
class MonadSrcLoc m => MonadSetSrcLoc (m::* -> *)
RecFlag NonRecursive
withSrcLoc {- Has default method -} :: forall a.
SrcLoc -> m a -> m a
withSrcSpan {- Has default method -} :: forall a.
SrcSpan -> m a -> m a
class Monad m => MonadSrcLoc (m::* -> *)
RecFlag NonRecursive
getSrcLoc {- Has default method -} :: m SrcLoc
getSrcSpan {- Has default method -} :: m SrcSpan
data SrcLoc
RecFlag NonRecursive
= SrcLoc :: PackedString -> Int -> Int -> SrcLoc
HasWrapper
Stricts: _ {-# UNPACK #-} ! {-# UNPACK #-} !
Fields: srcLocFileName srcLocLine srcLocColumn
FamilyInstance: none
data SrcSpan
RecFlag NonRecursive
= SrcSpan :: SrcLoc -> SrcLoc -> SrcSpan
HasWrapper
Stricts: ! !
Fields: srcSpanBegin srcSpanEnd
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Typeable SrcLoc
-- Defined at src/FrontEnd/SrcLoc.hs:18:19
instance [overlap ok] Typeable SrcSpan
-- Defined at src/FrontEnd/SrcLoc.hs:22:19
instance [overlap ok] Typeable1 Located
-- Defined at src/FrontEnd/SrcLoc.hs:65:28
instance [overlap ok] Data SrcLoc
-- Defined at src/FrontEnd/SrcLoc.hs:18:14
instance [overlap ok] Eq SrcLoc
-- Defined at src/FrontEnd/SrcLoc.hs:18:28
instance [overlap ok] Ord SrcLoc
-- Defined at src/FrontEnd/SrcLoc.hs:18:31
instance [overlap ok] Data SrcSpan
-- Defined at src/FrontEnd/SrcLoc.hs:22:14
instance [overlap ok] Eq SrcSpan
-- Defined at src/FrontEnd/SrcLoc.hs:22:28
instance [overlap ok] Ord SrcSpan
-- Defined at src/FrontEnd/SrcLoc.hs:22:31
instance [overlap ok] Ord x => Ord (Located x)
-- Defined at src/FrontEnd/SrcLoc.hs:65:14
instance [overlap ok] Show x => Show (Located x)
-- Defined at src/FrontEnd/SrcLoc.hs:65:18
instance [overlap ok] Data x => Data (Located x)
-- Defined at src/FrontEnd/SrcLoc.hs:65:23
instance [overlap ok] Eq x => Eq (Located x)
-- Defined at src/FrontEnd/SrcLoc.hs:65:37
instance [overlap ok] Binary x => Binary (Located x)
-- Defined at src/FrontEnd/SrcLoc.hs:157:10
instance [overlap ok] Binary SrcSpan
-- Defined at src/FrontEnd/SrcLoc.hs:148:10
instance [overlap ok] Binary SrcLoc
-- Defined at src/FrontEnd/SrcLoc.hs:132:10
instance [overlap ok] Show SrcSpan
-- Defined at src/FrontEnd/SrcLoc.hs:120:10
instance [overlap ok] Show SrcLoc
-- Defined at src/FrontEnd/SrcLoc.hs:115:10
instance [overlap ok] MonadSetSrcLoc Identity
-- Defined at src/FrontEnd/SrcLoc.hs:108:10
instance [overlap ok] MonadSrcLoc Identity
-- Defined at src/FrontEnd/SrcLoc.hs:106:10
instance [overlap ok] Monoid w => MonadSetSrcLoc (Writer w)
-- Defined at src/FrontEnd/SrcLoc.hs:103:10
instance [overlap ok] Monoid w => MonadSrcLoc (Writer w)
-- Defined at src/FrontEnd/SrcLoc.hs:101:10
instance [overlap ok] Traversable Located
-- Defined at src/FrontEnd/SrcLoc.hs:77:10
instance [overlap ok] Foldable Located
-- Defined at src/FrontEnd/SrcLoc.hs:74:10
instance [overlap ok] Functor Located
-- Defined at src/FrontEnd/SrcLoc.hs:71:10
instance [overlap ok] HasLocation (Located a)
-- Defined at src/FrontEnd/SrcLoc.hs:61:10
instance [overlap ok] HasLocation (SrcLoc, SrcLoc)
-- Defined at src/FrontEnd/SrcLoc.hs:58:10
instance [overlap ok] HasLocation SrcSpan
-- Defined at src/FrontEnd/SrcLoc.hs:55:10
instance [overlap ok] HasLocation SrcLoc
-- Defined at src/FrontEnd/SrcLoc.hs:52:10
instance [overlap ok] HasLocation a => HasLocation [a]
-- Defined at src/FrontEnd/SrcLoc.hs:49:10
instance [overlap ok] Monoid SrcLoc
-- Defined at src/FrontEnd/SrcLoc.hs:33:10
Dependent modules: [(PackedString, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0, ghc-prim,
integer-gmp, mtl-2.1.1, syb-0.3.6.1, transformers-0.3.0.0,
utf8-string-0.3.7]
[ 31 of 182] Compiling FrontEnd.Diagnostic ( src/FrontEnd/Diagnostic.hs, src/FrontEnd/Diagnostic.o )
TYPE SIGNATURES
dumpDiagnostic :: Int -> [Diagnostic] -> String
locMsg :: SrcLoc -> Description -> String -> Diagnostic
locSimple :: SrcLoc -> Description -> Diagnostic
makeMsg :: Description -> String -> Diagnostic
showDiagnostics :: [Diagnostic] -> String
simpleMsg :: Description -> Diagnostic
srcLine :: SrcLoc -> Int
typeError :: forall (m :: * -> *) a.
Monad m =>
TypeError -> [Diagnostic] -> m a
withASrcLoc :: SrcLoc -> Diagnostic -> Diagnostic
TYPE CONSTRUCTORS
type Description
= String
FamilyInstance: none
data Diagnostic
RecFlag NonRecursive
= Msg :: (Maybe SrcLoc) -> String -> Diagnostic Stricts: _ _
FamilyInstance: none
data TypeError
RecFlag NonRecursive
= Unification :: String -> TypeError Stricts: _ |
Failure :: String -> TypeError Stricts: _
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Show Diagnostic
-- Defined at src/FrontEnd/Diagnostic.hs:51:13
Dependent modules: [(FrontEnd.SrcLoc, False),
(PackedString, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0, ghc-prim,
integer-gmp, mtl-2.1.1, syb-0.3.6.1, transformers-0.3.0.0,
utf8-string-0.3.7]
[ 32 of 182] Compiling Util.HasSize ( src/Util/HasSize.hs, src/Util/HasSize.o )
TYPE SIGNATURES
Util.HasSize.$dmsizeEQ :: forall a. HasSize a => Int -> a -> Bool
Util.HasSize.$dmsizeGT :: forall a. HasSize a => Int -> a -> Bool
Util.HasSize.$dmsizeGTE :: forall a. HasSize a => Int -> a -> Bool
Util.HasSize.$dmsizeLT :: forall a. HasSize a => Int -> a -> Bool
Util.HasSize.$dmsizeLTE :: forall a. HasSize a => Int -> a -> Bool
genSize :: forall b a. (Integral b, HasSize a) => a -> b
TYPE CONSTRUCTORS
class HasSize a
RecFlag NonRecursive
size :: a -> Int
sizeEQ {- Has default method -} :: Int -> a -> Bool
sizeGT {- Has default method -} :: Int -> a -> Bool
sizeLT {- Has default method -} :: Int -> a -> Bool
sizeGTE {- Has default method -} :: Int -> a -> Bool
sizeLTE {- Has default method -} :: Int -> a -> Bool
class IsEmpty a
RecFlag NonRecursive
isEmpty :: a -> Bool
COERCION AXIOMS
axiom Util.HasSize.NTCo:IsEmpty [a] :: IsEmpty a ~# (a -> Bool)
INSTANCES
instance [overlap ok] (IsEmpty a, IsEmpty b, IsEmpty c) =>
IsEmpty (a, b, c)
-- Defined at src/Util/HasSize.hs:93:10
instance [overlap ok] (IsEmpty a, IsEmpty b) => IsEmpty (a, b)
-- Defined at src/Util/HasSize.hs:91:10
instance [overlap ok] IsEmpty Data.IntSet.IntSet
-- Defined at src/Util/HasSize.hs:88:10
instance [overlap ok] IsEmpty (Data.IntMap.IntMap v)
-- Defined at src/Util/HasSize.hs:86:10
instance [overlap ok] IsEmpty (Data.Set.Set a)
-- Defined at src/Util/HasSize.hs:84:10
instance [overlap ok] IsEmpty (Data.Map.Map a b)
-- Defined at src/Util/HasSize.hs:82:10
instance [overlap ok] IsEmpty [x]
-- Defined at src/Util/HasSize.hs:79:10
instance [overlap ok] (HasSize a, HasSize b, HasSize c) =>
HasSize (a, b, c)
-- Defined at src/Util/HasSize.hs:76:10
instance [overlap ok] (HasSize a, HasSize b) => HasSize (a, b)
-- Defined at src/Util/HasSize.hs:74:10
instance [overlap ok] (HasSize a, HasSize b) =>
HasSize (Either a b)
-- Defined at src/Util/HasSize.hs:64:10
instance [overlap ok] HasSize Data.IntSet.IntSet
-- Defined at src/Util/HasSize.hs:61:10
instance [overlap ok] HasSize (Data.IntMap.IntMap v)
-- Defined at src/Util/HasSize.hs:59:10
instance [overlap ok] HasSize (Data.Set.Set a)
-- Defined at src/Util/HasSize.hs:57:10
instance [overlap ok] HasSize (Data.Map.Map a b)
-- Defined at src/Util/HasSize.hs:55:10
instance [overlap ok] HasSize [x]
-- Defined at src/Util/HasSize.hs:35:10
Dependent modules: []
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp]
[ 33 of 182] Compiling Support.MapBinaryInstance ( src/Support/MapBinaryInstance.hs, src/Support/MapBinaryInstance.o )
TYPE SIGNATURES
getMap :: forall k v. (Binary k, Ord k, Binary v) => Get (Map k v)
getSet :: forall a. (Binary a, Ord a) => Get (Set a)
putMap :: forall k v. (Binary k, Ord k, Binary v) => Map k v -> Put
putSet :: forall a. (Binary a, Ord a) => Set a -> Put
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0, ghc-prim,
integer-gmp]
[ 34 of 182] Compiling Time ( compat/haskell98/Time.hs, src/Time.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp,
old-locale-1.0.0.4, old-time-1.1.0.0]
[ 35 of 182] Compiling Ratio ( compat/haskell98/Ratio.hs, src/Ratio.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 36 of 182] Compiling Cmm.Number ( src/Cmm/Number.hs, src/Cmm/Number.o )
TYPE SIGNATURES
toIntegral :: forall i (m :: * -> *).
(Integral i, Monad m) =>
Number -> m i
TYPE CONSTRUCTORS
newtype Number
RecFlag NonRecursive
= Number :: Rational -> Number Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom Cmm.Number.NTCo:Number [] :: Number ~# Rational
INSTANCES
instance [overlap ok] Num Number
-- Defined at src/Cmm/Number.hs:7:14
instance [overlap ok] Eq Number
-- Defined at src/Cmm/Number.hs:7:18
instance [overlap ok] Ord Number
-- Defined at src/Cmm/Number.hs:7:21
instance [overlap ok] Binary Number
-- Defined at src/Cmm/Number.hs:7:25
instance [overlap ok] Real Number
-- Defined at src/Cmm/Number.hs:7:32
instance [overlap ok] Fractional Number
-- Defined at src/Cmm/Number.hs:7:37
instance [overlap ok] RealFrac Number
-- Defined at src/Cmm/Number.hs:7:48
instance [overlap ok] Enum Number
-- Defined at src/Cmm/Number.hs:7:57
instance [overlap ok] Show Number
-- Defined at src/Cmm/Number.hs:16:10
instance [overlap ok] Integral Number
-- Defined at src/Cmm/Number.hs:9:10
Dependent modules: [(Ratio, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0, ghc-prim,
integer-gmp]
[ 37 of 182] Compiling Random ( compat/haskell98/Random.hs, src/Random.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [array-0.4.0.0, base, deepseq-1.3.0.0,
ghc-prim, integer-gmp, old-locale-1.0.0.4, random-1.0.1.1,
time-1.4]
[ 38 of 182] Compiling Ix ( compat/haskell98/Ix.hs, src/Ix.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 39 of 182] Compiling CPUTime ( compat/haskell98/CPUTime.hs, src/CPUTime.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 40 of 182] Compiling Array ( compat/haskell98/Array.hs, src/Array.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(Ix, False)]
Dependent packages: [array-0.4.0.0, base, ghc-prim, integer-gmp]
[ 41 of 182] Compiling Support.Compat ( src/Support/Compat.hs, src/Support/Compat.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
type SomeException'
= SomeException
FamilyInstance: none
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 42 of 182] Compiling Monad ( compat/haskell98/Monad.hs, src/Monad.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 43 of 182] Compiling Doc.DocLike ( src/Doc/DocLike.hs, src/Doc/DocLike.o )
TYPE SIGNATURES
Doc.DocLike.$dm<$> :: forall a. DocLike a => a -> a -> a
Doc.DocLike.$dm<+> :: forall a. DocLike a => a -> a -> a
Doc.DocLike.$dmchar :: forall a. TextLike a => Char -> a
Doc.DocLike.$dmempty :: forall a. TextLike a => a
Doc.DocLike.$dmenclose :: forall a. DocLike a => a -> a -> a -> a
Doc.DocLike.$dmencloseSep :: forall a.
DocLike a =>
a -> a -> a -> [a] -> a
Doc.DocLike.$dmhcat :: forall a. DocLike a => [a] -> a
Doc.DocLike.$dmhsep :: forall a. DocLike a => [a] -> a
Doc.DocLike.$dmlist :: forall a. DocLike a => [a] -> a
Doc.DocLike.$dmsemiBraces :: forall a. DocLike a => [a] -> a
Doc.DocLike.$dmtupled :: forall a. DocLike a => [a] -> a
Doc.DocLike.$dmvcat :: forall a. DocLike a => [a] -> a
angles :: forall a. DocLike a => a -> a
backslash :: forall a. TextLike a => a
braces :: forall a. DocLike a => a -> a
brackets :: forall a. DocLike a => a -> a
colon :: forall a. TextLike a => a
comma :: forall a. TextLike a => a
dot :: forall a. TextLike a => a
dquote :: forall a. TextLike a => a
dquotes :: forall a. DocLike a => a -> a
equals :: forall a. TextLike a => a
langle :: forall a. TextLike a => a
lbrace :: forall a. TextLike a => a
lbracket :: forall a. TextLike a => a
lparen :: forall a. TextLike a => a
parens :: forall a. DocLike a => a -> a
punctuate :: forall a. DocLike a => a -> [a] -> [a]
rangle :: forall a. TextLike a => a
rbrace :: forall a. TextLike a => a
rbracket :: forall a. TextLike a => a
rparen :: forall a. TextLike a => a
semi :: forall a. TextLike a => a
space :: forall a. TextLike a => a
squote :: forall a. TextLike a => a
squotes :: forall a. DocLike a => a -> a
tshow :: forall a b. (Show a, DocLike b) => a -> b
TYPE CONSTRUCTORS
class TextLike a => DocLike a
RecFlag NonRecursive
<> :: a -> a -> a
<+> {- Has default method -} :: a -> a -> a
<$> {- Has default method -} :: a -> a -> a
hsep {- Has default method -} :: [a] -> a
hcat {- Has default method -} :: [a] -> a
vcat {- Has default method -} :: [a] -> a
tupled {- Has default method -} :: [a] -> a
list {- Has default method -} :: [a] -> a
semiBraces {- Has default method -} :: [a] -> a
enclose {- Has default method -} :: a -> a -> a -> a
encloseSep {- Has default method -} :: a -> a -> a -> [a] -> a
class TextLike a
RecFlag NonRecursive
empty {- Has default method -} :: a
text :: String -> a
char {- Has default method -} :: Char -> a
COERCION AXIOMS
INSTANCES
instance [overlap ok] DocLike P.Doc
-- Defined at src/Doc/DocLike.hs:157:10
instance [overlap ok] TextLike P.Doc
-- Defined at src/Doc/DocLike.hs:145:10
instance [overlap ok] (DocLike a, Monad m, TextLike (m a)) =>
DocLike (m a)
-- Defined at src/Doc/DocLike.hs:125:10
instance [overlap ok] (TextLike a, Monad m) => TextLike (m a)
-- Defined at src/Doc/DocLike.hs:120:10
instance [overlap ok] DocLike ShowS
-- Defined at src/Doc/DocLike.hs:117:10
instance [overlap ok] TextLike ShowS
-- Defined at src/Doc/DocLike.hs:112:10
instance [overlap ok] DocLike String
-- Defined at src/Doc/DocLike.hs:108:10
instance [overlap ok] TextLike Char
-- Defined at src/Doc/DocLike.hs:102:10
instance [overlap ok] TextLike String
-- Defined at src/Doc/DocLike.hs:98:10
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp, mtl-2.1.1,
pretty-1.1.1.0, transformers-0.3.0.0]
[ 44 of 182] Compiling Doc.PPrint ( src/Doc/PPrint.hs, src/Doc/PPrint.o )
TYPE SIGNATURES
Doc.PPrint.$con2tag_Assoc :: Assoc -> ghc-prim:GHC.Prim.Int#
Doc.PPrint.$dmpplist :: forall d a. PPrint d a => [a] -> d
Doc.PPrint.$dmpprint :: forall d a. PPrint d a => a -> d
Doc.PPrint.$dmpprintAssoc :: forall d a.
PPrint d a =>
Assoc -> Int -> a -> d
checkAssoc :: forall a a1.
(Ord a1, DocLike a) =>
Assoc -> a1 -> Assoc -> a1 -> a -> a
checkAssocApp :: forall a a1.
(Num a1, Ord a1, DocLike a) =>
Assoc -> a1 -> a -> a
pprintBinary :: forall a a1 a2.
(PPrint a a2, PPrint a a1) =>
Assoc -> Int -> Assoc -> Int -> a1 -> a -> a2 -> a
pprintParen :: forall d a. PPrint d a => a -> d
pprintPrec :: forall d a. PPrint d a => Int -> a -> d
TYPE CONSTRUCTORS
data Assoc
RecFlag NonRecursive
= AssocLeft :: Assoc | AssocRight :: Assoc | AssocNone :: Assoc
FamilyInstance: none
class DocLike d => PPrint d a
RecFlag NonRecursive
pprint {- Has default method -} :: a -> d
pprintAssoc {- Has default method -} :: Assoc -> Int -> a -> d
pplist {- Has default method -} :: [a] -> d
COERCION AXIOMS
INSTANCES
instance [overlap ok] Eq Assoc
-- Defined at src/Doc/PPrint.hs:32:14
instance [overlap ok] Ord Assoc
-- Defined at src/Doc/PPrint.hs:32:17
instance [overlap ok] Show Assoc
-- Defined at src/Doc/PPrint.hs:32:21
instance [overlap ok] (PPrint d a, PPrint d b) =>
PPrint d (Map.Map a b)
-- Defined at src/Doc/PPrint.hs:94:10
instance [overlap ok] (PPrint d a, PPrint d b, PPrint d c) =>
PPrint d (a, b, c)
-- Defined at src/Doc/PPrint.hs:89:10
instance [overlap ok] (PPrint d a, PPrint d b) =>
PPrint d (Either a b)
-- Defined at src/Doc/PPrint.hs:85:10
instance [overlap ok] (PPrint d a, PPrint d b) => PPrint d (a, b)
-- Defined at src/Doc/PPrint.hs:72:10
instance [overlap ok] DocLike d => PPrint d ()
-- Defined at src/Doc/PPrint.hs:69:10
instance [overlap ok] DocLike d => PPrint d Double
-- Defined at src/Doc/PPrint.hs:66:10
instance [overlap ok] DocLike d => PPrint d Float
-- Defined at src/Doc/PPrint.hs:63:10
instance [overlap ok] DocLike d => PPrint d Int
-- Defined at src/Doc/PPrint.hs:60:10
instance [overlap ok] DocLike d => PPrint d Integer
-- Defined at src/Doc/PPrint.hs:57:10
instance [overlap ok] DocLike d => PPrint d Char
-- Defined at src/Doc/PPrint.hs:53:10
instance [overlap ok] PPrint d a => PPrint d [a]
-- Defined at src/Doc/PPrint.hs:50:10
Dependent modules: [(Doc.DocLike, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp, mtl-2.1.1, pretty-1.1.1.0,
transformers-0.3.0.0]
[ 45 of 182] Compiling Support.Unparse ( src/Support/Unparse.hs, src/Support/Unparse.o )
TYPE SIGNATURES
Support.Unparse.$con2tag_Side :: Side -> ghc-prim:GHC.Prim.Int#
atom :: forall a. a -> Unparse a
atomize :: forall a. Unparse a -> Unparse a
bop :: forall a.
(Side, Int) -> a -> Unparse a -> Unparse a -> Unparse a
fixitize :: forall a. (Side, Int) -> Unparse a -> Unparse a
pop :: forall a. a -> Unparse a -> Unparse a
unparse :: forall a. DocLike a => Unparse a -> a
unparse' :: forall a. Unparsable a -> Unparse a -> a
unparseCat :: forall a. Unparsable a -> a -> a -> a
unparseGroup :: forall a. Unparsable a -> a -> a
TYPE CONSTRUCTORS
data Fix
RecFlag NonRecursive
= FAtom :: Fix |
FPre :: Fix |
FFix :: Side -> Int -> Fix HasWrapper Stricts: ! !
FamilyInstance: none
data Side
RecFlag NonRecursive
= R :: Side | L :: Side | N :: Side
FamilyInstance: none
data Unparsable a
RecFlag NonRecursive
= Unparsable :: forall a. (a -> a) -> (a -> a -> a) -> Unparsable a
Stricts: _ _
Fields: unparseGroup unparseCat
FamilyInstance: none
data Unparse a
RecFlag NonRecursive
= Atom :: forall a. a -> Unparse a Stricts: _ |
Pre :: forall a. a -> (Unparse a) -> Unparse a Stricts: _ _ |
Fix :: forall a.
(Unparse a) -> a -> (Unparse a) -> Side -> Int -> Unparse a
HasWrapper
Stricts: _ _ _ ! ! |
Atomized :: forall a. (Unparse a) -> Unparse a Stricts: _ |
Fixitized :: forall a. Side -> Int -> (Unparse a) -> Unparse a
HasWrapper
Stricts: ! ! _
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Eq Side
-- Defined at src/Support/Unparse.hs:8:14
Dependent modules: [(Doc.DocLike, False)]
Dependent packages: [base, ghc-prim, integer-gmp, mtl-2.1.1,
pretty-1.1.1.0, transformers-0.3.0.0]
[ 46 of 182] Compiling Maybe ( compat/haskell98/Maybe.hs, src/Maybe.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 47 of 182] Compiling List ( compat/haskell98/List.hs, src/List.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 48 of 182] Compiling Support.Tuple ( src/Support/Tuple.hs, src/Support/Tuple.o )
TYPE SIGNATURES
Support.Tuple.$dmtupleNil :: forall a. Tuple a => a
Support.Tuple.$dmtupleOne :: forall a. Tuple a => a -> a
tuple :: forall a. Tuple a => [a] -> a
TYPE CONSTRUCTORS
class FromTuple a
RecFlag NonRecursive
fromTuple :: a -> [a]
class Tuple a
RecFlag NonRecursive
tupleNil {- Has default method -} :: a
tupleOne {- Has default method -} :: a -> a
tupleMany :: [a] -> a
COERCION AXIOMS
axiom Support.Tuple.NTCo:FromTuple [a] :: FromTuple a ~# (a -> [a])
INSTANCES
instance [overlap ok] Tuple String
-- Defined at src/Support/Tuple.hs:21:10
Dependent modules: [(List, False)]
Dependent packages: [base, ghc-prim, integer-gmp]
[ 49 of 182] Compiling Util.Graphviz ( src/Util/Graphviz.hs, src/Util/Graphviz.o )
TYPE SIGNATURES
Util.Graphviz.$con2tag_Orient :: Orient -> ghc-prim:GHC.Prim.Int#
graphviz :: forall (g :: * -> * -> *) a b.
Graph g =>
g a b
-> String
-> [(String, String)]
-> (a -> [(String, String)])
-> (b -> [(String, String)])
-> (Double, Double)
-> (Int, Int)
-> Orient
-> String
graphviz' :: forall (g :: * -> * -> *) a b.
Graph g =>
g a b
-> [(String, String)]
-> (a -> [(String, String)])
-> (b -> [(String, String)])
-> String
showEq :: (String, String) -> String -> String
sl :: [(String, String)] -> String
sq :: String -> String
TYPE CONSTRUCTORS
data Orient
RecFlag NonRecursive
= Portrait :: Orient | Landscape :: Orient
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Eq Orient
-- Defined at src/Util/Graphviz.hs:10:46
instance [overlap ok] Show Orient
-- Defined at src/Util/Graphviz.hs:10:50
Dependent modules: [(List, False)]
Dependent packages: [base, fgl-5.4.2.4, ghc-prim, integer-gmp]
[ 50 of 182] Compiling FlagDump ( src/FlagDump.hs, src/FlagDump.o )
TYPE SIGNATURES
FlagDump.$con2tag_Flag :: Flag -> ghc-prim:GHC.Prim.Int#
helpFlags :: [[Char]]
helpMsg :: [Char]
one :: [Char] -> Either [Char] (Set.Set Flag -> Set.Set Flag)
process :: Set.Set Flag -> [[Char]] -> (Set.Set Flag, [[Char]])
TYPE CONSTRUCTORS
data Flag
RecFlag NonRecursive
= AllTypes :: Flag |
Aspats :: Flag |
Atom :: Flag |
Bindgroups :: Flag |
BoxySteps :: Flag |
C :: Flag |
Class :: Flag |
ClassSummary :: Flag |
Core :: Flag |
CoreAfterlift :: Flag |
CoreBeforelift :: Flag |
CoreInitial :: Flag |
CoreMangled :: Flag |
CoreMini :: Flag |
CorePass :: Flag |
CoreSteps :: Flag |
Datatable :: Flag |
DatatableBuiltin :: Flag |
Dcons :: Flag |
Decls :: Flag |
Defs :: Flag |
Derived :: Flag |
EAlias :: Flag |
EInfo :: Flag |
ESize :: Flag |
EVerbose :: Flag |
Exports :: Flag |
Grin :: Flag |
GrinDatalog :: Flag |
GrinFinal :: Flag |
GrinGraph :: Flag |
GrinInitial :: Flag |
GrinNormalized :: Flag |
GrinPosteval :: Flag |
GrinPreeval :: Flag |
Imports :: Flag |
Ini :: Flag |
Instance :: Flag |
Kind :: Flag |
KindSteps :: Flag |
OptimizationStats :: Flag |
Parsed :: Flag |
Preprocessed :: Flag |
Program :: Flag |
Progress :: Flag |
Renamed :: Flag |
Rules :: Flag |
RulesSpec :: Flag |
SccModules :: Flag |
Sigenv :: Flag |
Srcsigs :: Flag |
Stats :: Flag |
Steps :: Flag |
Tags :: Flag |
The :: Flag |
Types :: Flag
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Eq Flag -- Defined at src/FlagDump.hs:63:14
instance [overlap ok] Ord Flag -- Defined at src/FlagDump.hs:63:17
instance [overlap ok] Bounded Flag
-- Defined at src/FlagDump.hs:63:21
instance [overlap ok] Show Flag -- Defined at src/FlagDump.hs:65:10
Dependent modules: []
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp]
[ 51 of 182] Compiling Version.Version ( src/Version/Version.hs, src/Version/Version.o )
TYPE SIGNATURES
versionContext :: BS.ByteString
versionSimple :: [Char]
versionString :: [Char]
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(RawFiles, False), (Version.Config, False)]
Dependent packages: [base, bytestring-0.9.2.1, ghc-prim,
integer-gmp, utf8-string-0.3.7]
[ 52 of 182] Compiling Util.SetLike ( src/Util/SetLike.hs, src/Util/SetLike.o )
TYPE SIGNATURES
Util.SetLike.$dmfromDistinctAscList :: forall s.
Collection s =>
[Elem s] -> s
Util.SetLike.$dmsempty :: forall s. Unionize s => s
Util.SetLike.$dmsingleton :: forall s. Collection s => Elem s -> s
Util.SetLike.$dmunion :: forall s. Unionize s => s -> s -> s
Util.SetLike.$dmunions :: forall s. Unionize s => [s] -> s
\\ :: forall s. Unionize s => s -> s -> s
findWithDefault :: forall m.
MapLike m =>
Value m -> Key m -> m -> Value m
intersects :: forall a. (IsEmpty a, Unionize a) => a -> a -> Bool
minsert :: forall m k v.
(MapLike m, Elem m ~ (k, v)) =>
k -> v -> m -> m
msingleton :: forall m k v.
(MapLike m, Elem m ~ (k, v)) =>
k -> v -> m
notMember :: forall s. SetLike s => Key s -> s -> Bool
TYPE CONSTRUCTORS
class Monoid s => Collection s
RecFlag NonRecursive
fromList :: [Elem s] -> s
fromDistinctAscList {- Has default method -} :: [Elem s] -> s
toList :: s -> [Elem s]
singleton {- Has default method -} :: Elem s -> s
type family Elem es :: *
newtype EnumMap k v
RecFlag NonRecursive
= EnumMap :: forall k v. (IM.IntMap v) -> EnumMap k v Stricts: _
FamilyInstance: none
newtype EnumSet a
RecFlag NonRecursive
= EnumSet :: forall a. IS.IntSet -> EnumSet a Stricts: _
FamilyInstance: none
class Intjection a
RecFlag NonRecursive
fromIntjection :: a -> Int toIntjection :: Int -> a
newtype IntjectionMap k v
RecFlag NonRecursive
= IntjectionMap :: forall k v. (IM.IntMap v) -> IntjectionMap k v
Stricts: _
FamilyInstance: none
newtype IntjectionSet a
RecFlag NonRecursive
= IntjectionSet :: forall a. IS.IntSet -> IntjectionSet a
Stricts: _
FamilyInstance: none
type family Key s :: *
class SetLike m => MapLike m
RecFlag NonRecursive
mlookup :: Key m -> m -> Maybe (Value m)
values :: m -> [Value m]
unionWith :: (Value m -> Value m -> Value m) -> m -> m -> m
class Collection s => SetLike s
RecFlag NonRecursive
keys :: s -> [Key s]
member :: Key s -> s -> Bool
delete :: Key s -> s -> s
sfilter :: (Elem s -> Bool) -> s -> s
insert :: Elem s -> s -> s
spartition :: (Elem s -> Bool) -> s -> (s, s)
class Monoid s => Unionize s
RecFlag NonRecursive
union {- Has default method -} :: s -> s -> s
difference :: s -> s -> s
intersection :: s -> s -> s
unions {- Has default method -} :: [s] -> s
sempty {- Has default method -} :: s
type family Value m :: *
COERCION AXIOMS
axiom Util.SetLike.NTCo:EnumSet [a] :: EnumSet a ~# IS.IntSet
axiom Util.SetLike.NTCo:EnumMap [k] :: EnumMap k ~# IM.IntMap
axiom Util.SetLike.NTCo:IntjectionSet [a]
:: IntjectionSet a ~# IS.IntSet
axiom Util.SetLike.NTCo:IntjectionMap [k]
:: IntjectionMap k ~# IM.IntMap
axiom Util.SetLike.TFCo:R:ValueIntMap [v]
:: Value (IM.IntMap v) ~# Util.SetLike.R:ValueIntMap v
axiom Util.SetLike.TFCo:R:ValueMap [k, v]
:: Value (M.Map k v) ~# Util.SetLike.R:ValueMap k v
axiom Util.SetLike.TFCo:R:ValueEnumMap [k, v]
:: Value (EnumMap k v) ~# Util.SetLike.R:ValueEnumMap k v
axiom Util.SetLike.TFCo:R:KeyEnumMap [k, v]
:: Key (EnumMap k v) ~# Util.SetLike.R:KeyEnumMap k v
axiom Util.SetLike.TFCo:R:KeyEnumSet [a]
:: Key (EnumSet a) ~# Util.SetLike.R:KeyEnumSet a
axiom Util.SetLike.TFCo:R:KeyMap [k, v]
:: Key (M.Map k v) ~# Util.SetLike.R:KeyMap k v
axiom Util.SetLike.TFCo:R:KeyIntMap [v]
:: Key (IM.IntMap v) ~# Util.SetLike.R:KeyIntMap v
axiom Util.SetLike.TFCo:R:KeySet [k]
:: Key (S.Set k) ~# Util.SetLike.R:KeySet k
axiom Util.SetLike.TFCo:R:KeyIntSet []
:: Key IS.IntSet ~# Util.SetLike.R:KeyIntSet
axiom Util.SetLike.TFCo:R:KeyIntjectionSet [a]
:: Key (IntjectionSet a) ~# Util.SetLike.R:KeyIntjectionSet a
axiom Util.SetLike.TFCo:R:ElemIntjectionSet [a]
:: Elem (IntjectionSet a) ~# Util.SetLike.R:ElemIntjectionSet a
axiom Util.SetLike.TFCo:R:ElemEnumMap [k, v]
:: Elem (EnumMap k v) ~# Util.SetLike.R:ElemEnumMap k v
axiom Util.SetLike.TFCo:R:ElemEnumSet [a]
:: Elem (EnumSet a) ~# Util.SetLike.R:ElemEnumSet a
axiom Util.SetLike.TFCo:R:ElemMap [k, v]
:: Elem (M.Map k v) ~# Util.SetLike.R:ElemMap k v
axiom Util.SetLike.TFCo:R:ElemIntMap [v]
:: Elem (IM.IntMap v) ~# Util.SetLike.R:ElemIntMap v
axiom Util.SetLike.TFCo:R:ElemSet [k]
:: Elem (S.Set k) ~# Util.SetLike.R:ElemSet k
axiom Util.SetLike.TFCo:R:ElemIntSet []
:: Elem IS.IntSet ~# Util.SetLike.R:ElemIntSet
axiom Util.SetLike.TFCo:R:ValueIntjectionMap [k, v]
:: Value (IntjectionMap k v)
~#
Util.SetLike.R:ValueIntjectionMap k v
axiom Util.SetLike.TFCo:R:KeyIntjectionMap [k, v]
:: Key (IntjectionMap k v) ~# Util.SetLike.R:KeyIntjectionMap k v
axiom Util.SetLike.TFCo:R:ElemIntjectionMap [k, v]
:: Elem (IntjectionMap k v) ~# Util.SetLike.R:ElemIntjectionMap k v
INSTANCES
instance [overlap ok] Monoid (EnumSet a)
-- Defined at src/Util/SetLike.hs:170:14
instance [overlap ok] IsEmpty (EnumSet a)
-- Defined at src/Util/SetLike.hs:170:21
instance [overlap ok] HasSize (EnumSet a)
-- Defined at src/Util/SetLike.hs:170:29
instance [overlap ok] Unionize (EnumSet a)
-- Defined at src/Util/SetLike.hs:170:37
instance [overlap ok] Eq (EnumSet a)
-- Defined at src/Util/SetLike.hs:170:46
instance [overlap ok] Ord (EnumSet a)
-- Defined at src/Util/SetLike.hs:170:49
instance [overlap ok] Monoid (EnumMap k v)
-- Defined at src/Util/SetLike.hs:190:14
instance [overlap ok] IsEmpty (EnumMap k v)
-- Defined at src/Util/SetLike.hs:190:21
instance [overlap ok] Functor (EnumMap k)
-- Defined at src/Util/SetLike.hs:190:29
instance [overlap ok] Foldable (EnumMap k)
-- Defined at src/Util/SetLike.hs:190:37
instance [overlap ok] Traversable (EnumMap k)
-- Defined at src/Util/SetLike.hs:190:46
instance [overlap ok] HasSize (EnumMap k v)
-- Defined at src/Util/SetLike.hs:190:58
instance [overlap ok] Unionize (EnumMap k v)
-- Defined at src/Util/SetLike.hs:190:66
instance [overlap ok] Eq v => Eq (EnumMap k v)
-- Defined at src/Util/SetLike.hs:190:75
instance [overlap ok] Ord v => Ord (EnumMap k v)
-- Defined at src/Util/SetLike.hs:190:78
instance [overlap ok] Monoid (IntjectionSet a)
-- Defined at src/Util/SetLike.hs:221:14
instance [overlap ok] IsEmpty (IntjectionSet a)
-- Defined at src/Util/SetLike.hs:221:21
instance [overlap ok] HasSize (IntjectionSet a)
-- Defined at src/Util/SetLike.hs:221:29
instance [overlap ok] Unionize (IntjectionSet a)
-- Defined at src/Util/SetLike.hs:221:37
instance [overlap ok] Eq (IntjectionSet a)
-- Defined at src/Util/SetLike.hs:221:46
instance [overlap ok] Ord (IntjectionSet a)
-- Defined at src/Util/SetLike.hs:221:49
instance [overlap ok] Monoid (IntjectionMap k v)
-- Defined at src/Util/SetLike.hs:244:14
instance [overlap ok] IsEmpty (IntjectionMap k v)
-- Defined at src/Util/SetLike.hs:244:21
instance [overlap ok] Functor (IntjectionMap k)
-- Defined at src/Util/SetLike.hs:244:29
instance [overlap ok] Foldable (IntjectionMap k)
-- Defined at src/Util/SetLike.hs:244:37
instance [overlap ok] Traversable (IntjectionMap k)
-- Defined at src/Util/SetLike.hs:244:46
instance [overlap ok] HasSize (IntjectionMap k v)
-- Defined at src/Util/SetLike.hs:244:58
instance [overlap ok] Unionize (IntjectionMap k v)
-- Defined at src/Util/SetLike.hs:244:66
instance [overlap ok] Eq v => Eq (IntjectionMap k v)
-- Defined at src/Util/SetLike.hs:244:75
instance [overlap ok] Ord v => Ord (IntjectionMap k v)
-- Defined at src/Util/SetLike.hs:244:78
instance [overlap ok] Intjection k => MapLike (IntjectionMap k v)
-- Defined at src/Util/SetLike.hs:264:10
instance [overlap ok] Intjection k => SetLike (IntjectionMap k v)
-- Defined at src/Util/SetLike.hs:255:10
instance [overlap ok] Intjection k =>
Collection (IntjectionMap k v)
-- Defined at src/Util/SetLike.hs:250:10
instance [overlap ok] Intjection a => SetLike (IntjectionSet a)
-- Defined at src/Util/SetLike.hs:234:10
instance [overlap ok] Intjection a => Collection (IntjectionSet a)
-- Defined at src/Util/SetLike.hs:229:10
instance [overlap ok] (Intjection a, Show a) =>
Show (IntjectionSet a)
-- Defined at src/Util/SetLike.hs:223:10
instance [overlap ok] Enum k => MapLike (EnumMap k v)
-- Defined at src/Util/SetLike.hs:210:10
instance [overlap ok] Enum k => SetLike (EnumMap k v)
-- Defined at src/Util/SetLike.hs:201:10
instance [overlap ok] Enum k => Collection (EnumMap k v)
-- Defined at src/Util/SetLike.hs:196:10
instance [overlap ok] Enum a => SetLike (EnumSet a)
-- Defined at src/Util/SetLike.hs:180:10
instance [overlap ok] Enum a => Collection (EnumSet a)
-- Defined at src/Util/SetLike.hs:175:10
instance [overlap ok] Ord k => MapLike (M.Map k v)
-- Defined at src/Util/SetLike.hs:151:10
instance [overlap ok] Ord k => SetLike (M.Map k v)
-- Defined at src/Util/SetLike.hs:142:10
instance [overlap ok] Ord k => Collection (M.Map k v)
-- Defined at src/Util/SetLike.hs:135:10
instance [overlap ok] Ord k => Unionize (M.Map k v)
-- Defined at src/Util/SetLike.hs:129:10
instance [overlap ok] MapLike (IM.IntMap v)
-- Defined at src/Util/SetLike.hs:124:10
instance [overlap ok] SetLike (IM.IntMap v)
-- Defined at src/Util/SetLike.hs:115:10
instance [overlap ok] Collection (IM.IntMap v)
-- Defined at src/Util/SetLike.hs:108:10
instance [overlap ok] Unionize (IM.IntMap v)
-- Defined at src/Util/SetLike.hs:102:10
instance [overlap ok] Ord k => SetLike (S.Set k)
-- Defined at src/Util/SetLike.hs:94:10
instance [overlap ok] Ord k => Collection (S.Set k)
-- Defined at src/Util/SetLike.hs:87:10
instance [overlap ok] Ord k => Unionize (S.Set k)
-- Defined at src/Util/SetLike.hs:81:10
instance [overlap ok] SetLike IS.IntSet
-- Defined at src/Util/SetLike.hs:73:10
instance [overlap ok] Collection IS.IntSet
-- Defined at src/Util/SetLike.hs:66:10
instance [overlap ok] Unionize IS.IntSet
-- Defined at src/Util/SetLike.hs:59:10
FAMILY INSTANCES
type instance Value (IM.IntMap v)
-- Defined at src/Util/SetLike.hs:123:15
type instance Value (M.Map k v)
-- Defined at src/Util/SetLike.hs:150:15
type instance Value (EnumMap k v)
-- Defined at src/Util/SetLike.hs:194:15
type instance Key (EnumMap k v)
-- Defined at src/Util/SetLike.hs:193:15
type instance Key (EnumSet a)
-- Defined at src/Util/SetLike.hs:173:15
type instance Key (M.Map k v)
-- Defined at src/Util/SetLike.hs:141:15
type instance Key (IM.IntMap v)
-- Defined at src/Util/SetLike.hs:114:15
type instance Key (S.Set k) -- Defined at src/Util/SetLike.hs:93:15
type instance Key IS.IntSet -- Defined at src/Util/SetLike.hs:72:16
type instance Key (IntjectionSet a)
-- Defined at src/Util/SetLike.hs:227:15
type instance Elem (IntjectionSet a)
-- Defined at src/Util/SetLike.hs:226:15
type instance Elem (EnumMap k v)
-- Defined at src/Util/SetLike.hs:192:15
type instance Elem (EnumSet a)
-- Defined at src/Util/SetLike.hs:172:15
type instance Elem (M.Map k v)
-- Defined at src/Util/SetLike.hs:134:15
type instance Elem (IM.IntMap v)
-- Defined at src/Util/SetLike.hs:107:15
type instance Elem (S.Set k)
-- Defined at src/Util/SetLike.hs:86:16
type instance Elem IS.IntSet
-- Defined at src/Util/SetLike.hs:64:15
type instance Value (IntjectionMap k v)
-- Defined at src/Util/SetLike.hs:248:15
type instance Key (IntjectionMap k v)
-- Defined at src/Util/SetLike.hs:247:15
type instance Elem (IntjectionMap k v)
-- Defined at src/Util/SetLike.hs:246:15
Dependent modules: [(Util.HasSize, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp]
[ 53 of 182] Compiling Util.GMap ( src/Util/GMap.hs, src/Util/GMap.o )
TYPE SIGNATURES
gsetToSet :: forall a.
(Collection (GSet a), Ord a) =>
GSet a -> Set.Set a
TYPE CONSTRUCTORS
data family GMap k $a
RecFlag Recursive
FamilyInstance: none
class GMapSet k
RecFlag NonRecursive
toSet :: forall v. GMap k v -> GSet k
toMap :: forall v. (k -> v) -> GSet k -> GMap k v
data family GSet k
RecFlag Recursive
FamilyInstance: none
COERCION AXIOMS
axiom Util.GMap.NTCo:R:GMapIntv []
:: Util.GMap.R:GMapIntv ~# IM.IntMap
axiom Util.GMap.TFCo:R:GMapIntv [v]
:: GMap Int v ~# Util.GMap.R:GMapIntv v
axiom Util.GMap.NTCo:R:GMapCharv []
:: Util.GMap.R:GMapCharv ~# EnumMap Char
axiom Util.GMap.TFCo:R:GMapCharv [v]
:: GMap Char v ~# Util.GMap.R:GMapCharv v
axiom Util.GMap.NTCo:R:GSetInt []
:: Util.GMap.R:GSetInt ~# IS.IntSet
axiom Util.GMap.TFCo:R:GSetInt []
:: GSet Int ~# Util.GMap.R:GSetInt
axiom Util.GMap.NTCo:R:GSetChar []
:: Util.GMap.R:GSetChar ~# EnumSet Char
axiom Util.GMap.TFCo:R:GSetChar []
:: GSet Char ~# Util.GMap.R:GSetChar
axiom Util.GMap.TFCo:R:ElemGSet [k]
:: Elem (GSet k) ~# Util.GMap.R:ElemGSet k
axiom Util.GMap.TFCo:R:ElemGMap [k, v]
:: Elem (GMap k v) ~# Util.GMap.R:ElemGMap k v
axiom Util.GMap.TFCo:R:KeyGMap [k, v]
:: Key (GMap k v) ~# Util.GMap.R:KeyGMap k v
axiom Util.GMap.TFCo:R:KeyGSet [k]
:: Key (GSet k) ~# Util.GMap.R:KeyGSet k
axiom Util.GMap.TFCo:R:ValueGMap [k, v]
:: Value (GMap k v) ~# Util.GMap.R:ValueGMap k v
INSTANCES
instance [overlap ok] Monoid (GMap Int v)
-- Defined at src/Util/GMap.hs:16:14
instance [overlap ok] IsEmpty (GMap Int v)
-- Defined at src/Util/GMap.hs:16:21
instance [overlap ok] HasSize (GMap Int v)
-- Defined at src/Util/GMap.hs:16:29
instance [overlap ok] Collection (GMap Int v)
-- Defined at src/Util/GMap.hs:16:37
instance [overlap ok] Unionize (GMap Int v)
-- Defined at src/Util/GMap.hs:16:48
instance [overlap ok] SetLike (GMap Int v)
-- Defined at src/Util/GMap.hs:16:57
instance [overlap ok] MapLike (GMap Int v)
-- Defined at src/Util/GMap.hs:16:65
instance [overlap ok] Monoid (GMap Char v)
-- Defined at src/Util/GMap.hs:32:14
instance [overlap ok] IsEmpty (GMap Char v)
-- Defined at src/Util/GMap.hs:32:21
instance [overlap ok] HasSize (GMap Char v)
-- Defined at src/Util/GMap.hs:32:29
instance [overlap ok] Collection (GMap Char v)
-- Defined at src/Util/GMap.hs:32:37
instance [overlap ok] Unionize (GMap Char v)
-- Defined at src/Util/GMap.hs:32:48
instance [overlap ok] SetLike (GMap Char v)
-- Defined at src/Util/GMap.hs:32:57
instance [overlap ok] MapLike (GMap Char v)
-- Defined at src/Util/GMap.hs:32:65
instance [overlap ok] Monoid (GSet Int)
-- Defined at src/Util/GMap.hs:18:14
instance [overlap ok] IsEmpty (GSet Int)
-- Defined at src/Util/GMap.hs:18:21
instance [overlap ok] HasSize (GSet Int)
-- Defined at src/Util/GMap.hs:18:29
instance [overlap ok] Collection (GSet Int)
-- Defined at src/Util/GMap.hs:18:37
instance [overlap ok] Unionize (GSet Int)
-- Defined at src/Util/GMap.hs:18:48
instance [overlap ok] SetLike (GSet Int)
-- Defined at src/Util/GMap.hs:18:57
instance [overlap ok] Monoid (GSet Char)
-- Defined at src/Util/GMap.hs:30:14
instance [overlap ok] IsEmpty (GSet Char)
-- Defined at src/Util/GMap.hs:30:21
instance [overlap ok] HasSize (GSet Char)
-- Defined at src/Util/GMap.hs:30:29
instance [overlap ok] Collection (GSet Char)
-- Defined at src/Util/GMap.hs:30:37
instance [overlap ok] Unionize (GSet Char)
-- Defined at src/Util/GMap.hs:30:48
instance [overlap ok] SetLike (GSet Char)
-- Defined at src/Util/GMap.hs:30:57
instance [overlap ok] GMapSet Int
-- Defined at src/Util/GMap.hs:43:10
instance [overlap ok] Functor (GMap Int)
-- Defined at src/Util/GMap.hs:20:10
FAMILY INSTANCES
newtype instance GMap Int v -- Defined at src/Util/GMap.hs:15:18
newtype instance GMap Char v -- Defined at src/Util/GMap.hs:31:18
newtype instance GSet Int -- Defined at src/Util/GMap.hs:17:18
newtype instance GSet Char -- Defined at src/Util/GMap.hs:29:18
type instance Elem (GSet k) -- Defined at src/Util/GMap.hs:26:15
type instance Elem (GMap k v) -- Defined at src/Util/GMap.hs:23:15
type instance Key (GMap k v) -- Defined at src/Util/GMap.hs:24:15
type instance Key (GSet k) -- Defined at src/Util/GMap.hs:27:15
type instance Value (GMap k v) -- Defined at src/Util/GMap.hs:25:15
Dependent modules: [(Util.HasSize, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp]
[ 54 of 182] Compiling Util.BitSet ( src/Util/BitSet.hs, src/Util/BitSet.o )
TYPE SIGNATURES
fromWord :: Word -> BitSet
toWord :: BitSet -> Word
TYPE CONSTRUCTORS
newtype BitSet
RecFlag NonRecursive
= BitSet :: Word -> BitSet Stricts: _
FamilyInstance: none
newtype EnumBitSet a
RecFlag NonRecursive
= EBS :: forall a. BitSet -> EnumBitSet a Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom Util.BitSet.NTCo:BitSet [] :: BitSet ~# Word
axiom Util.BitSet.NTCo:EnumBitSet [a] :: EnumBitSet a ~# BitSet
axiom Util.BitSet.TFCo:R:ElemEnumBitSet [a]
:: Elem (EnumBitSet a) ~# Util.BitSet.R:ElemEnumBitSet a
axiom Util.BitSet.TFCo:R:ElemBitSet []
:: Elem BitSet ~# Util.BitSet.R:ElemBitSet
axiom Util.BitSet.TFCo:R:KeyEnumBitSet [a]
:: Key (EnumBitSet a) ~# Util.BitSet.R:KeyEnumBitSet a
axiom Util.BitSet.TFCo:R:KeyBitSet []
:: Key BitSet ~# Util.BitSet.R:KeyBitSet
INSTANCES
instance [overlap ok] Eq BitSet
-- Defined at src/Util/BitSet.hs:18:14
instance [overlap ok] Ord BitSet
-- Defined at src/Util/BitSet.hs:18:17
instance [overlap ok] Monoid (EnumBitSet a)
-- Defined at src/Util/BitSet.hs:95:14
instance [overlap ok] Unionize (EnumBitSet a)
-- Defined at src/Util/BitSet.hs:95:21
instance [overlap ok] HasSize (EnumBitSet a)
-- Defined at src/Util/BitSet.hs:95:30
instance [overlap ok] Eq (EnumBitSet a)
-- Defined at src/Util/BitSet.hs:95:38
instance [overlap ok] Ord (EnumBitSet a)
-- Defined at src/Util/BitSet.hs:95:41
instance [overlap ok] IsEmpty (EnumBitSet a)
-- Defined at src/Util/BitSet.hs:95:45
instance [overlap ok] Enum a => SetLike (EnumBitSet a)
-- Defined at src/Util/BitSet.hs:104:10
instance [overlap ok] Enum a => Collection (EnumBitSet a)
-- Defined at src/Util/BitSet.hs:98:10
instance [overlap ok] Show BitSet
-- Defined at src/Util/BitSet.hs:91:10
instance [overlap ok] HasSize BitSet
-- Defined at src/Util/BitSet.hs:55:10
instance [overlap ok] IsEmpty BitSet
-- Defined at src/Util/BitSet.hs:52:10
instance [overlap ok] SetLike BitSet
-- Defined at src/Util/BitSet.hs:40:10
instance [overlap ok] Collection BitSet
-- Defined at src/Util/BitSet.hs:31:10
instance [overlap ok] Unionize BitSet
-- Defined at src/Util/BitSet.hs:25:10
instance [overlap ok] Monoid BitSet
-- Defined at src/Util/BitSet.hs:20:10
FAMILY INSTANCES
type instance Elem (EnumBitSet a)
-- Defined at src/Util/BitSet.hs:97:15
type instance Elem BitSet -- Defined at src/Util/BitSet.hs:29:16
type instance Key (EnumBitSet a)
-- Defined at src/Util/BitSet.hs:103:16
type instance Key BitSet -- Defined at src/Util/BitSet.hs:39:15
Dependent modules: [(Util.HasSize, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp]
[ 55 of 182] Compiling Util.Relation ( src/Util/Relation.hs, src/Util/Relation.o )
TYPE SIGNATURES
domain :: forall a b. (Ord a, Ord b) => Rel a b -> Set a
mapDomain :: forall a b c.
(Ord a, Ord b, Ord c) =>
(a -> c) -> Rel a b -> Rel c b
mapRange :: forall a b c.
(Ord a, Ord b, Ord c) =>
(b -> c) -> Rel a b -> Rel a c
partitionDomain :: forall a b.
Ord a =>
(a -> Bool) -> Rel a b -> (Rel a b, Rel a b)
prune :: forall a b. Ord a => Map.Map a (Set b) -> Rel a b
range :: forall a b. (Ord a, Ord b) => Rel a b -> Set b
restrictDomain :: forall a b.
(Ord a, Ord b) =>
(a -> Bool) -> Rel a b -> Rel a b
restrictDomainS :: forall a b.
(Ord a, Ord b) =>
a -> Rel a b -> Rel a b
restrictDomainSet :: forall a b.
(Ord a, Ord b) =>
Set a -> Rel a b -> Rel a b
restrictRange :: forall a b.
(Ord a, Ord b) =>
(b -> Bool) -> Rel a b -> Rel a b
toRelationList :: forall a b.
(Ord a, Ord b) =>
Rel a b -> [(a, [b])]
unRel :: forall t t1. Rel t t1 -> Map.Map t (Set t1)
TYPE CONSTRUCTORS
newtype Rel a b
RecFlag NonRecursive
= Rel :: forall a b. (Map.Map a (Set b)) -> Rel a b Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom Util.Relation.NTCo:Rel [a, b] :: Rel a b ~# Map.Map a (Set b)
axiom Util.Relation.TFCo:R:ElemRel [a, b]
:: Elem (Rel a b) ~# Util.Relation.R:ElemRel a b
axiom Util.Relation.TFCo:R:KeyRel [a, b]
:: Key (Rel a b) ~# Util.Relation.R:KeyRel a b
INSTANCES
instance [overlap ok] (Eq a, Eq b) => Eq (Rel a b)
-- Defined at src/Util/Relation.hs:13:14
instance [overlap ok] (Ord a, Ord b) => Collection (Rel a b)
-- Defined at src/Util/Relation.hs:25:10
instance [overlap ok] (Ord a, Ord b) => Unionize (Rel a b)
-- Defined at src/Util/Relation.hs:19:10
instance [overlap ok] (Ord a, Ord b) => Monoid (Rel a b)
-- Defined at src/Util/Relation.hs:15:10
FAMILY INSTANCES
type instance Elem (Rel a b)
-- Defined at src/Util/Relation.hs:33:15
type instance Key (Rel a b)
-- Defined at src/Util/Relation.hs:34:15
Dependent modules: [(Util.HasSize, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp]
[ 56 of 182] Compiling StringTable.Atom ( src/StringTable/Atom.hs, src/StringTable/Atom.o )
TYPE SIGNATURES
StringTable.Atom.$cAtom :: Constr
StringTable.Atom.$dmfromAtom :: forall a. FromAtom a => Atom -> a
StringTable.Atom.$dmfromAtomIO :: forall a.
FromAtom a =>
Atom -> IO a
StringTable.Atom.$dmtoAtom :: forall a. ToAtom a => a -> Atom
StringTable.Atom.$dmtoAtomIO :: forall a. ToAtom a => a -> IO Atom
StringTable.Atom.$tAtom :: DataType
atomAppend :: Atom -> Atom -> IO Atom
atomCompare :: Atom -> Atom -> Ordering
c_atomCompare :: Atom -> Atom -> CInt
dumpStringTableStats :: IO ()
dumpTable :: IO ()
dumpToFile :: IO ()
hash2 :: Word32 -> CString -> Int -> IO Word32
hashlittle :: CString -> CSize -> Word32 -> IO Word32
intToAtom :: forall (m :: * -> *). Monad m => Int -> m Atom
isValidAtom :: Int -> Bool
stAdd :: CString -> CInt -> IO Atom
stPtr :: Atom -> CString
unsafeByteIndex :: Atom -> Int -> Word8
unsafeIntToAtom :: Int -> Atom
TYPE CONSTRUCTORS
newtype Atom
RecFlag NonRecursive
= Atom :: Word32 -> Atom Stricts: _
FamilyInstance: none
class FromAtom a
RecFlag NonRecursive
fromAtom {- Has default method -} :: Atom -> a
fromAtomIO {- Has default method -} :: Atom -> IO a
class HasHash a
RecFlag NonRecursive
hash32 :: a -> Word32
class ToAtom a
RecFlag NonRecursive
toAtom {- Has default method -} :: a -> Atom
toAtomIO {- Has default method -} :: a -> IO Atom
COERCION AXIOMS
axiom StringTable.Atom.NTCo:Atom [] :: Atom ~# Word32
axiom StringTable.Atom.NTCo:HasHash [a]
:: HasHash a ~# (a -> Word32)
axiom StringTable.Atom.NTCo:R:GMapAtomv []
:: StringTable.Atom.R:GMapAtomv ~# IntjectionMap Atom
axiom StringTable.Atom.TFCo:R:GMapAtomv [v]
:: GMap Atom v ~# StringTable.Atom.R:GMapAtomv v
axiom StringTable.Atom.NTCo:R:GSetAtom []
:: StringTable.Atom.R:GSetAtom ~# IntjectionSet Atom
axiom StringTable.Atom.TFCo:R:GSetAtom []
:: GSet Atom ~# StringTable.Atom.R:GSetAtom
INSTANCES
instance [overlap ok] Typeable Atom
-- Defined at src/StringTable/Atom.hsc:40:14
instance [overlap ok] Eq Atom
-- Defined at src/StringTable/Atom.hsc:40:23
instance [overlap ok] Data Atom
-- Defined at src/StringTable/Atom.hsc:40:26
instance [overlap ok] Ord Atom
-- Defined at src/StringTable/Atom.hsc:40:31
instance [overlap ok] Monoid (GMap Atom v)
-- Defined at src/StringTable/Atom.hsc:166:14
instance [overlap ok] IsEmpty (GMap Atom v)
-- Defined at src/StringTable/Atom.hsc:166:21
instance [overlap ok] HasSize (GMap Atom v)
-- Defined at src/StringTable/Atom.hsc:166:29
instance [overlap ok] Collection (GMap Atom v)
-- Defined at src/StringTable/Atom.hsc:166:37
instance [overlap ok] Unionize (GMap Atom v)
-- Defined at src/StringTable/Atom.hsc:166:48
instance [overlap ok] SetLike (GMap Atom v)
-- Defined at src/StringTable/Atom.hsc:166:57
instance [overlap ok] MapLike (GMap Atom v)
-- Defined at src/StringTable/Atom.hsc:166:65
instance [overlap ok] Eq v => Eq (GMap Atom v)
-- Defined at src/StringTable/Atom.hsc:166:73
instance [overlap ok] Ord v => Ord (GMap Atom v)
-- Defined at src/StringTable/Atom.hsc:166:76
instance [overlap ok] Monoid (GSet Atom)
-- Defined at src/StringTable/Atom.hsc:164:14
instance [overlap ok] IsEmpty (GSet Atom)
-- Defined at src/StringTable/Atom.hsc:164:21
instance [overlap ok] HasSize (GSet Atom)
-- Defined at src/StringTable/Atom.hsc:164:29
instance [overlap ok] Collection (GSet Atom)
-- Defined at src/StringTable/Atom.hsc:164:37
instance [overlap ok] Unionize (GSet Atom)
-- Defined at src/StringTable/Atom.hsc:164:48
instance [overlap ok] SetLike (GSet Atom)
-- Defined at src/StringTable/Atom.hsc:164:57
instance [overlap ok] Eq (GSet Atom)
-- Defined at src/StringTable/Atom.hsc:164:65
instance [overlap ok] Ord (GSet Atom)
-- Defined at src/StringTable/Atom.hsc:164:68
instance [overlap ok] Show (GSet Atom)
-- Defined at src/StringTable/Atom.hsc:164:72
instance [overlap ok] Binary Atom
-- Defined at src/StringTable/Atom.hsc:171:10
instance [overlap ok] Functor (GMap Atom)
-- Defined at src/StringTable/Atom.hsc:168:10
instance [overlap ok] Intjection Atom
-- Defined at src/StringTable/Atom.hsc:159:10
instance [overlap ok] Read Atom
-- Defined at src/StringTable/Atom.hsc:128:10
instance [overlap ok] Show Atom
-- Defined at src/StringTable/Atom.hsc:125:10
instance [overlap ok] IsString Atom
-- Defined at src/StringTable/Atom.hsc:122:10
instance [overlap ok] Monoid Atom
-- Defined at src/StringTable/Atom.hsc:118:10
instance [overlap ok] FromAtom BS.ByteString
-- Defined at src/StringTable/Atom.hsc:113:10
instance [overlap ok] FromAtom Int
-- Defined at src/StringTable/Atom.hsc:110:10
instance [overlap ok] FromAtom Word
-- Defined at src/StringTable/Atom.hsc:107:10
instance [overlap ok] FromAtom CStringLen
-- Defined at src/StringTable/Atom.hsc:103:10
instance [overlap ok] ToAtom BS.ByteString
-- Defined at src/StringTable/Atom.hsc:100:10
instance [overlap ok] FromAtom String
-- Defined at src/StringTable/Atom.hsc:97:10
instance [overlap ok] ToAtom String
-- Defined at src/StringTable/Atom.hsc:94:10
instance [overlap ok] ToAtom CString
-- Defined at src/StringTable/Atom.hsc:89:10
instance [overlap ok] ToAtom CStringLen
-- Defined at src/StringTable/Atom.hsc:83:10
instance [overlap ok] ToAtom Char
-- Defined at src/StringTable/Atom.hsc:80:10
instance [overlap ok] FromAtom Atom
-- Defined at src/StringTable/Atom.hsc:77:10
instance [overlap ok] ToAtom Atom
-- Defined at src/StringTable/Atom.hsc:74:10
instance [overlap ok] FromAtom (String -> String)
-- Defined at src/StringTable/Atom.hsc:71:10
instance [overlap ok] HasHash String
-- Defined at src/StringTable/Atom.hsc:67:10
instance [overlap ok] HasHash BS.ByteString
-- Defined at src/StringTable/Atom.hsc:63:10
instance [overlap ok] HasHash Atom
-- Defined at src/StringTable/Atom.hsc:59:10
FAMILY INSTANCES
newtype instance GMap Atom v
-- Defined at src/StringTable/Atom.hsc:165:18
newtype instance GSet Atom
-- Defined at src/StringTable/Atom.hsc:163:18
Dependent modules: [(Util.GMap, False), (Util.HasSize, False),
(Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0, ghc-prim,
integer-gmp, utf8-string-0.3.7]
[ 57 of 182] Compiling IO ( compat/haskell98/IO.hs, src/IO.o )
TYPE SIGNATURES
bracket :: forall a b c. IO a -> (a -> IO b) -> (a -> IO c) -> IO c
bracket_ :: forall a b c. IO a -> (a -> IO b) -> IO c -> IO c
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 58 of 182] Compiling Doc.Pretty ( src/Doc/Pretty.hs, src/Doc/Pretty.o )
TYPE SIGNATURES
<$$> :: Doc -> Doc -> Doc
Doc.Pretty.<$> :: Doc -> Doc -> Doc
<//> :: Doc -> Doc -> Doc
</> :: Doc -> Doc -> Doc
align :: Doc -> Doc
beside :: Doc -> Doc -> Doc
cat :: [Doc] -> Doc
column :: (Int -> Doc) -> Doc
displayIO :: Handle -> SimpleDoc -> IO ()
displayM :: forall (m :: * -> *).
Monad m =>
(String -> m ()) -> SimpleDoc -> m ()
displayS :: SimpleDoc -> ShowS
empty :: Doc
Doc.Pretty.encloseSep :: Doc -> Doc -> Doc -> [Doc] -> Doc
errorDoc :: forall a. Doc -> a
failDoc :: forall (m :: * -> *) a. Monad m => Doc -> m a
fill :: Int -> Doc -> Doc
fillBreak :: Int -> Doc -> Doc
fillCat :: [Doc] -> Doc
fillSep :: [Doc] -> Doc
fits :: Int -> SimpleDoc -> Bool
flatten :: Doc -> Doc
fold :: (Doc -> Doc -> Doc) -> [Doc] -> Doc
group :: Doc -> Doc
hPutDoc :: Handle -> Doc -> IO ()
hang :: Int -> Doc -> Doc
indent :: Int -> Doc -> Doc
indentation :: Int -> [Char]
line :: Doc
linebreak :: Doc
mychar :: Char -> Doc
mytext :: [Char] -> Doc
nest :: Int -> Doc -> Doc
nesting :: (Int -> Doc) -> Doc
oob :: String -> Doc
putDoc :: Doc -> IO ()
putDocM :: forall (m :: * -> *).
Monad m =>
(String -> m ()) -> Doc -> m ()
putDocMLn :: forall (m :: * -> *).
Monad m =>
(String -> m ()) -> Doc -> m ()
renderCompact :: Doc -> SimpleDoc
renderPretty :: Float -> Int -> Doc -> SimpleDoc
sep :: [Doc] -> Doc
softbreak :: Doc
softline :: Doc
spaces :: Int -> [Char]
textProc :: (Char -> String) -> String -> Doc
Doc.Pretty.vcat :: [Doc] -> Doc
vsep :: [Doc] -> Doc
width :: Doc -> (Int -> Doc) -> Doc
TYPE CONSTRUCTORS
data Doc
RecFlag NonRecursive
= Empty :: Doc |
Char :: Char -> Doc Stricts: _ |
Text :: Int -> String -> Doc HasWrapper Stricts: ! _ |
Line :: Bool -> Doc HasWrapper Stricts: ! |
Cat :: Doc -> Doc -> Doc Stricts: _ _ |
Nest :: Int -> Doc -> Doc HasWrapper Stricts: ! _ |
Union :: Doc -> Doc -> Doc Stricts: _ _ |
Column :: (Int -> Doc) -> Doc Stricts: _ |
Nesting :: (Int -> Doc) -> Doc Stricts: _
FamilyInstance: none
data Docs
RecFlag NonRecursive
= Nil :: Docs |
Cons :: Int -> Doc -> Docs -> Docs HasWrapper Stricts: ! _ _
FamilyInstance: none
data SimpleDoc
RecFlag NonRecursive
= SEmpty :: SimpleDoc |
SChar :: Char -> SimpleDoc -> SimpleDoc Stricts: _ _ |
SText :: Int -> String -> SimpleDoc -> SimpleDoc
HasWrapper
Stricts: ! _ _ |
SLine :: Int -> SimpleDoc -> SimpleDoc HasWrapper Stricts: ! _
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Show Doc
-- Defined at src/Doc/Pretty.hs:359:10
instance [overlap ok] DocLike Doc
-- Defined at src/Doc/Pretty.hs:103:10
instance [overlap ok] TextLike Doc
-- Defined at src/Doc/Pretty.hs:98:10
instance [overlap ok] Monoid Doc
-- Defined at src/Doc/Pretty.hs:93:10
Dependent modules: [(Doc.DocLike, False), (IO, False)]
Dependent packages: [base, ghc-prim, integer-gmp, mtl-2.1.1,
pretty-1.1.1.0, transformers-0.3.0.0]
[ 59 of 182] Compiling Fixer.Fixer ( src/Fixer/Fixer.hs, src/Fixer/Fixer.o )
TYPE SIGNATURES
Fixer.Fixer.$dmlte :: forall a. Fixable a => a -> a -> Bool
Fixer.Fixer.$dmshowFixable :: forall a. Fixable a => a -> String
action :: forall a. RvValue a -> IORef [a -> IO ()]
addAction :: forall a.
Fixable a =>
Value a -> (a -> IO ()) -> IO ()
addRule :: forall (m :: * -> *). MonadIO m => Rule -> m ()
calcFixpoint :: forall (m :: * -> *).
MonadIO m =>
String -> Fixer -> m ()
conditionalRule :: forall a.
Fixable a =>
(a -> Bool) -> Value a -> Rule -> Rule
current :: forall a. RvValue a -> IORef a
dynamicRule :: forall a.
Fixable a =>
Value a -> (a -> Rule) -> Rule
findFixpoint :: forall (m :: * -> *).
MonadIO m =>
Maybe (String, Handle) -> Fixer -> m ()
fixer :: forall a. RvValue a -> Fixer
ident :: forall a. RvValue a -> Unique
ioToRule :: IO () -> Rule
ioValue :: forall a. IO (Value a) -> Value a
isSuperSetOf :: forall a. Fixable a => Value a -> Value a -> Rule
modifiedSuperSetOf :: forall a b.
(Fixable a, Fixable b) =>
Value b -> Value a -> (a -> b) -> Rule
newFixer :: forall (m :: * -> *). MonadIO m => m Fixer
newValue :: forall (m :: * -> *) a.
(MonadIO m, Fixable a) =>
Fixer -> a -> m (Value a)
pending :: forall a. RvValue a -> IORef a
propagateValue :: forall a. Fixable a => a -> RvValue a -> IO ()
readRawValue :: forall a (m :: * -> *).
(Fixable a, MonadIO m) =>
Value a -> m a
readValue :: forall a (m :: * -> *).
(Fixable a, MonadIO m) =>
Value a -> m a
todo :: Fixer -> IORef (Set.Set MkFixable)
unRule :: Rule -> IO ()
value :: forall a. a -> Value a
vars :: Fixer -> IORef [MkFixable]
TYPE CONSTRUCTORS
class Fixable a
RecFlag NonRecursive
bottom :: a
isBottom :: a -> Bool
lub :: a -> a -> a
minus :: a -> a -> a
lte {- Has default method -} :: a -> a -> Bool
showFixable {- Has default method -} :: a -> String
data Fixer
RecFlag NonRecursive
= Fixer :: (IORef [MkFixable]) -> (IORef (Set.Set MkFixable))
-> Fixer
HasWrapper
Stricts: {-# UNPACK #-} ! {-# UNPACK #-} !
Fields: vars todo
FamilyInstance: none
data MkFixable
RecFlag NonRecursive
= MkFixable :: forall a. Fixable a => (RvValue a) -> MkFixable
Stricts: _
FamilyInstance: none
newtype Rule
RecFlag NonRecursive
= Rule :: (IO ()) -> Rule Stricts: _ Fields: unRule
FamilyInstance: none
data RvValue a
RecFlag Recursive
= RvValue :: forall a.
Unique -> (IORef [a -> IO ()]) -> (IORef a) -> (IORef a) -> Fixer
-> RvValue a
HasWrapper
Stricts: ! {-# UNPACK #-} ! {-# UNPACK #-} ! {-# UNPACK #-} ! _
Fields: ident action pending current fixer
FamilyInstance: none
data Value a
RecFlag NonRecursive
= IOValue :: forall a. (IO (Value a)) -> Value a Stricts: _ |
UnionValue :: forall a. (Value a) -> (Value a) -> Value a
Stricts: _ _ |
ConstValue :: forall a. a -> Value a Stricts: _ |
IV :: forall a. (RvValue a) -> Value a Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom Fixer.Fixer.NTCo:Rule [] :: Rule ~# IO ()
INSTANCES
instance [overlap ok] Typeable Rule
-- Defined at src/Fixer/Fixer.hs:93:14
instance [overlap ok] Typeable1 Value
-- Defined at src/Fixer/Fixer.hs:105:14
instance [overlap ok] Fixable a => Fixable (Maybe a)
-- Defined at src/Fixer/Fixer.hs:292:10
instance [overlap ok] (Fixable a, Fixable b) => Fixable (a, b)
-- Defined at src/Fixer/Fixer.hs:285:10
instance [overlap ok] Fixable Int
-- Defined at src/Fixer/Fixer.hs:278:10
instance [overlap ok] Fixable Bool
-- Defined at src/Fixer/Fixer.hs:268:10
instance [overlap ok] Ord n => Fixable (Set.Set n)
-- Defined at src/Fixer/Fixer.hs:262:10
instance [overlap ok] Ord MkFixable
-- Defined at src/Fixer/Fixer.hs:124:10
instance [overlap ok] Eq MkFixable
-- Defined at src/Fixer/Fixer.hs:121:10
instance [overlap ok] Fixable a => Show (Value a)
-- Defined at src/Fixer/Fixer.hs:107:10
instance [overlap ok] Fixable a => Monoid (Value a)
-- Defined at src/Fixer/Fixer.hs:100:10
instance [overlap ok] Monoid Rule
-- Defined at src/Fixer/Fixer.hs:95:10
Dependent modules: [(IO, False), (Monad, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp, mtl-2.1.1,
transformers-0.3.0.0]
[ 60 of 182] Compiling Fixer.Supply ( src/Fixer/Supply.hs, src/Fixer/Supply.o )
TYPE SIGNATURES
newSupply :: forall (m :: * -> *) b a.
MonadIO m =>
Fixer -> m (Supply b a)
readSValue :: forall (m :: * -> *) b a.
(MonadIO m, Ord b, Fixable a) =>
Supply b a -> b -> m a
sValue :: forall b a.
(Ord b, Fixable a) =>
Supply b a -> b -> Value a
supplyReadValues :: forall a (m :: * -> *) b.
(Fixable a, MonadIO m) =>
Supply b a -> m [(b, a)]
supplyValue :: forall (m :: * -> *) b a.
(MonadIO m, Ord b, Fixable a) =>
Supply b a -> b -> m (Value a)
TYPE CONSTRUCTORS
data Supply b a
RecFlag NonRecursive
= Supply :: forall b a.
Fixer -> (IORef (Map.Map b (Value a))) -> Supply b a
HasWrapper
Stricts: _ {-# UNPACK #-} !
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Typeable2 Supply
-- Defined at src/Fixer/Supply.hs:19:14
Dependent modules: [(Fixer.Fixer, False), (IO, False),
(Monad, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp, mtl-2.1.1,
transformers-0.3.0.0]
[ 61 of 182] Compiling Directory ( compat/haskell98/Directory.hs, src/Directory.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, directory-1.1.0.2, filepath-1.3.0.0,
ghc-prim, integer-gmp, old-locale-1.0.0.4, old-time-1.1.0.0,
unix-2.5.1.0]
[ 62 of 182] Compiling System ( compat/haskell98/System.hs, src/System.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp, process-1.1.0.1,
unix-2.5.1.0]
[ 63 of 182] Compiling Char ( compat/haskell98/Char.hs, src/Char.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: []
Dependent packages: [base, ghc-prim, integer-gmp]
[ 64 of 182] Compiling GenUtil ( src/GenUtil.hs, src/GenUtil.o )
TYPE SIGNATURES
/\/ :: forall a. [a] -> [a] -> [a]
buildTable :: [String] -> [(String, [String])] -> String
buildTableLL :: [(String, String)] -> [String]
buildTableRL :: [(String, String)] -> [String]
chunk :: forall a. Int -> [a] -> [[a]]
chunkText :: Int -> String -> String
concatMapM :: forall (m :: * -> *) a b.
Monad m =>
(a -> m [b]) -> [a] -> m [b]
count :: forall a. (a -> Bool) -> [a] -> Int
doTime :: forall a. String -> IO a -> IO a
endOfTime :: ClockTime
epoch :: ClockTime
exitSuccess :: forall a. IO a
expandTabs :: String -> String
expandTabs' :: Int -> Int -> String -> String
fmapLeft :: forall (f :: * -> *) a c b.
Functor f =>
(a -> c) -> f (Either a b) -> f (Either c b)
fmapRight :: forall (f :: * -> *) b c a.
Functor f =>
(b -> c) -> f (Either a b) -> f (Either a c)
foldl' :: forall a b. (a -> b -> a) -> a -> [b] -> a
foldl1M :: forall (m :: * -> *) a.
Monad m =>
(a -> a -> m a) -> [a] -> m a
foldl1M_ :: forall (m :: * -> *) a.
Monad m =>
(a -> a -> m a) -> [a] -> m ()
foldlM :: forall (m :: * -> *) a b.
Monad m =>
(a -> b -> m a) -> a -> [b] -> m a
foldlM_ :: forall (m :: * -> *) a b.
Monad m =>
(a -> b -> m a) -> a -> [b] -> m ()
fromEither :: forall a. Either a a -> a
fromLeft :: forall a b. Either a b -> a
fromRight :: forall a b. Either a b -> b
fst3 :: forall t t1 t2. (t, t1, t2) -> t
fsts :: forall a b. [(a, b)] -> [a]
getArgContents :: IO String
getOptContents :: String -> IO (String, [Char], [(Char, String)])
getPrefix :: forall (m :: * -> *).
Monad m =>
String -> String -> m String
groupFst :: forall a b. Eq a => [(a, b)] -> [[(a, b)]]
groupUnder :: forall b a. Eq b => (a -> b) -> [a] -> [[a]]
hasRepeatUnder :: forall a a1. Ord a1 => (a -> a1) -> [a] -> Bool
indentLines :: Int -> String -> String
intercalate :: forall a. [a] -> [[a]] -> [a]
ioM :: forall (m :: * -> *) a. Monad m => IO a -> IO (m a)
ioMp :: forall (m :: * -> *) a. MonadPlus m => IO a -> IO (m a)
iocatch :: forall a. IO a -> (IOException -> IO a) -> IO a
isConjoint :: forall a. Eq a => [a] -> [a] -> Bool
isDisjoint :: forall a. Eq a => [a] -> [a] -> Bool
isLeft :: forall t t1. Either t t1 -> Bool
isRight :: forall t t1. Either t t1 -> Bool
lefts :: forall a b. [Either a b] -> [a]
liftT2 :: forall a b c d. (a -> b, c -> d) -> (a, c) -> (b, d)
liftT3 :: forall t t1 t2 t3 t4 t5.
(t -> t3, t1 -> t4, t2 -> t5) -> (t, t1, t2) -> (t3, t4, t5)
liftT4 :: forall t t1 t2 t3 t4 t5 t6 t7.
(t -> t4, t1 -> t5, t2 -> t6, t3 -> t7)
-> (t, t1, t2, t3) -> (t4, t5, t6, t7)
lookupEnv :: forall (m :: * -> *).
Monad m =>
String -> IO (m String)
mapFst :: forall a b c. (a -> b) -> (a, c) -> (b, c)
mapFsts :: forall a b c. (a -> b) -> [(a, c)] -> [(b, c)]
mapMfst :: forall (m :: * -> *) b c a.
Monad m =>
(b -> m c) -> [(b, a)] -> m [(c, a)]
mapMsnd :: forall (m :: * -> *) b c a.
Monad m =>
(b -> m c) -> [(a, b)] -> m [(a, c)]
mapSnd :: forall a b c. (a -> b) -> (c, a) -> (c, b)
mapSnds :: forall a b c. (a -> b) -> [(c, a)] -> [(c, b)]
maximumUnder :: forall b a. Ord b => (a -> b) -> [a] -> a
maybeM :: forall (m :: * -> *) a.
Monad m =>
String -> Maybe a -> m a
maybeToMonad :: forall (m :: * -> *) a. Monad m => Maybe a -> m a
minimumUnder :: forall b a. Ord b => (a -> b) -> [a] -> a
naturals :: [Int]
on :: forall a b c. (a -> a -> b) -> (c -> a) -> c -> c -> b
overlaps :: forall a. Ord a => (a, a) -> (a, a) -> Bool
paragraph :: Int -> String -> String
paragraphBreak :: Int -> String -> String
parseOpt :: forall (m :: * -> *).
Monad m =>
String -> [String] -> m ([String], [Char], [(Char, String)])
perhapsM :: forall (m :: * -> *) a. Monad m => Bool -> a -> m a
powerSet :: forall a. [a] -> [[a]]
putErr :: String -> IO ()
putErrDie :: forall a. String -> IO a
putErrLn :: String -> IO ()
randomPermute :: forall a. StdGen -> [a] -> [a]
randomPermuteIO :: forall a. [a] -> IO [a]
rbdropWhile :: forall a. (a -> Bool) -> [a] -> [a]
rbreak :: forall a. (a -> Bool) -> [a] -> ([a], [a])
rdropWhile :: forall a. (a -> Bool) -> [a] -> [a]
readHex :: forall (m :: * -> *). Monad m => String -> m Int
readHexChar :: forall (m :: * -> *). Monad m => Char -> m Int
readM :: forall (m :: * -> *) a. (Monad m, Read a) => String -> m a
readsM :: forall (m :: * -> *) a.
(Monad m, Read a) =>
String -> m (a, String)
repMaybe :: forall a. (a -> Maybe a) -> a -> a
repeatM :: forall (m :: * -> *) a. Monad m => m a -> m [a]
repeatM_ :: forall (m :: * -> *) a. Monad m => m a -> m ()
replicateM :: forall (m :: * -> *) a.
Monad m =>
Int -> m a -> m [a]
replicateM_ :: forall (m :: * -> *) a.
Monad m =>
Int -> m a -> m ()
rights :: forall a b. [Either a b] -> [b]
rot13 :: String -> String
rot13Char :: Char -> Char
rspan :: forall a. (a -> Bool) -> [a] -> ([a], [a])
rtakeWhile :: forall a. (a -> Bool) -> [a] -> [a]
rtup :: forall t t1. t1 -> t -> (t, t1)
sameLength :: forall t t1. [t] -> [t1] -> Bool
shellQuote :: [String] -> String
showDuration :: forall a. (Show a, Integral a) => a -> String
simpleQuote :: [String] -> String
simpleUnquote :: String -> [String]
smerge :: forall a. Ord a => [a] -> [a] -> [a]
snd3 :: forall t t1 t2. (t, t1, t2) -> t1
snds :: forall a b. [(a, b)] -> [b]
snub :: forall a. Ord a => [a] -> [a]
snubFst :: forall a b. Ord a => [(a, b)] -> [(a, b)]
snubUnder :: forall b a. Ord b => (a -> b) -> [a] -> [a]
sortFst :: forall a b. Ord a => [(a, b)] -> [(a, b)]
sortGroupUnder :: forall a b. Ord a => (b -> a) -> [b] -> [[b]]
sortGroupUnderF :: forall a b.
Ord a =>
(b -> a) -> [b] -> [(a, [b])]
sortGroupUnderFG :: forall b a c.
Ord b =>
(a -> b) -> (a -> c) -> [a] -> [(b, [c])]
sortUnder :: forall b a. Ord b => (a -> b) -> [a] -> [a]
split :: forall a. (a -> Bool) -> [a] -> [[a]]
splitEither :: forall a b. [Either a b] -> ([a], [b])
thd3 :: forall t t1 t2. (t, t1, t2) -> t2
toMonadM :: forall (m :: * -> *) a. Monad m => m (Maybe a) -> m a
tokens :: forall a. (a -> Bool) -> [a] -> [[a]]
tr :: String -> String -> String -> String
trimBlankLines :: String -> String
triple :: forall t t1 t2. t -> t1 -> t2 -> (t, t1, t2)
TYPE CONSTRUCTORS
class Monad m => UniqueProducer (m::* -> *)
RecFlag NonRecursive
newUniq :: m Int
COERCION AXIOMS
{-# RULES "replicateM_/0" [ALWAYS]
forall m a $dMonad. replicateM_ 0
= const (return ghc-prim:GHC.Tuple.()) #-}
{-# RULES "replicateM/0" [ALWAYS]
forall m a $dMonad. replicateM 0
= const (return (ghc-prim:GHC.Types.[])) #-}
{-# RULES "snub/[x]" [ALWAYS] forall a $dOrd x. snub [x] = [x] #-}
{-# RULES "snub/[]" [ALWAYS]
forall a $dOrd. snub (ghc-prim:GHC.Types.[])
= ghc-prim:GHC.Types.[] #-}
{-# RULES "sort/snub" [ALWAYS]
forall a $dOrd $dOrd x. sort (snub x)
= snub x #-}
{-# RULES "snub/sort" [ALWAYS]
forall a $dOrd $dOrd x. snub (sort x)
= snub x #-}
{-# RULES "nub/snub" [ALWAYS]
forall a $dEq $dOrd x. nub (snub x)
= snub x #-}
{-# RULES "snub/nub" [ALWAYS]
forall a $dEq $dOrd x. snub (nub x)
= snub x #-}
{-# RULES "snub/snub" [ALWAYS]
forall a $dOrd $dOrd x. snub (snub x)
= snub x #-}
Dependent modules: [(CPUTime, False), (Char, False), (List, False),
(Monad, False), (Random, False), (System, False), (Time, False)]
Dependent packages: [array-0.4.0.0, base, deepseq-1.3.0.0,
ghc-prim, integer-gmp, old-locale-1.0.0.4, old-time-1.1.0.0,
process-1.1.0.1, random-1.0.1.1, time-1.4, unix-2.5.1.0]
[ 65 of 182] Compiling Support.TempDir ( src/Support/TempDir.hs, src/Support/TempDir.o )
TYPE SIGNATURES
addAtExit :: IO () -> IO ()
addCleanup :: FilePath -> IO Bool
c_mkdtemp :: CString -> IO CString
cleanTempDir :: Bool -> IO ()
cleanUp :: IO ()
createTempFile :: FilePath -> IO (FilePath, Handle)
fileInTempDir :: FilePath -> (FilePath -> IO ()) -> IO FilePath
filePathSafe :: FilePath -> Bool
getTempDir :: IO FilePath
ignoreError :: IO () -> IO ()
mkdtemp :: FilePath -> IO FilePath
putLog :: String -> IO ()
setTempDir :: FilePath -> IO ()
stackRef :: IORef [String]
tdRef :: IORef TempDir
tempDirAtExit :: TempDir -> [IO ()]
tempDirClean :: TempDir -> Bool
tempDirCleanup :: TempDir -> Set.Set FilePath
tempDirDump :: TempDir -> Bool
tempDirPath :: TempDir -> Maybe String
withStackStatus :: forall a. String -> IO a -> IO a
wrapMain :: IO () -> IO ()
TYPE CONSTRUCTORS
data TempDir
RecFlag NonRecursive
= TempDir :: Bool -> Bool -> (Maybe String) -> [IO ()]
-> (Set.Set FilePath) -> TempDir
Stricts: _ _ _ _ _
Fields: tempDirClean tempDirDump tempDirPath tempDirAtExit tempDirCleanup
FamilyInstance: none
COERCION AXIOMS
Dependent modules: [(CPUTime, False), (Char, False),
(GenUtil, False), (List, False), (Monad, False), (Random, False),
(System, False), (Time, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, directory-1.1.0.2, filepath-1.3.0.0, ghc-prim,
integer-gmp, old-locale-1.0.0.4, old-time-1.1.0.0, process-1.1.0.1,
random-1.0.1.1, time-1.4, unix-2.5.1.0]
[ 66 of 182] Compiling Util.Gen ( src/Util/Gen.hs, src/Util/Gen.o )
TYPE SIGNATURES
forMn :: forall (m :: * -> *) b a.
Monad m =>
[a] -> ((a, Int) -> m b) -> m [b]
forMn_ :: forall (m :: * -> *) b a.
Monad m =>
[a] -> ((a, Int) -> m b) -> m ()
maybeDo :: forall (m :: * -> *) a. Monad m => Maybe (m a) -> m ()
mconcatMap :: forall a a1. Monoid a => (a1 -> a) -> [a1] -> a
mconcatMapM :: forall (m :: * -> *) b a.
(Monad m, Monoid b) =>
(a -> m b) -> [a] -> m b
mintercalate :: forall a. Monoid a => a -> [a] -> a
runEither :: forall a. String -> Either String a -> a
runReadP :: forall (m :: * -> *) a.
Monad m =>
ReadP a -> String -> m a
shortenPath :: String -> IO String
travCollect :: forall w a.
Monoid w =>
((a -> Writer w a) -> a -> Writer w a) -> (a -> w) -> a -> w
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(CPUTime, False), (Char, False),
(Directory, False), (GenUtil, False), (List, False),
(Monad, False), (Random, False), (System, False), (Time, False)]
Dependent packages: [array-0.4.0.0, base, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, process-1.1.0.1,
random-1.0.1.1, time-1.4, transformers-0.3.0.0, unix-2.5.1.0]
[ 67 of 182] Compiling Cmm.Op ( drift_processed/Cmm/Op.hs, src/Cmm/Op.o )
TYPE SIGNATURES
Cmm.Op.$con2tag_ArchBits :: ArchBits -> ghc-prim:GHC.Prim.Int#
Cmm.Op.$con2tag_BinOp :: BinOp -> ghc-prim:GHC.Prim.Int#
Cmm.Op.$con2tag_ConvOp :: ConvOp -> ghc-prim:GHC.Prim.Int#
Cmm.Op.$con2tag_Op :: forall v. Op v -> ghc-prim:GHC.Prim.Int#
Cmm.Op.$con2tag_Ty :: Ty -> ghc-prim:GHC.Prim.Int#
Cmm.Op.$con2tag_TyBits :: TyBits -> ghc-prim:GHC.Prim.Int#
Cmm.Op.$con2tag_TyHint :: TyHint -> ghc-prim:GHC.Prim.Int#
Cmm.Op.$con2tag_UnOp :: UnOp -> ghc-prim:GHC.Prim.Int#
Cmm.Op.$con2tag_ValOp :: ValOp -> ghc-prim:GHC.Prim.Int#
Cmm.Op.$maxtag_BinOp :: Int
Cmm.Op.$maxtag_ConvOp :: Int
Cmm.Op.$maxtag_UnOp :: Int
Cmm.Op.$tag2con_BinOp :: Int -> BinOp
Cmm.Op.$tag2con_ConvOp :: Int -> ConvOp
Cmm.Op.$tag2con_UnOp :: Int -> UnOp
binopFunc :: Ty -> Ty -> BinOp -> Maybe String
binopInfix :: BinOp -> Maybe (String, Int)
binopType :: BinOp -> Ty -> Ty -> Ty
bits16 :: Ty
bits32 :: Ty
bits64 :: Ty
bits8 :: Ty
bits_max :: Ty
bits_ptr :: Ty
bool :: Ty
cmmTyBits :: forall a. ToCmmTy a => a -> Maybe Int
cmmTyHint :: forall a. ToCmmTy a => a -> Maybe TyHint
commuteBinOp :: BinOp -> Maybe BinOp
isAssociative :: BinOp -> Bool
isCommutable :: BinOp -> Bool
preadTy :: ReadP Ty
readTy :: forall (m :: * -> *). Monad m => String -> m Ty
stringToOpTy :: String -> Ty
unopFloat :: Ty -> UnOp -> Maybe String
TYPE CONSTRUCTORS
data ArchBits
RecFlag NonRecursive
= BitsMax :: ArchBits |
BitsPtr :: ArchBits |
BitsUnknown :: ArchBits
FamilyInstance: none
data BinOp
RecFlag NonRecursive
= Add :: BinOp |
Sub :: BinOp |
Mul :: BinOp |
Mulx :: BinOp |
UMulx :: BinOp |
Div :: BinOp |
Mod :: BinOp |
Quot :: BinOp |
Rem :: BinOp |
UDiv :: BinOp |
UMod :: BinOp |
And :: BinOp |
Or :: BinOp |
Xor :: BinOp |
Shl :: BinOp |
Shr :: BinOp |
Shra :: BinOp |
Rotl :: BinOp |
Rotr :: BinOp |
FAdd :: BinOp |
FSub :: BinOp |
FDiv :: BinOp |
FMul :: BinOp |
FPwr :: BinOp |
FAtan2 :: BinOp |
Eq :: BinOp |
NEq :: BinOp |
Gt :: BinOp |
Gte :: BinOp |
Lt :: BinOp |
Lte :: BinOp |
UGt :: BinOp |
UGte :: BinOp |
ULt :: BinOp |
ULte :: BinOp |
FEq :: BinOp |
FNEq :: BinOp |
FGt :: BinOp |
FGte :: BinOp |
FLt :: BinOp |
FLte :: BinOp |
FOrdered :: BinOp
FamilyInstance: none
data ConvOp
RecFlag NonRecursive
= F2I :: ConvOp |
F2U :: ConvOp |
U2F :: ConvOp |
I2F :: ConvOp |
F2F :: ConvOp |
Lobits :: ConvOp |
Sx :: ConvOp |
Zx :: ConvOp |
I2I :: ConvOp |
U2U :: ConvOp |
B2B :: ConvOp
FamilyInstance: none
class IsOperator o
RecFlag NonRecursive
isCheap :: o -> Bool isEagerSafe :: o -> Bool
data Op v
RecFlag NonRecursive
= BinOp :: forall v. BinOp -> v -> v -> Op v Stricts: _ _ _ |
UnOp :: forall v. UnOp -> v -> Op v Stricts: _ _ |
ValOp :: forall v. ValOp -> Op v Stricts: _ |
ConvOp :: forall v. ConvOp -> v -> Op v Stricts: _ _
FamilyInstance: none
class ToCmmTy a
RecFlag NonRecursive
toCmmTy :: a -> Maybe Ty
data Ty
RecFlag NonRecursive
= TyBits :: TyBits -> TyHint -> Ty HasWrapper Stricts: ! ! |
TyBool :: Ty |
TyComplex :: Ty -> Ty Stricts: _ |
TyVector :: Int -> Ty -> Ty HasWrapper Stricts: {-# UNPACK #-} ! _
FamilyInstance: none
data TyBits
RecFlag NonRecursive
= Bits :: Int -> TyBits HasWrapper Stricts: {-# UNPACK #-} ! |
BitsArch :: ArchBits -> TyBits HasWrapper Stricts: ! |
BitsExt :: String -> TyBits Stricts: _
FamilyInstance: none
data TyHint
RecFlag NonRecursive
= HintSigned :: TyHint |
HintUnsigned :: TyHint |
HintFloat :: TyHint |
HintCharacter :: TyHint |
HintNone :: TyHint
FamilyInstance: none
data UnOp
RecFlag NonRecursive
= Neg :: UnOp |
Com :: UnOp |
FAbs :: UnOp |
FNeg :: UnOp |
Sin :: UnOp |
Cos :: UnOp |
Tan :: UnOp |
Sinh :: UnOp |
Cosh :: UnOp |
Tanh :: UnOp |
Asin :: UnOp |
Acos :: UnOp |
Atan :: UnOp |
Log :: UnOp |
Exp :: UnOp |
Sqrt :: UnOp |
Bswap :: UnOp |
Ffs :: UnOp |
Clz :: UnOp |
Ctz :: UnOp |
Popcount :: UnOp |
Parity :: UnOp
FamilyInstance: none
data ValOp
RecFlag NonRecursive
= NaN :: ValOp |
PInf :: ValOp |
NInf :: ValOp |
PZero :: ValOp |
NZero :: ValOp
FamilyInstance: none
COERCION AXIOMS
axiom Cmm.Op.NTCo:ToCmmTy [a] :: ToCmmTy a ~# (a -> Maybe Ty)
INSTANCES
instance [overlap ok] Eq BinOp -- Defined at src/Cmm/Op.hs:94:14
instance [overlap ok] Show BinOp -- Defined at src/Cmm/Op.hs:94:17
instance [overlap ok] Ord BinOp -- Defined at src/Cmm/Op.hs:94:22
instance [overlap ok] Read BinOp -- Defined at src/Cmm/Op.hs:94:26
instance [overlap ok] Enum BinOp -- Defined at src/Cmm/Op.hs:94:31
instance [overlap ok] Bounded BinOp
-- Defined at src/Cmm/Op.hs:94:36
instance [overlap ok] Eq UnOp -- Defined at src/Cmm/Op.hs:123:14
instance [overlap ok] Show UnOp -- Defined at src/Cmm/Op.hs:123:17
instance [overlap ok] Ord UnOp -- Defined at src/Cmm/Op.hs:123:22
instance [overlap ok] Read UnOp -- Defined at src/Cmm/Op.hs:123:26
instance [overlap ok] Enum UnOp -- Defined at src/Cmm/Op.hs:123:31
instance [overlap ok] Bounded UnOp
-- Defined at src/Cmm/Op.hs:123:36
instance [overlap ok] Eq ConvOp -- Defined at src/Cmm/Op.hs:140:14
instance [overlap ok] Show ConvOp
-- Defined at src/Cmm/Op.hs:140:17
instance [overlap ok] Ord ConvOp -- Defined at src/Cmm/Op.hs:140:22
instance [overlap ok] Read ConvOp
-- Defined at src/Cmm/Op.hs:140:26
instance [overlap ok] Enum ConvOp
-- Defined at src/Cmm/Op.hs:140:31
instance [overlap ok] Bounded ConvOp
-- Defined at src/Cmm/Op.hs:140:36
instance [overlap ok] Eq ValOp -- Defined at src/Cmm/Op.hs:149:14
instance [overlap ok] Show ValOp -- Defined at src/Cmm/Op.hs:149:17
instance [overlap ok] Ord ValOp -- Defined at src/Cmm/Op.hs:149:22
instance [overlap ok] Read ValOp -- Defined at src/Cmm/Op.hs:149:26
instance [overlap ok] Bounded ValOp
-- Defined at src/Cmm/Op.hs:149:31
instance [overlap ok] Eq ArchBits
-- Defined at src/Cmm/Op.hs:153:14
instance [overlap ok] Ord ArchBits
-- Defined at src/Cmm/Op.hs:153:17
instance [overlap ok] Eq TyBits -- Defined at src/Cmm/Op.hs:157:14
instance [overlap ok] Ord TyBits -- Defined at src/Cmm/Op.hs:157:17
instance [overlap ok] Eq TyHint -- Defined at src/Cmm/Op.hs:166:14
instance [overlap ok] Ord TyHint -- Defined at src/Cmm/Op.hs:166:17
instance [overlap ok] Eq Ty -- Defined at src/Cmm/Op.hs:174:14
instance [overlap ok] Ord Ty -- Defined at src/Cmm/Op.hs:174:17
instance [overlap ok] Eq v => Eq (Op v)
-- Defined at src/Cmm/Op.hs:258:14
instance [overlap ok] Show v => Show (Op v)
-- Defined at src/Cmm/Op.hs:258:17
instance [overlap ok] Ord v => Ord (Op v)
-- Defined at src/Cmm/Op.hs:258:22
instance [overlap ok] Binary v => Binary (Op v)
-- Defined at src/Cmm/Op.hs:854:10
instance [overlap ok] Binary Ty -- Defined at src/Cmm/Op.hs:822:10
instance [overlap ok] Binary TyHint
-- Defined at src/Cmm/Op.hs:796:10
instance [overlap ok] Binary TyBits
-- Defined at src/Cmm/Op.hs:772:10
instance [overlap ok] Binary ArchBits
-- Defined at src/Cmm/Op.hs:754:10
instance [overlap ok] Binary ValOp
-- Defined at src/Cmm/Op.hs:728:10
instance [overlap ok] Binary ConvOp
-- Defined at src/Cmm/Op.hs:678:10
instance [overlap ok] Binary UnOp
-- Defined at src/Cmm/Op.hs:584:10
instance [overlap ok] Binary BinOp
-- Defined at src/Cmm/Op.hs:410:10
instance [overlap ok] IsOperator (Op v)
-- Defined at src/Cmm/Op.hs:400:10
instance [overlap ok] IsOperator ConvOp
-- Defined at src/Cmm/Op.hs:396:10
instance [overlap ok] IsOperator UnOp
-- Defined at src/Cmm/Op.hs:392:10
instance [overlap ok] IsOperator BinOp
-- Defined at src/Cmm/Op.hs:380:10
instance [overlap ok] Show ArchBits
-- Defined at src/Cmm/Op.hs:248:10
instance [overlap ok] Show TyBits
-- Defined at src/Cmm/Op.hs:243:10
instance [overlap ok] Show Ty -- Defined at src/Cmm/Op.hs:237:10
instance [overlap ok] Show TyHint
-- Defined at src/Cmm/Op.hs:230:10
instance [overlap ok] ToCmmTy String
-- Defined at src/Cmm/Op.hs:223:10
instance [overlap ok] ToCmmTy Ty -- Defined at src/Cmm/Op.hs:220:10
Dependent modules: [(CPUTime, False), (Char, False),
(Directory, False), (GenUtil, False), (List, False),
(Monad, False), (Random, False), (System, False), (Time, False),
(Util.Gen, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, process-1.1.0.1,
random-1.0.1.1, time-1.4, transformers-0.3.0.0, unix-2.5.1.0]
[ 68 of 182] Compiling C.Prims ( drift_processed/C/Prims.hs, src/C/Prims.o )
TYPE SIGNATURES
C.Prims.$con2tag_CallConv :: CallConv -> Int#
C.Prims.$con2tag_DotNetPrim :: DotNetPrim -> Int#
C.Prims.$con2tag_Prim :: Prim -> Int#
C.Prims.$con2tag_PrimTypeInfo :: PrimTypeInfo -> Int#
C.Prims.$con2tag_Safety :: Safety -> Int#
funcName :: Prim -> PackedString
parseDotNetFFI :: forall (m :: * -> *). Monad m => String -> m Prim
primArgTy :: Prim -> Op.Ty
primArgTypes :: Prim -> [ExtType]
primAssembly :: Prim -> PackedString
primCOp :: Prim -> Op.Op Op.Ty
primConst :: Prim -> PackedString
primDotNet :: Prim -> DotNetPrim
primDotNetName :: Prim -> PackedString
primEagerSafe :: Prim -> Bool
primIOLike :: Prim -> Bool
primIsCheap :: Prim -> Bool
primIsConstant :: Prim -> Bool
primPrim :: forall a. ToAtom a => a -> Prim
primReqs :: Prim -> Requires
primRequires :: Prim -> Requires
primRetArgs :: Prim -> [ExtType]
primRetTy :: Prim -> Op.Ty
primRetType :: Prim -> ExtType
primSafety :: Prim -> Safety
primStatic :: Prim -> Bool
primStaticTypeInfo :: Op.Ty -> PrimTypeInfo -> Maybe Integer
primTypeInfo :: Prim -> PrimTypeInfo
TYPE CONSTRUCTORS
data CallConv
RecFlag NonRecursive
= CCall :: CallConv |
StdCall :: CallConv |
CApi :: CallConv |
Primitive :: CallConv |
DotNet :: CallConv
FamilyInstance: none
data DotNetPrim
RecFlag NonRecursive
= DotNetField :: DotNetPrim |
DotNetCtor :: DotNetPrim |
DotNetMethod :: DotNetPrim
FamilyInstance: none
newtype ExtType
RecFlag NonRecursive
= ExtType :: PackedString -> ExtType Stricts: _
FamilyInstance: none
data Prim
RecFlag NonRecursive
= PrimPrim :: Atom -> Prim Stricts: _ |
CConst :: Requires -> PackedString -> Prim
HasWrapper
Stricts: _ !
Fields: primRequires primConst |
Func :: Requires -> PackedString -> [ExtType] -> ExtType
-> [ExtType] -> Safety -> Prim
HasWrapper
Stricts: _ ! _ _ _ _
Fields: primRequires funcName primArgTypes primRetType primRetArgs primSafety |
IFunc :: Requires -> [ExtType] -> ExtType -> Prim
Stricts: _ _ _
Fields: primRequires primArgTypes primRetType |
AddrOf :: Requires -> PackedString -> Prim
HasWrapper
Stricts: _ !
Fields: primRequires primConst |
Peek :: Op.Ty -> Prim Stricts: _ Fields: primArgTy |
Poke :: Op.Ty -> Prim Stricts: _ Fields: primArgTy |
PrimTypeInfo :: Op.Ty -> Op.Ty -> PrimTypeInfo -> Prim
HasWrapper
Stricts: _ _ !
Fields: primArgTy primRetTy primTypeInfo |
PrimString :: PackedString -> Prim HasWrapper Stricts: ! |
PrimDotNet :: Bool -> DotNetPrim -> Bool -> PackedString
-> PackedString -> Prim
HasWrapper
Stricts: ! ! ! ! !
Fields: primStatic primDotNet primIOLike primAssembly primDotNetName |
Op :: (Op.Op Op.Ty) -> Op.Ty -> Prim
Stricts: _ _
Fields: primCOp primRetTy
FamilyInstance: none
data PrimTypeInfo
RecFlag NonRecursive
= PrimSizeOf :: PrimTypeInfo |
PrimMaxBound :: PrimTypeInfo |
PrimMinBound :: PrimTypeInfo |
PrimAlignmentOf :: PrimTypeInfo |
PrimUMaxBound :: PrimTypeInfo
FamilyInstance: none
newtype Requires
RecFlag NonRecursive
= Requires :: (Set.Set (CallConv, PackedString)) -> Requires
Stricts: _
FamilyInstance: none
data Safety
RecFlag NonRecursive
= Safe :: Safety | Unsafe :: Safety
FamilyInstance: none
COERCION AXIOMS
axiom C.Prims.NTCo:ExtType [] :: ExtType ~# PackedString
axiom C.Prims.NTCo:Requires []
:: Requires ~# Set.Set (CallConv, PackedString)
INSTANCES
instance [overlap ok] Typeable DotNetPrim
-- Defined at src/C/Prims.hs:37:14
instance [overlap ok] Typeable PrimTypeInfo
-- Defined at src/C/Prims.hs:93:14
instance [overlap ok] Typeable Prim
-- Defined at src/C/Prims.hs:89:14
instance [overlap ok] Eq CallConv
-- Defined at src/C/Prims.hs:18:14
instance [overlap ok] Ord CallConv
-- Defined at src/C/Prims.hs:18:17
instance [overlap ok] Show CallConv
-- Defined at src/C/Prims.hs:18:21
instance [overlap ok] Eq Safety -- Defined at src/C/Prims.hs:21:38
instance [overlap ok] Ord Safety -- Defined at src/C/Prims.hs:21:41
instance [overlap ok] Show Safety
-- Defined at src/C/Prims.hs:21:45
instance [overlap ok] Binary ExtType
-- Defined at src/C/Prims.hs:25:14
instance [overlap ok] IsString ExtType
-- Defined at src/C/Prims.hs:25:21
instance [overlap ok] Eq ExtType -- Defined at src/C/Prims.hs:25:30
instance [overlap ok] Ord ExtType
-- Defined at src/C/Prims.hs:25:33
instance [overlap ok] Eq Requires
-- Defined at src/C/Prims.hs:34:14
instance [overlap ok] Ord Requires
-- Defined at src/C/Prims.hs:34:17
instance [overlap ok] Monoid Requires
-- Defined at src/C/Prims.hs:34:21
instance [overlap ok] Binary Requires
-- Defined at src/C/Prims.hs:34:28
instance [overlap ok] Eq DotNetPrim
-- Defined at src/C/Prims.hs:37:24
instance [overlap ok] Ord DotNetPrim
-- Defined at src/C/Prims.hs:37:28
instance [overlap ok] Show DotNetPrim
-- Defined at src/C/Prims.hs:37:33
instance [overlap ok] Eq PrimTypeInfo
-- Defined at src/C/Prims.hs:93:24
instance [overlap ok] Ord PrimTypeInfo
-- Defined at src/C/Prims.hs:93:28
instance [overlap ok] Show PrimTypeInfo
-- Defined at src/C/Prims.hs:93:33
instance [overlap ok] Eq Prim -- Defined at src/C/Prims.hs:89:24
instance [overlap ok] Ord Prim -- Defined at src/C/Prims.hs:89:28
instance [overlap ok] Show Prim -- Defined at src/C/Prims.hs:89:33
instance [overlap ok] Binary PrimTypeInfo
-- Defined at src/C/Prims.hs:346:10
instance [overlap ok] Binary Prim
-- Defined at src/C/Prims.hs:242:10
instance [overlap ok] Binary DotNetPrim
-- Defined at src/C/Prims.hs:224:10
instance [overlap ok] Binary Safety
-- Defined at src/C/Prims.hs:210:10
instance [overlap ok] Binary CallConv
-- Defined at src/C/Prims.hs:184:10
instance [overlap ok] (DocLike d, Show v) => PPrint d (Op.Op v)
-- Defined at src/C/Prims.hs:167:10
instance [overlap ok] DocLike d => PPrint d Op.Ty
-- Defined at src/C/Prims.hs:165:10
instance [overlap ok] DocLike d => PPrint d Prim
-- Defined at src/C/Prims.hs:146:10
instance [overlap ok] DocLike d => PPrint d ExtType
-- Defined at src/C/Prims.hs:141:10
instance [overlap ok] Show Requires
-- Defined at src/C/Prims.hs:30:10
instance [overlap ok] Show ExtType
-- Defined at src/C/Prims.hs:27:10
Dependent modules: [(CPUTime, False), (Char, False),
(Cmm.Op, False), (Directory, False), (Doc.DocLike, False),
(Doc.PPrint, False), (GenUtil, False), (List, False),
(Monad, False), (PackedString, False), (Random, False),
(StringTable.Atom, False), (System, False), (Time, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 69 of 182] Compiling C.FFI ( drift_processed/C/FFI.hs, src/C/FFI.o )
TYPE SIGNATURES
C.FFI.$con2tag_FfiType :: FfiType -> ghc-prim:GHC.Prim.Int#
ffiExportArgTypes :: FfiExport -> [ExtType]
ffiExportCName :: FfiExport -> CName
ffiExportCallConv :: FfiExport -> CallConv
ffiExportRetType :: FfiExport -> ExtType
ffiExportSafety :: FfiExport -> Safety
TYPE CONSTRUCTORS
type CName
= String
FamilyInstance: none
data FfiExport
RecFlag NonRecursive
= FfiExport :: CName -> Safety -> CallConv -> [ExtType] -> ExtType
-> FfiExport
Stricts: _ _ _ _ _
Fields: ffiExportCName ffiExportSafety ffiExportCallConv ffiExportArgTypes ffiExportRetType
FamilyInstance: none
data FfiSpec
RecFlag NonRecursive
= FfiSpec :: FfiType -> Safety -> CallConv -> FfiSpec
Stricts: _ _ _
FamilyInstance: none
data FfiType
RecFlag NonRecursive
= Import :: CName -> Requires -> FfiType Stricts: _ _ |
ImportAddr :: CName -> Requires -> FfiType Stricts: _ _ |
Wrapper :: FfiType |
Dynamic :: FfiType
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Typeable FfiExport
-- Defined at src/C/FFI.hs:32:23
instance [overlap ok] Eq FfiType -- Defined at src/C/FFI.hs:20:23
instance [overlap ok] Ord FfiType -- Defined at src/C/FFI.hs:20:26
instance [overlap ok] Show FfiType -- Defined at src/C/FFI.hs:20:30
instance [overlap ok] Eq FfiSpec -- Defined at src/C/FFI.hs:23:23
instance [overlap ok] Ord FfiSpec -- Defined at src/C/FFI.hs:23:26
instance [overlap ok] Show FfiSpec -- Defined at src/C/FFI.hs:23:30
instance [overlap ok] Eq FfiExport -- Defined at src/C/FFI.hs:32:11
instance [overlap ok] Ord FfiExport
-- Defined at src/C/FFI.hs:32:14
instance [overlap ok] Show FfiExport
-- Defined at src/C/FFI.hs:32:18
instance [overlap ok] Binary FfiExport
-- Defined at src/C/FFI.hs:35:10
Dependent modules: [(C.Prims, False), (CPUTime, False),
(Char, False), (Cmm.Op, False), (Directory, False),
(Doc.DocLike, False), (Doc.PPrint, False), (GenUtil, False),
(List, False), (Monad, False), (PackedString, False),
(Random, False), (StringTable.Atom, False), (System, False),
(Time, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 70 of 182] Compiling Name.Name ( src/Name/Name.hs, src/Name/Name.o )
TYPE SIGNATURES
Name.Name.$cModule :: Constr
Name.Name.$cName :: Constr
Name.Name.$con2tag_NameType :: NameType -> ghc-prim:GHC.Prim.Int#
Name.Name.$maxtag_NameType :: Int
Name.Name.$tModule :: DataType
Name.Name.$tName :: DataType
Name.Name.$tag2con_NameType :: Int -> NameType
createName :: NameType -> Module -> String -> Name
createUName :: NameType -> String -> Name
ffiExportName :: FfiExport -> Name
fromModule :: forall a. FromAtom a => Module -> a
fromQuotedName :: Name -> Maybe Name
fromTypishHsName :: Name -> Name
fromValishHsName :: Name -> Name
getIdent :: Name -> String
getModule :: forall (m :: * -> *). Monad m => Name -> m Module
isConstructorLike :: Name -> Bool
isTypeNamespace :: NameType -> Bool
isValNamespace :: NameType -> Bool
mainModule :: Module
mapName :: (Module -> Module, String -> String) -> Name -> Name
mapName' :: (Maybe Module -> Maybe Module)
-> (String -> String) -> Name -> Name
nameName :: Name -> Name
nameParts :: Name -> (NameType, Maybe Module, String)
nameType :: Name -> NameType
parseName :: NameType -> String -> Name
preludeModule :: Module
primModule :: Module
qualifyName :: Module -> Name -> Name
quoteName :: Name -> Name
setModule :: Module -> Name -> Name
toModule :: String -> Module
toUnqualified :: Name -> Name
TYPE CONSTRUCTORS
type Class
= Name
FamilyInstance: none
newtype Module
RecFlag NonRecursive
= Module :: Atom -> Module Stricts: _
FamilyInstance: none
newtype Name
RecFlag NonRecursive
= Name :: Atom -> Name Stricts: _
FamilyInstance: none
data NameType
RecFlag NonRecursive
= TypeConstructor :: NameType |
DataConstructor :: NameType |
ClassName :: NameType |
TypeVal :: NameType |
Val :: NameType |
SortName :: NameType |
FieldLabel :: NameType |
RawType :: NameType |
UnknownType :: NameType |
QuotedName :: NameType
FamilyInstance: none
class ToName a
RecFlag NonRecursive
toName :: NameType -> a -> Name fromName :: Name -> (NameType, a)
COERCION AXIOMS
axiom Name.Name.NTCo:Name [] :: Name ~# Atom
axiom Name.Name.NTCo:Module [] :: Module ~# Atom
INSTANCES
instance [overlap ok] Typeable Name
-- Defined at src/Name/Name.hs:75:21
instance [overlap ok] Typeable Module
-- Defined at src/Name/Name.hs:211:20
instance [overlap ok] Ord NameType
-- Defined at src/Name/Name.hs:59:14
instance [overlap ok] Eq NameType
-- Defined at src/Name/Name.hs:59:18
instance [overlap ok] Enum NameType
-- Defined at src/Name/Name.hs:59:21
instance [overlap ok] Read NameType
-- Defined at src/Name/Name.hs:59:26
instance [overlap ok] Show NameType
-- Defined at src/Name/Name.hs:59:31
instance [overlap ok] Ord Name -- Defined at src/Name/Name.hs:75:14
instance [overlap ok] Eq Name -- Defined at src/Name/Name.hs:75:18
instance [overlap ok] Binary Name
-- Defined at src/Name/Name.hs:75:30
instance [overlap ok] Data Name
-- Defined at src/Name/Name.hs:75:37
instance [overlap ok] ToAtom Name
-- Defined at src/Name/Name.hs:75:42
instance [overlap ok] FromAtom Name
-- Defined at src/Name/Name.hs:75:49
instance [overlap ok] Eq Module
-- Defined at src/Name/Name.hs:211:12
instance [overlap ok] Data Module
-- Defined at src/Name/Name.hs:211:15
instance [overlap ok] ToAtom Module
-- Defined at src/Name/Name.hs:211:29
instance [overlap ok] FromAtom Module
-- Defined at src/Name/Name.hs:211:36
instance [overlap ok] Show Module
-- Defined at src/Name/Name.hs:216:10
instance [overlap ok] Ord Module
-- Defined at src/Name/Name.hs:213:10
instance [overlap ok] DocLike d => PPrint d Name
-- Defined at src/Name/Name.hs:180:10
instance [overlap ok] Show Name
-- Defined at src/Name/Name.hs:174:10
instance [overlap ok] ToName String
-- Defined at src/Name/Name.hs:126:10
instance [overlap ok] ToName Name
-- Defined at src/Name/Name.hs:121:10
instance [overlap ok] ToName (Maybe Module, String)
-- Defined at src/Name/Name.hs:115:10
instance [overlap ok] ToName (Module, String)
-- Defined at src/Name/Name.hs:109:10
instance [overlap ok] ToName (String, String)
-- Defined at src/Name/Name.hs:103:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(GenUtil, False), (List, False), (Monad, False),
(PackedString, False), (Random, False), (StringTable.Atom, False),
(System, False), (Time, False), (Util.GMap, False),
(Util.Gen, False), (Util.HasSize, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 71 of 182] Compiling Name.Prim ( src/Name/Prim.hs, src/Name/Prim.o )
TYPE SIGNATURES
class_Bounded :: Name
class_Enum :: Name
class_Eq :: Name
class_Floating :: Name
class_Fractional :: Name
class_Functor :: Name
class_Integral :: Name
class_Ix :: Name
class_Monad :: Name
class_Num :: Name
class_Ord :: Name
class_Read :: Name
class_Real :: Name
class_RealFloat :: Name
class_RealFrac :: Name
class_Show :: Name
dc_Boolzh :: Name
dc_Char :: Name
dc_Cons :: Name
dc_EQ :: Name
dc_EmptyList :: Name
dc_False :: Name
dc_Int :: Name
dc_Integer :: Name
dc_Pair :: Name
dc_Ratio :: Name
dc_True :: Name
dc_Unit :: Name
dc_Word :: Name
rt_bits128 :: Name
rt_bits16 :: Name
rt_bits32 :: Name
rt_bits64 :: Name
rt_bits8 :: Name
rt_bits_max_ :: Name
rt_bits_ptr_ :: Name
rt_bool :: Name
rt_float128 :: Name
rt_float32 :: Name
rt_float64 :: Name
rt_float80 :: Name
s_Bang :: Name
s_Hash :: Name
s_HashHash :: Name
s_Star :: Name
s_StarStar :: Name
s_Tuple :: Name
tc_ACIO :: Name
tc_Addr_ :: Name
tc_Arrow :: Name
tc_Bang_ :: Name
tc_Bits1 :: Name
tc_Bits128 :: Name
tc_Bits16 :: Name
tc_Bits32 :: Name
tc_Bits64 :: Name
tc_Bits8 :: Name
tc_BitsMax :: Name
tc_BitsPtr :: Name
tc_Bool :: Name
tc_Bool_ :: Name
tc_Char :: Name
tc_Char_ :: Name
tc_Complex :: Name
tc_Double :: Name
tc_Float :: Name
tc_Float128 :: Name
tc_Float32 :: Name
tc_Float64 :: Name
tc_Float80 :: Name
tc_FunAddr_ :: Name
tc_FunPtr :: Name
tc_IO :: Name
tc_IOErrorType :: Name
tc_IOMode :: Name
tc_Int :: Name
tc_Integer :: Name
tc_List :: Name
tc_MutArray__ :: Name
tc_Ordering :: Name
tc_Ptr :: Name
tc_Ratio :: Name
tc_RealWorld :: Name
tc_ST :: Name
tc_State_ :: Name
tc_Unit :: Name
v_and :: Name
v_bind :: Name
v_bind_ :: Name
v_cat :: Name
v_compare :: Name
v_compose :: Name
v_concatMap :: Name
v_drop :: Name
v_enumFrom :: Name
v_enumFromThen :: Name
v_enumFromThenTo :: Name
v_enumFromTo :: Name
v_enum_from :: Name
v_enum_fromThen :: Name
v_enum_fromThenTo :: Name
v_enum_fromTo :: Name
v_enum_pred :: Name
v_enum_succ :: Name
v_enum_toEnum :: Name
v_eqString :: Name
v_eqUnpackedString :: Name
v_equals :: Name
v_error :: Name
v_fail :: Name
v_foldl :: Name
v_foldr :: Name
v_fromEnum :: Name
v_fromInt :: Name
v_fromInteger :: Name
v_fromRational :: Name
v_geq :: Name
v_gt :: Name
v_inRange :: Name
v_index :: Name
v_ix_inRange :: Name
v_ix_index :: Name
v_ix_range :: Name
v_leq :: Name
v_lex :: Name
v_lt :: Name
v_map :: Name
v_maxBound :: Name
v_minBound :: Name
v_negate :: Name
v_pred :: Name
v_range :: Name
v_readParen :: Name
v_readsPrec :: Name
v_runExpr :: Name
v_runMain :: Name
v_runNoWrapper :: Name
v_runRaw :: Name
v_showChar :: Name
v_showParen :: Name
v_showString :: Name
v_showsPrec :: Name
v_sub :: Name
v_succ :: Name
v_toEnum :: Name
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (PackedString, False), (Random, False),
(StringTable.Atom, False), (System, False), (Time, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 72 of 182] Compiling FrontEnd.Tc.Kind ( drift_processed/FrontEnd/Tc/Kind.hs, src/FrontEnd/Tc/Kind.o )
TYPE SIGNATURES
FrontEnd.Tc.Kind.$con2tag_KBase :: KBase -> ghc-prim:GHC.Prim.Int#
FrontEnd.Tc.Kind.$con2tag_Kind :: Kind -> ghc-prim:GHC.Prim.Int#
FrontEnd.Tc.Kind.$con2tag_KindConstraint :: KindConstraint
-> ghc-prim:GHC.Prim.Int#
isSubsumedBy :: Kind -> Kind -> Bool
isSubsumedBy2 :: KBase -> KBase -> Bool
kindArg :: Kind
kindCombine :: forall (m :: * -> *).
Monad m =>
Kind -> Kind -> m Kind
kindFunRet :: Kind
kindHash :: Kind
kindStar :: Kind
kindUTuple :: Kind
kvarConstraint :: Kindvar -> KindConstraint
kvarRef :: Kindvar -> IORef (Maybe Kind)
kvarUniq :: Kindvar -> Int
unfoldKind :: Kind -> [Kind]
TYPE CONSTRUCTORS
data KBase
RecFlag NonRecursive
= Star :: KBase |
KHash :: KBase |
KUTuple :: KBase |
KQuestQuest :: KBase |
KQuest :: KBase |
KNamed :: Name -> KBase Stricts: _
FamilyInstance: none
data Kind
RecFlag NonRecursive
= KBase :: KBase -> Kind Stricts: _ |
Kfun :: Kind -> Kind -> Kind Stricts: _ _ |
KVar :: Kindvar -> Kind Stricts: _
FamilyInstance: none
data KindConstraint
RecFlag NonRecursive
= KindSimple :: KindConstraint |
KindQuest :: KindConstraint |
KindQuestQuest :: KindConstraint |
KindStar :: KindConstraint |
KindAny :: KindConstraint
FamilyInstance: none
data Kindvar
RecFlag NonRecursive
= Kindvar :: Int -> (IORef (Maybe Kind)) -> KindConstraint
-> Kindvar
HasWrapper
Stricts: {-# UNPACK #-} ! {-# UNPACK #-} ! !
Fields: kvarUniq kvarRef kvarConstraint
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Eq KBase
-- Defined at src/FrontEnd/Tc/Kind.hs:55:14
instance [overlap ok] Ord KBase
-- Defined at src/FrontEnd/Tc/Kind.hs:55:18
instance [overlap ok] Eq KindConstraint
-- Defined at src/FrontEnd/Tc/Kind.hs:107:14
instance [overlap ok] Ord KindConstraint
-- Defined at src/FrontEnd/Tc/Kind.hs:107:17
instance [overlap ok] Show KindConstraint
-- Defined at src/FrontEnd/Tc/Kind.hs:107:21
instance [overlap ok] Eq Kind
-- Defined at src/FrontEnd/Tc/Kind.hs:75:23
instance [overlap ok] Ord Kind
-- Defined at src/FrontEnd/Tc/Kind.hs:75:27
instance [overlap ok] Binary Kind
-- Defined at src/FrontEnd/Tc/Kind.hs:201:10
instance [overlap ok] Binary KBase
-- Defined at src/FrontEnd/Tc/Kind.hs:169:10
instance [overlap ok] DocLike d => PPrint d Kindvar
-- Defined at src/FrontEnd/Tc/Kind.hs:160:10
instance [overlap ok] DocLike d => PPrint d Kind
-- Defined at src/FrontEnd/Tc/Kind.hs:155:10
instance [overlap ok] DocLike d => PPrint d KBase
-- Defined at src/FrontEnd/Tc/Kind.hs:152:10
instance [overlap ok] Show KBase
-- Defined at src/FrontEnd/Tc/Kind.hs:144:10
instance [overlap ok] Show Kindvar
-- Defined at src/FrontEnd/Tc/Kind.hs:141:10
instance [overlap ok] Show Kind
-- Defined at src/FrontEnd/Tc/Kind.hs:138:10
instance [overlap ok] Ord Kindvar
-- Defined at src/FrontEnd/Tc/Kind.hs:135:10
instance [overlap ok] Eq Kindvar
-- Defined at src/FrontEnd/Tc/Kind.hs:132:10
instance [overlap ok] Binary Kindvar
-- Defined at src/FrontEnd/Tc/Kind.hs:128:10
instance [overlap ok] Monoid KindConstraint
-- Defined at src/FrontEnd/Tc/Kind.hs:112:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (PackedString, False), (Random, False),
(StringTable.Atom, False), (System, False), (Time, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 73 of 182] Compiling Name.Id ( src/Name/Id.hs, src/Name/Id.o )
TYPE SIGNATURES
addBoundNamesIdMap :: forall a (m :: * -> *).
Monad m =>
IdMap a -> IdNameT m ()
addBoundNamesIdSet :: forall (m :: * -> *).
Monad m =>
IntjectionSet Id -> IdNameT m ()
addNamesIdSet :: forall (m :: * -> *).
Monad m =>
IntjectionSet Id -> IdNameT m ()
anonymous :: Int -> Id
anonymousIds :: [Id]
candidateIds :: Int -> [Id]
emptyId :: Id
etherealIds :: [Id]
fromId :: forall (m :: * -> *). Monad m => Id -> m Name
fromIdNameT :: forall (t :: * -> *) t1.
IdNameT t t1 -> StateT (IdSet, IdSet) t t1
idMapFromDistinctAscList :: forall a. [(Id, a)] -> IdMap a
idMapFromList :: forall a. [(Id, a)] -> IdMap a
idMapToIdSet :: forall a. IdMap a -> IdSet
idMapToList :: forall a. IdMap a -> [(Id, a)]
idSetFromDistinctAscList :: [Id] -> IdSet
idSetFromList :: [Id] -> IdSet
idSetToIdMap :: forall a. (Id -> a) -> IdSet -> IdMap a
idSetToList :: IdSet -> [Id]
idToInt :: Id -> Int
isEmptyId :: Id -> Bool
isEtherealId :: Id -> Bool
isInvalidId :: Id -> Bool
mapMaybeIdMap :: forall a b. (a -> Maybe b) -> IdMap a -> IdMap b
newId :: Int -> (Id -> Bool) -> Id
newIds :: IdSet -> [Id]
runIdNameT :: forall (m :: * -> *) a.
Monad m =>
IdNameT m a -> m (a, IdSet)
sillyId :: Id
toId :: Name -> Id
va1 :: Id
va2 :: Id
va3 :: Id
va4 :: Id
va5 :: Id
TYPE CONSTRUCTORS
newtype Id
RecFlag NonRecursive
= Id :: Int -> Id Stricts: _
FamilyInstance: none
type IdMap
= IntjectionMap Id
FamilyInstance: none
newtype IdNameT (m::* -> *) a
RecFlag NonRecursive
= IdNameT :: forall (m::* -> *) a.
(StateT (IdSet, IdSet) m a) -> IdNameT m a
Stricts: _
FamilyInstance: none
type IdSet
= IntjectionSet Id
FamilyInstance: none
COERCION AXIOMS
axiom Name.Id.NTCo:Id [] :: Id ~# Int
axiom Name.Id.NTCo:IdNameT [] :: IdNameT ~# StateT (IdSet, IdSet)
INSTANCES
instance [overlap ok] Eq Id -- Defined at src/Name/Id.hs:76:14
instance [overlap ok] Ord Id -- Defined at src/Name/Id.hs:76:17
instance [overlap ok] Monad m => Monad (IdNameT m)
-- Defined at src/Name/Id.hs:173:14
instance [overlap ok] MonadTrans IdNameT
-- Defined at src/Name/Id.hs:173:21
instance [overlap ok] Functor m => Functor (IdNameT m)
-- Defined at src/Name/Id.hs:173:33
instance [overlap ok] MonadFix m => MonadFix (IdNameT m)
-- Defined at src/Name/Id.hs:173:42
instance [overlap ok] MonadPlus m => MonadPlus (IdNameT m)
-- Defined at src/Name/Id.hs:173:52
instance [overlap ok] MonadIO m => MonadIO (IdNameT m)
-- Defined at src/Name/Id.hs:173:63
instance [overlap ok] B.Binary Id
-- Defined at src/Name/Id.hs:297:10
instance [overlap ok] GenName Id
-- Defined at src/Name/Id.hs:294:10
instance [overlap ok] DocLike d => PPrint d Id
-- Defined at src/Name/Id.hs:291:10
instance [overlap ok] FromAtom Id
-- Defined at src/Name/Id.hs:283:10
instance [overlap ok] Show v => Show (IdMap v)
-- Defined at src/Name/Id.hs:237:10
instance [overlap ok] Show IdSet
-- Defined at src/Name/Id.hs:234:10
instance [overlap ok] Show Id -- Defined at src/Name/Id.hs:230:10
instance [overlap ok] Monad m => NameMonad Id (IdNameT m)
-- Defined at src/Name/Id.hs:187:10
instance [overlap ok] MonadReader r m => MonadReader r (IdNameT m)
-- Defined at src/Name/Id.hs:175:10
instance [overlap ok] Intjection Id
-- Defined at src/Name/Id.hs:92:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (PackedString, False), (Random, False),
(StringTable.Atom, False), (System, False), (Time, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Inst, False), (Util.NameMonad, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 74 of 182] Compiling Name.Binary ( src/Name/Binary.hs, src/Name/Binary.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
INSTANCES
instance [overlap ok] Binary a => Binary (IdMap a)
-- Defined at src/Name/Binary.hs:19:10
instance [overlap ok] Binary IdSet
-- Defined at src/Name/Binary.hs:10:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(GenUtil, False), (List, False), (Maybe, False), (Monad, False),
(Name.Id, False), (Name.Name, False), (PackedString, False),
(Random, False), (StringTable.Atom, False), (System, False),
(Time, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.Inst, False), (Util.NameMonad, False),
(Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 75 of 182] Compiling Cmm.OpEval ( src/Cmm/OpEval.hs, src/Cmm/OpEval.o )
TYPE SIGNATURES
Cmm.OpEval.$dmequalsExpression :: forall t e.
Expression t e =>
e -> e -> Bool
Cmm.OpEval.$dmfromBinOp :: forall t e.
Expression t e =>
e -> Maybe (BinOp, Ty, Ty, Ty, e, e, t)
Cmm.OpEval.$dmfromUnOp :: forall t e.
Expression t e =>
e -> Maybe (UnOp, Ty, Ty, e, t)
Cmm.OpEval.$dmtoConstant :: forall t e.
Expression t e =>
e -> Maybe (Number, t)
binOp :: forall t e.
Expression t e =>
BinOp -> Ty -> Ty -> Ty -> e -> e -> t -> Maybe e
binOp' :: forall t e.
Expression t e =>
BinOp -> Ty -> Ty -> Ty -> e -> e -> t -> e
convCombine :: Ty -> ConvOp -> Ty -> ConvOp -> Ty -> Maybe ConvOp
convNumber :: ConvOp -> Ty -> Ty -> Number -> Number
convOp :: ConvOp -> Ty -> Ty -> Maybe ConvOp
tyEq :: Ty -> Ty -> Bool
tyLte :: Ty -> Ty -> Bool
unOp :: forall t e.
Expression t e =>
UnOp -> Ty -> Ty -> e -> t -> Maybe e
TYPE CONSTRUCTORS
class Expression t e | e -> t
RecFlag NonRecursive
toConstant {- Has default method -} :: e -> Maybe (Number, t)
toExpression :: Number -> t -> e
toBool :: Bool -> e
createBinOp :: BinOp -> Ty -> Ty -> Ty -> e -> e -> t -> e
createUnOp :: UnOp -> Ty -> Ty -> e -> t -> e
fromUnOp {- Has default method -} :: e
-> Maybe (UnOp, Ty, Ty, e, t)
fromBinOp {- Has default method -} :: e
-> Maybe (BinOp, Ty, Ty, Ty, e, e, t)
caseEquals :: e -> (Number, t) -> e -> e -> e
equalsExpression {- Has default method -} :: e -> e -> Bool
COERCION AXIOMS
Dependent modules: [(CPUTime, False), (Char, False),
(Cmm.Number, False), (Cmm.Op, False), (Directory, False),
(GenUtil, False), (List, False), (Maybe, False), (Monad, False),
(Random, False), (Ratio, False), (System, False), (Time, False),
(Util.Gen, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, process-1.1.0.1,
random-1.0.1.1, time-1.4, transformers-0.3.0.0, unix-2.5.1.0]
[ 76 of 182] Compiling Util.FilterInput ( src/Util/FilterInput.hs, src/Util/FilterInput.o )
TYPE SIGNATURES
dupAndClose :: Fd -> Fd -> IO ()
filterInput :: String -> [String] -> Handle -> IO String
readSystem :: String -> [String] -> IO LBS.ByteString
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(CPUTime, False), (Char, False),
(Directory, False), (GenUtil, False), (List, False),
(Monad, False), (Random, False), (System, False), (Time, False),
(Util.Gen, False)]
Dependent packages: [array-0.4.0.0, base, bytestring-0.9.2.1,
deepseq-1.3.0.0, directory-1.1.0.2, filepath-1.3.0.0, ghc-prim,
integer-gmp, mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0,
process-1.1.0.1, random-1.0.1.1, time-1.4, transformers-0.3.0.0,
unix-2.5.1.0]
[ 77 of 182] Compiling FindFixpoint ( src/FindFixpoint.hs, src/FindFixpoint.o )
TYPE SIGNATURES
getVal :: forall b. Int -> Ms b b
solve :: forall b. Eq b => Maybe String -> b -> [Ms b b] -> IO [b]
unMs' :: forall t t1. Ms t t1 -> Env t -> IO t1
TYPE CONSTRUCTORS
data Env b
RecFlag NonRecursive
= Env :: forall b.
(IOArray Int b) -> (IOArray Int IntSet) -> Int -> Env b
HasWrapper
Stricts: {-# UNPACK #-} ! {-# UNPACK #-} ! {-# UNPACK #-} !
FamilyInstance: none
newtype Ms b c
RecFlag NonRecursive
= Ms' :: forall b c. (Env b -> IO c) -> Ms b c Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom FindFixpoint.NTCo:Ms [b, c] :: Ms b c ~# (Env b -> IO c)
INSTANCES
instance [overlap ok] Functor (Ms b)
-- Defined at src/FindFixpoint.hs:23:10
instance [overlap ok] Monad (Ms b)
-- Defined at src/FindFixpoint.hs:13:10
Dependent modules: [(Array, False), (CPUTime, False),
(Char, False), (Directory, False), (GenUtil, False), (Ix, False),
(List, False), (Monad, False), (Random, False), (System, False),
(Time, False), (Util.Gen, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, directory-1.1.0.2, filepath-1.3.0.0, ghc-prim,
integer-gmp, mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0,
process-1.1.0.1, random-1.0.1.1, time-1.4, transformers-0.3.0.0,
unix-2.5.1.0]
[ 78 of 182] Compiling Support.IniParse ( src/Support/IniParse.hs, src/Support/IniParse.o )
TYPE SIGNATURES
abort :: forall a. String -> P a
discard :: Int -> P ()
dropSpace :: P ()
expect :: [Char] -> P ()
look :: P String
pHeader :: P [Char]
pThings :: [Char]
-> Seq.Seq ([Char], [Char])
-> Seq.Seq ([Char], Seq.Seq ([Char], [Char]))
-> P (Seq.Seq ([Char], Seq.Seq ([Char], [Char])))
pValue :: P ([Char], [Char])
parseIniFile :: FilePath
-> IO (Seq.Seq (String, Seq.Seq (String, String)))
parseIniFiles :: Bool
-> String -> [FilePath] -> [String] -> IO (Map.Map String String)
parseIniRaw :: String
-> String -> IO (Seq.Seq (String, Seq.Seq (String, String)))
pdropWhile :: (Char -> Bool) -> P ()
processIni :: Seq.Seq (String, Seq.Seq (String, String))
-> Map.Map String (Seq.Seq (String, String))
ptakeWhile :: (Char -> Bool) -> P [Char]
third :: forall t t1 t2. (t, t1, t2) -> t2
trim :: [Char] -> [Char]
TYPE CONSTRUCTORS
newtype P a
RecFlag NonRecursive
= P :: forall a. (State St a) -> P a Stricts: _
FamilyInstance: none
type St
= (Int, FilePath, String)
FamilyInstance: none
COERCION AXIOMS
axiom Support.IniParse.NTCo:P []
:: P ~#
StateT St transformers-0.3.0.0:Data.Functor.Identity.Identity
INSTANCES
instance [overlap ok] Monad P
-- Defined at src/Support/IniParse.hs:16:14
instance [overlap ok] MonadState St P
-- Defined at src/Support/IniParse.hs:16:20
Dependent modules: [(CPUTime, False), (Char, False),
(GenUtil, False), (List, False), (Monad, False), (Random, False),
(System, False), (Time, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp, mtl-2.1.1,
old-locale-1.0.0.4, old-time-1.1.0.0, process-1.1.0.1,
random-1.0.1.1, time-1.4, transformers-0.3.0.0, unix-2.5.1.0]
[ 79 of 182] Compiling Options ( drift_processed/Options.hs, src/Options.o )
TYPE SIGNATURES
Options.$con2tag_Mode :: Mode -> ghc-prim:GHC.Prim.Int#
Options.$con2tag_StopCondition :: StopCondition
-> ghc-prim:GHC.Prim.Int#
Options.$dmgetOptions :: forall (m :: * -> *).
OptionMonad m =>
m Opt
configs :: Node
doShowConfig :: forall b. IO b
doShowHelp :: forall b. IO b
dump :: FlagDump.Flag -> Bool
emptyOpt :: Opt
fileOptions :: forall (m :: * -> *).
Monad m =>
Opt -> [String] -> m Opt
findHoCache :: IO (Maybe FilePath)
flagOpt :: forall (m :: * -> *).
OptionMonad m =>
FlagOpts.Flag -> m Bool
flint :: Bool
fopts :: FlagOpts.Flag -> Bool
getArgString :: IO (String, String)
getArguments :: IO [String]
getColumns :: Int
helpUsage :: [Char]
idu :: [Char] -> [[Char]] -> [[Char]]
initialIncludes :: [String]
initialLibIncludes :: [String]
optAnnotate :: Opt -> Maybe FilePath
optAnnotate_s :: Maybe FilePath -> Opt -> Opt
optAnnotate_u :: (Maybe FilePath -> Maybe FilePath) -> Opt -> Opt
optArch :: Opt -> [String]
optArch_s :: [String] -> Opt -> Opt
optArch_u :: ([String] -> [String]) -> Opt -> Opt
optArgs :: Opt -> [String]
optArgs_s :: [String] -> Opt -> Opt
optArgs_u :: ([String] -> [String]) -> Opt -> Opt
optAutoLoads :: Opt -> [String]
optAutoLoads_s :: [String] -> Opt -> Opt
optAutoLoads_u :: ([String] -> [String]) -> Opt -> Opt
optCCargs :: Opt -> [String]
optCCargs_s :: [String] -> Opt -> Opt
optCCargs_u :: ([String] -> [String]) -> Opt -> Opt
optColumns :: Opt -> Int
optColumns_s :: Int -> Opt -> Opt
optColumns_u :: (Int -> Int) -> Opt -> Opt
optCross :: Opt -> Bool
optCross_s :: Bool -> Opt -> Opt
optCross_u :: (Bool -> Bool) -> Opt -> Opt
optDefs :: Opt -> [String]
optDefs_s :: [String] -> Opt -> Opt
optDefs_u :: ([String] -> [String]) -> Opt -> Opt
optDeps :: Opt -> Maybe FilePath
optDeps_s :: Maybe FilePath -> Opt -> Opt
optDeps_u :: (Maybe FilePath -> Maybe FilePath) -> Opt -> Opt
optDump :: Opt -> [String]
optDumpSet :: Opt -> S.Set FlagDump.Flag
optDumpSet_s :: S.Set FlagDump.Flag -> Opt -> Opt
optDumpSet_u :: (S.Set FlagDump.Flag -> S.Set FlagDump.Flag)
-> Opt -> Opt
optDump_s :: [String] -> Opt -> Opt
optDump_u :: ([String] -> [String]) -> Opt -> Opt
optExtensions :: Opt -> [String]
optExtensions_s :: [String] -> Opt -> Opt
optExtensions_u :: ([String] -> [String]) -> Opt -> Opt
optFOpts :: Opt -> [String]
optFOptsSet :: Opt -> S.Set FlagOpts.Flag
optFOptsSet_s :: S.Set FlagOpts.Flag -> Opt -> Opt
optFOptsSet_u :: (S.Set FlagOpts.Flag -> S.Set FlagOpts.Flag)
-> Opt -> Opt
optFOpts_s :: [String] -> Opt -> Opt
optFOpts_u :: ([String] -> [String]) -> Opt -> Opt
optHlPath :: Opt -> [String]
optHlPath_s :: [String] -> Opt -> Opt
optHlPath_u :: ([String] -> [String]) -> Opt -> Opt
optHls :: Opt -> [String]
optHls_s :: [String] -> Opt -> Opt
optHls_u :: ([String] -> [String]) -> Opt -> Opt
optHoCache :: Opt -> Maybe FilePath
optHoCache_s :: Maybe FilePath -> Opt -> Opt
optHoCache_u :: (Maybe FilePath -> Maybe FilePath) -> Opt -> Opt
optHoDir :: Opt -> Maybe FilePath
optHoDir_s :: Maybe FilePath -> Opt -> Opt
optHoDir_u :: (Maybe FilePath -> Maybe FilePath) -> Opt -> Opt
optIgnoreHo :: Opt -> Bool
optIgnoreHo_s :: Bool -> Opt -> Opt
optIgnoreHo_u :: (Bool -> Bool) -> Opt -> Opt
optIncdirs :: Opt -> [String]
optIncdirs_s :: [String] -> Opt -> Opt
optIncdirs_u :: ([String] -> [String]) -> Opt -> Opt
optIncs :: Opt -> [String]
optIncs_s :: [String] -> Opt -> Opt
optIncs_u :: ([String] -> [String]) -> Opt -> Opt
optInis :: Opt -> M.Map String String
optInis_s :: M.Map String String -> Opt -> Opt
optInis_u :: (M.Map String String -> M.Map String String)
-> Opt -> Opt
optKeepGoing :: Opt -> Bool
optKeepGoing_s :: Bool -> Opt -> Opt
optKeepGoing_u :: (Bool -> Bool) -> Opt -> Opt
optMainFunc :: Opt -> Maybe (Bool, String)
optMainFunc_s :: Maybe (Bool, String) -> Opt -> Opt
optMainFunc_u :: (Maybe (Bool, String) -> Maybe (Bool, String))
-> Opt -> Opt
optMode :: Opt -> Mode
optMode_s :: Mode -> Opt -> Opt
optMode_u :: (Mode -> Mode) -> Opt -> Opt
optNoAuto :: Opt -> Bool
optNoAuto_s :: Bool -> Opt -> Opt
optNoAuto_u :: (Bool -> Bool) -> Opt -> Opt
optNoWriteHo :: Opt -> Bool
optNoWriteHo_s :: Bool -> Opt -> Opt
optNoWriteHo_u :: (Bool -> Bool) -> Opt -> Opt
optOutName :: Opt -> Maybe String
optOutName_s :: Maybe String -> Opt -> Opt
optOutName_u :: (Maybe String -> Maybe String) -> Opt -> Opt
optStale :: Opt -> [String]
optStale_s :: [String] -> Opt -> Opt
optStale_u :: ([String] -> [String]) -> Opt -> Opt
optStatLevel :: Opt -> Int
optStatLevel_s :: Int -> Opt -> Opt
optStatLevel_u :: (Int -> Int) -> Opt -> Opt
optStmts :: Opt -> [String]
optStmts_s :: [String] -> Opt -> Opt
optStmts_u :: ([String] -> [String]) -> Opt -> Opt
optStop :: Opt -> StopCondition
optStop_s :: StopCondition -> Opt -> Opt
optStop_u :: (StopCondition -> StopCondition) -> Opt -> Opt
optVerbose :: Opt -> Int
optVerbose_s :: Int -> Opt -> Opt
optVerbose_u :: (Int -> Int) -> Opt -> Opt
optWorkDir :: Opt -> Maybe FilePath
optWorkDir_s :: Maybe FilePath -> Opt -> Opt
optWorkDir_u :: (Maybe FilePath -> Maybe FilePath) -> Opt -> Opt
options :: Opt
outputName :: [Char]
pfill :: forall a. Int -> (a -> Int) -> [a] -> [[a]]
postProcessFD :: forall (m :: * -> *). Monad m => Opt -> m Opt
postProcessFO :: forall (m :: * -> *). Monad m => Opt -> m Opt
processOptions :: IO Opt
progress :: Bool
putProgress :: String -> IO ()
putProgressLn :: String -> IO ()
putVerbose :: String -> IO ()
putVerboseLn :: String -> IO ()
stop :: [Char] -> StopCondition
theoptions :: [OptDescr (Opt -> Opt)]
verbose :: Bool
verbose2 :: Bool
wdump :: forall (m :: * -> *).
Monad m =>
FlagDump.Flag -> m () -> m ()
withOptions :: forall a. Opt -> OptM a -> a
withOptionsT :: forall (m :: * -> *) a. Opt -> OptT m a -> m a
TYPE CONSTRUCTORS
data Mode
RecFlag NonRecursive
= BuildHl :: FilePath -> Mode Stricts: _ |
Interactive :: Mode |
Version :: Mode |
VersionCtx :: Mode |
ShowHelp :: Mode |
ShowConfig :: Mode |
CompileExe :: Mode |
ShowHo :: String -> Mode Stricts: _ |
ListLibraries :: Mode |
PrintHscOptions :: Mode |
PurgeCache :: Mode |
Preprocess :: Mode
FamilyInstance: none
data Opt
RecFlag NonRecursive
= Opt :: Mode -> Int -> [String] -> [String] -> [String]
-> [String] -> [String] -> [String] -> [String] -> [String]
-> [String] -> [String] -> [String] -> StopCondition
-> (Maybe FilePath) -> (Maybe FilePath) -> (Maybe FilePath)
-> (Maybe FilePath) -> (Maybe FilePath) -> [String] -> [String]
-> Bool -> (Maybe (Bool, String)) -> [String] -> Bool
-> (Maybe String) -> Bool -> Bool -> Bool -> Int -> Int
-> (M.Map String String) -> (S.Set FlagDump.Flag)
-> (S.Set FlagOpts.Flag) -> Opt
HasWrapper
Stricts: _ {-# UNPACK #-} ! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ! _ _ _ _ ! ! ! {-# UNPACK #-} ! {-# UNPACK #-} ! _ _ _
Fields: optMode optColumns optDump optStmts optFOpts optIncdirs optCCargs optHls optAutoLoads optHlPath optIncs optDefs optExtensions optStop optWorkDir optAnnotate optDeps optHoDir optHoCache optArgs optStale optKeepGoing optMainFunc optArch optCross optOutName optIgnoreHo optNoWriteHo optNoAuto optVerbose optStatLevel optInis optDumpSet optFOptsSet
FamilyInstance: none
type OptM
= OptT Identity
FamilyInstance: none
newtype OptT (m::* -> *) a
RecFlag NonRecursive
= OptT :: forall (m::* -> *) a. (ReaderT Opt m a) -> OptT m a
Stricts: _
FamilyInstance: none
class Monad m => OptionMonad (m::* -> *)
RecFlag NonRecursive
getOptions {- Has default method -} :: m Opt
data StopCondition
RecFlag NonRecursive
= StopError :: String -> StopCondition Stricts: _ |
StopParse :: StopCondition |
StopTypeCheck :: StopCondition |
StopC :: StopCondition |
CompileHo :: StopCondition |
StopNot :: StopCondition
FamilyInstance: none
COERCION AXIOMS
axiom Options.NTCo:OptT [] :: OptT ~# ReaderT Opt
INSTANCES
instance [overlap ok] Eq Mode -- Defined at src/Options.hs:152:22
instance [overlap ok] Eq StopCondition
-- Defined at src/Options.hs:161:22
instance [overlap ok] MonadIO m => MonadIO (OptT m)
-- Defined at src/Options.hs:487:14
instance [overlap ok] Monad m => Monad (OptT m)
-- Defined at src/Options.hs:487:22
instance [overlap ok] Functor m => Functor (OptT m)
-- Defined at src/Options.hs:487:28
instance [overlap ok] MonadTrans OptT
-- Defined at src/Options.hs:487:36
instance [overlap ok] Monad m => OptionMonad (OptT m)
-- Defined at src/Options.hs:491:10
instance [overlap ok] OptionMonad Identity
-- Defined at src/Options.hs:484:10
Dependent modules: [(CPUTime, False), (Char, False),
(Directory, False), (FlagDump, False), (FlagOpts, False),
(GenUtil, False), (List, False), (Monad, False), (Random, False),
(RawFiles, False), (Support.IniParse, False),
(Support.TempDir, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.Gen, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, bytestring-0.9.2.1,
containers-0.4.2.1, deepseq-1.3.0.0, directory-1.1.0.2,
filepath-1.3.0.0, ghc-prim, integer-gmp, mtl-2.1.1,
old-locale-1.0.0.4, old-time-1.1.0.0, process-1.1.0.1,
random-1.0.1.1, time-1.4, transformers-0.3.0.0, unix-2.5.1.0,
utf8-string-0.3.7]
[ 80 of 182] Compiling FrontEnd.Warning ( src/FrontEnd/Warning.hs, src/FrontEnd/Warning.o )
TYPE SIGNATURES
FrontEnd.Warning.$con2tag_WarnType :: WarnType
-> ghc-prim:GHC.Prim.Int#
FrontEnd.Warning.$dmaddWarning :: forall (m :: * -> *).
MonadWarn m =>
Warning -> m ()
_warnings :: [([Char], [Char])]
addWarn :: forall (m :: * -> *).
(MonadWarn m, MonadSrcLoc m) =>
WarnType -> String -> m ()
err :: forall (m :: * -> *).
MonadWarn m =>
WarnType -> String -> m ()
ioWarnings :: IORef [Warning]
msg :: WarnType -> [Char] -> [Char]
pad :: Int -> [Char] -> [Char]
printIOErrors :: IO Bool
processErrors :: [Warning] -> IO ()
processErrors' :: Bool -> [Warning] -> IO Bool
processIOErrors :: IO ()
warn :: forall (m :: * -> *).
MonadWarn m =>
SrcLoc -> WarnType -> String -> m ()
warnIsFatal :: WarnType -> Bool
warnMessage :: Warning -> String
warnSrcLoc :: Warning -> SrcLoc
warnType :: Warning -> WarnType
TYPE CONSTRUCTORS
class Monad m => MonadWarn (m::* -> *)
RecFlag NonRecursive
addWarning {- Has default method -} :: Warning -> m ()
data WarnType
RecFlag NonRecursive
= AmbiguousExport :: Module -> [Name] -> WarnType Stricts: _ _ |
AmbiguousName :: Name -> [Name] -> WarnType Stricts: _ _ |
DuplicateInstances :: WarnType |
InvalidDecl :: WarnType |
MissingDep :: String -> WarnType Stricts: _ |
MissingModule :: Module -> WarnType Stricts: _ |
MultiplyDefined :: Name -> [SrcLoc] -> WarnType Stricts: _ _ |
InvalidFFIType :: WarnType |
OccursCheck :: WarnType |
PrimitiveBadType :: WarnType |
PrimitiveUnknown :: Atom -> WarnType Stricts: _ |
TypeSynonymPartialAp :: WarnType |
TypeSynonymRecursive :: WarnType |
UndefinedName :: Name -> WarnType Stricts: _ |
UnificationError :: WarnType |
UnknownDeriving :: [Class] -> WarnType Stricts: _ |
UnknownOption :: WarnType |
UnknownPragma :: PackedString -> WarnType Stricts: _ |
UnsupportedFeature :: WarnType
FamilyInstance: none
data Warning
RecFlag NonRecursive
= Warning :: SrcLoc -> WarnType -> String -> Warning
HasWrapper
Stricts: ! _ _
Fields: warnSrcLoc warnType warnMessage
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Eq WarnType
-- Defined at src/FrontEnd/Warning.hs:102:14
instance [overlap ok] Ord WarnType
-- Defined at src/FrontEnd/Warning.hs:102:17
instance [overlap ok] Eq Warning
-- Defined at src/FrontEnd/Warning.hs:31:16
instance [overlap ok] Ord Warning
-- Defined at src/FrontEnd/Warning.hs:31:19
instance [overlap ok] MonadWarn m => MonadWarn (ReaderT a m)
-- Defined at src/FrontEnd/Warning.hs:161:10
instance [overlap ok] MonadWarn Identity
-- Defined at src/FrontEnd/Warning.hs:160:10
instance [overlap ok] MonadWarn (Writer [Warning])
-- Defined at src/FrontEnd/Warning.hs:158:10
instance [overlap ok] MonadWarn IO
-- Defined at src/FrontEnd/Warning.hs:156:10
instance [overlap ok] Show Warning
-- Defined at src/FrontEnd/Warning.hs:122:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.SrcLoc, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (Options, False), (PackedString, False),
(Random, False), (RawFiles, False), (StringTable.Atom, False),
(Support.IniParse, False), (Support.TempDir, False),
(System, False), (Time, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.SetLike, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 81 of 182] Compiling FrontEnd.ParseMonad ( src/FrontEnd/ParseMonad.hs, src/FrontEnd/ParseMonad.o )
TYPE SIGNATURES
FrontEnd.ParseMonad.$con2tag_LexContext :: LexContext
-> ghc-prim:GHC.Prim.Int#
alternative :: forall a v. Lex a v -> Lex a (Lex a v)
atSrcLoc :: forall a. P a -> SrcLoc -> P a
checkBOL :: forall a. Lex a Bool
currentIndent :: P Int
defaultParseMode :: ParseMode
discard :: forall r. Int -> Lex r ()
emptyParseState :: ParseState
getInput :: forall r. Lex r String
getOffside :: forall a. Lex a Ordering
indentOfParseState :: ParseState -> Int
lexNewline :: forall a. Lex a ()
lexParseMode :: forall a. Lex a ParseMode
lexTab :: forall a. Lex a ()
lexWhile :: forall a. (Char -> Bool) -> Lex a String
nextTab :: Int -> Int
parseFFI :: ParseMode -> Bool
parseFilename :: ParseMode -> FilePath
parseModeOptions :: Opt -> ParseMode
parseOpt :: ParseMode -> Opt
parseUnboxedTuples :: ParseMode -> Bool
parseUnboxedValues :: ParseMode -> Bool
popContext :: P ()
popContextL :: forall a. String -> Lex a ()
psForceClose :: ParseState -> Bool
psInDo :: ParseState -> Bool
psLexContext :: ParseState -> [LexContext]
psWarnings :: ParseState -> [Warning]
pullCtxtFlag :: forall a. Lex a Bool
pullDoStatus :: P Bool
pushContext :: LexContext -> P ()
pushContextL :: forall a. LexContext -> Lex a ()
pushCtxtFlag :: P ()
pushCurrentContext :: P ()
returnP :: forall a. a -> P a
runL :: forall r a. Lex r a -> (a -> P r) -> P r
runP :: forall a.
P a
-> String
-> Int
-> Int
-> SrcLoc
-> ParseState
-> ParseMode
-> ParseStatus a
runParser :: forall a. P a -> String -> ([Warning], ParseResult a)
runParserWithMode :: forall a.
ParseMode -> P a -> String -> ([Warning], ParseResult a)
setBOL :: forall a. Lex a ()
setFlagDo :: forall a. Lex a ()
setSrcLoc :: forall a. SrcLoc -> Lex a ()
startToken :: forall a. Lex a ()
tAB_LENGTH :: Int
thenP :: forall a b. P a -> (a -> P b) -> P b
TYPE CONSTRUCTORS
newtype Lex r a
RecFlag NonRecursive
= Lex :: forall r a. ((a -> P r) -> P r) -> Lex r a
Stricts: _
Fields: runL
FamilyInstance: none
data LexContext
RecFlag NonRecursive
= NoLayout :: LexContext | Layout :: Int -> LexContext Stricts: _
FamilyInstance: none
newtype P a
RecFlag NonRecursive
= P :: forall a.
(String
-> Int
-> Int
-> SrcLoc
-> ParseState
-> ParseMode
-> ParseStatus a)
-> P a
Stricts: _
Fields: runP
FamilyInstance: none
data ParseMode
RecFlag NonRecursive
= ParseMode :: FilePath -> Opt -> Bool -> Bool -> Bool -> ParseMode
Stricts: _ _ _ _ _
Fields: parseFilename parseOpt parseFFI parseUnboxedValues parseUnboxedTuples
FamilyInstance: none
data ParseResult a
RecFlag NonRecursive
= ParseOk :: forall a. a -> ParseResult a Stricts: _ |
ParseFailed :: forall a. SrcLoc -> String -> ParseResult a
Stricts: _ _
FamilyInstance: none
data ParseState
RecFlag NonRecursive
= ParseState :: [LexContext] -> [Warning] -> Bool -> Bool
-> ParseState
HasWrapper
Stricts: _ _ ! !
Fields: psLexContext psWarnings psInDo psForceClose
FamilyInstance: none
data ParseStatus a
RecFlag NonRecursive
= Ok :: forall a. ParseState -> a -> ParseStatus a Stricts: _ _ |
Failed :: forall a. SrcLoc -> String -> ParseStatus a Stricts: _ _
FamilyInstance: none
COERCION AXIOMS
axiom FrontEnd.ParseMonad.NTCo:P [a]
:: P a
~#
(String
-> Int
-> Int
-> SrcLoc
-> ParseState
-> ParseMode
-> ParseStatus a)
axiom FrontEnd.ParseMonad.NTCo:Lex [r, a]
:: Lex r a ~# ((a -> P r) -> P r)
INSTANCES
instance [overlap ok] Show a => Show (ParseResult a)
-- Defined at src/FrontEnd/ParseMonad.hs:48:18
instance [overlap ok] Eq LexContext
-- Defined at src/FrontEnd/ParseMonad.hs:55:19
instance [overlap ok] Ord LexContext
-- Defined at src/FrontEnd/ParseMonad.hs:55:22
instance [overlap ok] Show LexContext
-- Defined at src/FrontEnd/ParseMonad.hs:55:26
instance [overlap ok] Show ParseState
-- Defined at src/FrontEnd/ParseMonad.hs:63:16
instance [overlap ok] Show a => Show (ParseStatus a)
-- Defined at src/FrontEnd/ParseMonad.hs:52:18
instance [overlap ok] MonadSrcLoc (Lex r)
-- Defined at src/FrontEnd/ParseMonad.hs:230:10
instance [overlap ok] MonadWarn (Lex r)
-- Defined at src/FrontEnd/ParseMonad.hs:228:10
instance [overlap ok] Monad (Lex r)
-- Defined at src/FrontEnd/ParseMonad.hs:222:10
instance [overlap ok] MonadWarn P
-- Defined at src/FrontEnd/ParseMonad.hs:168:10
instance [overlap ok] MonadSrcLoc P
-- Defined at src/FrontEnd/ParseMonad.hs:165:10
instance [overlap ok] Monad P
-- Defined at src/FrontEnd/ParseMonad.hs:147:10
instance [overlap ok] Monoid m => Monoid (ParseResult m)
-- Defined at src/FrontEnd/ParseMonad.hs:79:10
instance [overlap ok] Monad ParseResult
-- Defined at src/FrontEnd/ParseMonad.hs:74:10
instance [overlap ok] A.Applicative ParseResult
-- Defined at src/FrontEnd/ParseMonad.hs:69:10
instance [overlap ok] Functor ParseResult
-- Defined at src/FrontEnd/ParseMonad.hs:65:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Warning, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Options, False),
(PackedString, False), (Random, False), (RawFiles, False),
(StringTable.Atom, False), (Support.IniParse, False),
(Support.TempDir, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.SetLike, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 82 of 182] Compiling FrontEnd.Lexer ( src/FrontEnd/Lexer.hs, src/FrontEnd/Lexer.o )
TYPE SIGNATURES
isIdent :: Char -> Bool
isSymbol :: Char -> Bool
lexBOL :: forall a. Lex a Token
lexChar :: forall a. Lex a Char
lexConIdOrQual :: forall a. String -> Lex a Token
lexDecimal :: forall a. Lex a Integer
lexDecimalOrFloat :: forall a. Lex a Token
lexEscape :: forall a. Lex a Char
lexHexadecimal :: forall a. Lex a Integer
lexNestedComment :: forall a. Bool -> Lex a Bool
lexOctal :: forall a. Lex a Integer
lexRawPragma :: forall a. String -> Lex a Token
lexString :: forall a. Lex a Token
lexToken :: forall a. Lex a Token
lexWhiteSpace :: forall a. Bool -> Lex a Bool
lexer :: forall a. (Token -> P a) -> P a
matchChar :: forall a. Char -> String -> Lex a ()
normPragma :: String -> Either String Token
optional_ids :: Map.Map Name (FO.Flag, Token)
parseInteger :: Integer -> String -> Integer
pragmas :: Map.Map [Char] (Either [Char] Token)
pragmas_exp :: [[[Char]]]
pragmas_ignored :: Set.Set [Char]
pragmas_parsed :: [([[Char]], Token)]
pragmas_raw :: [[[Char]]]
pragmas_std :: [[[Char]]]
procMap :: [(String, Token)] -> Map.Map Name Token
procOpt :: forall t t1 t2.
ToName (Maybe Module, t) =>
[(t, t2, t1)] -> Map.Map Name (t1, t2)
reserved_ids :: Map.Map Name Token
reserved_ops :: Map.Map Name Token
setFilePos :: forall a. Int -> Int -> Maybe String -> Lex a ()
special_varids :: Map.Map Name Token
special_varops :: Map.Map Name Token
toUnqualName :: forall t. ToName (Maybe Module, t) => t -> Name
topLexer :: forall a. Lex a Token
TYPE CONSTRUCTORS
data Token
RecFlag NonRecursive
= VarId :: Name -> Token HasWrapper Stricts: ! |
QVarId :: Name -> Token HasWrapper Stricts: ! |
ConId :: Name -> Token HasWrapper Stricts: ! |
QConId :: Name -> Token HasWrapper Stricts: ! |
VarSym :: Name -> Token HasWrapper Stricts: ! |
ConSym :: Name -> Token HasWrapper Stricts: ! |
QVarSym :: Name -> Token HasWrapper Stricts: ! |
QConSym :: Name -> Token HasWrapper Stricts: ! |
IntTok :: Integer -> Token HasWrapper Stricts: ! |
UIntTok :: Integer -> Token HasWrapper Stricts: ! |
FloatTok :: Rational -> Token HasWrapper Stricts: ! |
Character :: Char -> Token HasWrapper Stricts: ! |
UCharacter :: Char -> Token HasWrapper Stricts: ! |
StringTok :: String -> Token Stricts: _ |
UStringTok :: String -> Token Stricts: _ |
PragmaOptions :: [String] -> Token Stricts: _ |
PragmaInline :: String -> Token Stricts: _ |
PragmaExp :: String -> Token Stricts: _ |
PragmaRules :: Bool -> Token HasWrapper Stricts: ! |
PragmaSpecialize :: Bool -> Token HasWrapper Stricts: ! |
PragmaStart :: String -> Token Stricts: _ |
PragmaEnd :: Token |
LeftParen :: Token |
RightParen :: Token |
LeftUParen :: Token |
RightUParen :: Token |
SemiColon :: Token |
LeftCurly :: Token |
RightCurly :: Token |
VRightCurly :: Token |
LeftSquare :: Token |
RightSquare :: Token |
Comma :: Token |
Underscore :: Token |
BackQuote :: Token |
DotDot :: Token |
Colon :: Token |
DoubleColon :: Token |
Equals :: Token |
Backslash :: Token |
Bar :: Token |
LeftArrow :: Token |
RightArrow :: Token |
At :: Token |
Tilde :: Token |
DoubleArrow :: Token |
Minus :: Token |
Quest :: Token |
QuestQuest :: Token |
StarBang :: Token |
Exclamation :: Token |
BangExclamation :: Token |
Star :: Token |
Hash :: Token |
Dot :: Token |
KW_As :: Token |
KW_Case :: Token |
KW_Class :: Token |
KW_Alias :: Token |
KW_Data :: Token |
KW_Default :: Token |
KW_Deriving :: Token |
KW_Do :: Token |
KW_Else :: Token |
KW_Hiding :: Token |
KW_If :: Token |
KW_Import :: Token |
KW_In :: Token |
KW_Infix :: Token |
KW_InfixL :: Token |
KW_InfixR :: Token |
KW_Instance :: Token |
KW_Let :: Token |
KW_Module :: Token |
KW_NewType :: Token |
KW_Of :: Token |
KW_Then :: Token |
KW_Type :: Token |
KW_Where :: Token |
KW_Qualified :: Token |
KW_Foreign :: Token |
KW_Forall :: Token |
KW_Exists :: Token |
KW_Kind :: Token |
KW_Family :: Token |
KW_Closed :: Token |
EOF :: Token
FamilyInstance: none
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.ParseMonad, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Warning, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (Options, False), (PackedString, False),
(Random, False), (RawFiles, False), (StringTable.Atom, False),
(Support.IniParse, False), (Support.TempDir, False),
(System, False), (Time, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.SetLike, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 83 of 182] Compiling Util.UniqueMonad ( src/Util/UniqueMonad.hs, src/Util/UniqueMonad.o )
TYPE SIGNATURES
execUniq :: forall a. Int -> Uniq a -> a
execUniq1 :: forall a. Uniq a -> a
execUniqT :: forall (m :: * -> *) a.
Monad m =>
Int -> UniqT m a -> m a
runUniq :: forall a. Int -> Uniq a -> (a, Int)
runUniqT :: forall (m :: * -> *) a.
Monad m =>
UniqT m a -> Int -> m (a, Int)
TYPE CONSTRUCTORS
type Uniq
= UniqT Identity
FamilyInstance: none
newtype UniqT (m::* -> *) a
RecFlag NonRecursive
= UniqT :: forall (m::* -> *) a. (StateT Int m a) -> UniqT m a
Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom Util.UniqueMonad.NTCo:UniqT [] :: UniqT ~# StateT Int
INSTANCES
instance [overlap ok] Monad m => Monad (UniqT m)
-- Defined at src/Util/UniqueMonad.hs:46:14
instance [overlap ok] MonadTrans UniqT
-- Defined at src/Util/UniqueMonad.hs:46:22
instance [overlap ok] Functor m => Functor (UniqT m)
-- Defined at src/Util/UniqueMonad.hs:46:34
instance [overlap ok] MonadFix m => MonadFix (UniqT m)
-- Defined at src/Util/UniqueMonad.hs:46:43
instance [overlap ok] MonadPlus m => MonadPlus (UniqT m)
-- Defined at src/Util/UniqueMonad.hs:46:53
instance [overlap ok] MonadReader s m => MonadReader s (UniqT m)
-- Defined at src/Util/UniqueMonad.hs:48:10
instance [overlap ok] (Monad m, Monad (t m), MonadTrans t,
UniqueProducer m) =>
UniqueProducer (t m)
-- Defined at src/Util/UniqueMonad.hs:41:10
instance [overlap ok] Monad m => UniqueProducer (UniqT m)
-- Defined at src/Util/UniqueMonad.hs:16:10
instance [overlap ok] UniqueProducer IO
-- Defined at src/Util/UniqueMonad.hs:11:10
Dependent modules: [(CPUTime, False), (Char, False),
(GenUtil, False), (List, False), (Monad, False), (Random, False),
(System, False), (Time, False)]
Dependent packages: [array-0.4.0.0, base, deepseq-1.3.0.0,
ghc-prim, integer-gmp, mtl-2.1.1, old-locale-1.0.0.4,
old-time-1.1.0.0, process-1.1.0.1, random-1.0.1.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0]
[ 84 of 182] Compiling Util.Graph ( src/Util/Graph.hs, src/Util/Graph.o )
TYPE SIGNATURES
Util.Graph.components :: forall n. Graph n -> [[n]]
cyclicNodes :: forall n. Graph n -> [n]
Util.Graph.dff :: forall n. Graph n -> Forest n
findLoopBreakers :: forall n.
(n -> Int) -> (n -> Bool) -> Graph n -> ([n], [n])
fromAdjacencyMatrix :: forall s. AdjacencyMatrix s -> ST s G.Graph
fromGraph :: forall n. Graph n -> [(n, [n])]
fromScc :: forall t. Either t [t] -> [t]
mapGraph :: forall a b. (a -> [b] -> b) -> Graph a -> Graph b
newGraph :: forall k n.
Ord k =>
[n] -> (n -> k) -> (n -> [k]) -> Graph n
newGraph' :: forall k n.
Ord k =>
[n] -> (n -> k) -> (n -> [k]) -> (Map.Map k Vertex, Graph n)
newGraphReachable :: forall k n.
Ord k =>
[n] -> (n -> k) -> (n -> [k]) -> ([k] -> [n], Graph n)
Util.Graph.reachable :: forall n. Graph n -> [Vertex] -> [n]
reachableFrom :: forall k n.
Ord k =>
(n -> k) -> (n -> [k]) -> [n] -> [k] -> [n]
restitchGraph :: forall k n.
Ord k =>
(n -> k) -> (n -> [k]) -> Graph n -> Graph n
Util.Graph.scc :: forall n. Graph n -> [Either n [n]]
sccForest :: forall n. Graph n -> Forest n
sccGroups :: forall n. Graph n -> [[n]]
toAdjacencyMatrix :: forall s. G.Graph -> ST s (AdjacencyMatrix s)
toDag :: forall n. Graph n -> Graph [n]
Util.Graph.topSort :: forall n. Graph n -> [n]
transitiveClosure :: forall n. Graph n -> Graph n
transitiveClosureAM :: forall s. AdjacencyMatrix s -> ST s ()
transitiveReduction :: forall n. Graph n -> Graph n
transitiveReductionAM :: forall s. AdjacencyMatrix s -> ST s ()
TYPE CONSTRUCTORS
type AdjacencyMatrix s
= STArray s (Vertex, Vertex) Bool
FamilyInstance: none
data Graph n
RecFlag NonRecursive
= Graph :: forall n. G.Graph -> (Table n) -> Graph n Stricts: _ _
FamilyInstance: none
type IAdjacencyMatrix
= Array (Vertex, Vertex) Bool
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Functor Graph
-- Defined at src/Util/Graph.hs:201:10
instance [overlap ok] Show n => Show (Graph n)
-- Defined at src/Util/Graph.hs:45:10
Dependent modules: [(CPUTime, False), (Char, False),
(GenUtil, False), (List, False), (Monad, False), (Random, False),
(System, False), (Time, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp, old-locale-1.0.0.4,
old-time-1.1.0.0, process-1.1.0.1, random-1.0.1.1, time-1.4,
unix-2.5.1.0]
[ 85 of 182] Compiling Info.Info ( src/Info/Info.hs, src/Info/Info.o )
TYPE SIGNATURES
delete :: forall a. Typeable a => a -> Info -> Info
deleteTyp :: TypeRep -> Info -> Info
empty :: Info
entryString :: Entry -> String
entryThing :: Entry -> Dynamic
entryType :: Entry -> TypeRep
extend :: forall a.
(Show a, Monoid a, Typeable a) =>
a -> Info -> Info
fetch :: forall a. (Monoid a, Typeable a) => Info -> a
infoMap :: forall a b.
(Typeable a, Typeable b, Show b) =>
(a -> b) -> Info -> Info
infoMapM :: forall a b (m :: * -> *).
(Typeable a, Typeable b, Show b, Monad m) =>
(a -> m b) -> Info -> m Info
insert :: forall a. (Show a, Typeable a) => a -> Info -> Info
insertWith :: forall a.
(Show a, Typeable a) =>
(a -> a -> a) -> a -> Info -> Info
limit :: [TypeRep] -> Info -> Info
Info.Info.lookup :: forall a (m :: * -> *).
(Monad m, Typeable a) =>
Info -> m a
lookupTyp :: forall a. Typeable a => a -> Info -> Maybe a
maybeInsert :: forall a.
(Show a, Typeable a) =>
Maybe a -> Info -> Info
member :: forall a. Typeable a => a -> Info -> Bool
newEntry :: forall a. (Typeable a, Show a) => a -> Entry
singleton :: forall a. (Show a, Typeable a) => a -> Info
TYPE CONSTRUCTORS
data Entry
RecFlag NonRecursive
= Entry :: Dynamic -> String -> TypeRep -> Entry
HasWrapper
Stricts: _ _ !
Fields: entryThing entryString entryType
FamilyInstance: none
class HasInfo a
RecFlag NonRecursive
getInfo :: a -> Info modifyInfo :: (Info -> Info) -> a -> a
newtype Info
RecFlag NonRecursive
= Info :: [Entry] -> Info Stricts: _
FamilyInstance: none
type T
= Info
FamilyInstance: none
COERCION AXIOMS
axiom Info.Info.NTCo:Info [] :: Info ~# [Entry]
INSTANCES
instance [overlap ok] Typeable Info
-- Defined at src/Info/Info.hs:49:22
instance [overlap ok] HasSize Info
-- Defined at src/Info/Info.hs:49:14
instance [overlap ok] HasInfo Info
-- Defined at src/Info/Info.hs:72:10
instance [overlap ok] Monoid Info
-- Defined at src/Info/Info.hs:64:10
instance [overlap ok] Show Info
-- Defined at src/Info/Info.hs:57:10
instance [overlap ok] Ord Info -- Defined at src/Info/Info.hs:54:10
instance [overlap ok] Eq Info -- Defined at src/Info/Info.hs:52:10
instance [overlap ok] Ord Entry
-- Defined at src/Info/Info.hs:45:10
instance [overlap ok] Show Entry
-- Defined at src/Info/Info.hs:42:10
instance [overlap ok] Eq Entry -- Defined at src/Info/Info.hs:39:10
Dependent modules: [(CPUTime, False), (Char, False),
(GenUtil, False), (List, False), (Monad, False), (Random, False),
(System, False), (Time, False), (Util.HasSize, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp, old-locale-1.0.0.4,
old-time-1.1.0.0, process-1.1.0.1, random-1.0.1.1, time-1.4,
unix-2.5.1.0]
[ 86 of 182] Compiling Info.Types ( src/Info/Types.hs, src/Info/Types.o )
TYPE SIGNATURES
Info.Types.$dmgetProperty :: forall a.
HasProperties a =>
Property -> a -> Bool
Info.Types.$dmsetProperties :: forall a.
HasProperties a =>
[Property] -> a -> a
Info.Types.$dmsetProperty :: forall a.
HasProperties a =>
Property -> a -> a
Info.Types.$dmunsetProperty :: forall a.
HasProperties a =>
Property -> a -> a
fetchProperties :: Info.Info -> Maybe Properties
TYPE CONSTRUCTORS
data Arity
RecFlag NonRecursive
= Arity :: Int -> Bool -> Arity Stricts: _ _
FamilyInstance: none
class HasProperties a
RecFlag NonRecursive
modifyProperties :: (Properties -> Properties) -> a -> a
getProperties :: a -> Properties
putProperties :: Properties -> a -> a
setProperty {- Has default method -} :: Property -> a -> a
unsetProperty {- Has default method -} :: Property -> a -> a
getProperty {- Has default method -} :: Property -> a -> Bool
setProperties {- Has default method -} :: [Property] -> a -> a
newtype Properties
RecFlag NonRecursive
= Properties :: (EnumBitSet Property) -> Properties Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom Info.Types.NTCo:Properties []
:: Properties ~# EnumBitSet Property
axiom Info.Types.TFCo:R:ElemProperties []
:: Elem Properties ~# Info.Types.R:ElemProperties
axiom Info.Types.TFCo:R:KeyProperties []
:: Key Properties ~# Info.Types.R:KeyProperties
INSTANCES
instance [overlap ok] Typeable Arity
-- Defined at src/Info/Types.hs:15:14
instance [overlap ok] Typeable Properties
-- Defined at src/Info/Types.hs:26:14
instance [overlap ok] Show Arity
-- Defined at src/Info/Types.hs:15:23
instance [overlap ok] Ord Arity
-- Defined at src/Info/Types.hs:15:28
instance [overlap ok] Eq Arity
-- Defined at src/Info/Types.hs:15:32
instance [overlap ok] Eq Properties
-- Defined at src/Info/Types.hs:26:23
instance [overlap ok] Collection Properties
-- Defined at src/Info/Types.hs:26:26
instance [overlap ok] SetLike Properties
-- Defined at src/Info/Types.hs:26:37
instance [overlap ok] HasSize Properties
-- Defined at src/Info/Types.hs:26:45
instance [overlap ok] Monoid Properties
-- Defined at src/Info/Types.hs:26:53
instance [overlap ok] Unionize Properties
-- Defined at src/Info/Types.hs:26:60
instance [overlap ok] IsEmpty Properties
-- Defined at src/Info/Types.hs:26:69
instance [overlap ok] HasProperties Info.Info
-- Defined at src/Info/Types.hs:54:10
instance [overlap ok] HasProperties Properties
-- Defined at src/Info/Types.hs:46:10
instance [overlap ok] Show Properties
-- Defined at src/Info/Types.hs:21:10
FAMILY INSTANCES
type instance Elem Properties -- Defined at src/Info/Types.hs:28:15
type instance Key Properties -- Defined at src/Info/Types.hs:29:15
Dependent modules: [(CPUTime, False), (Char, False),
(GenUtil, False), (Info.Info, False), (Info.Properties, False),
(List, False), (Monad, False), (Random, False), (System, False),
(Time, False), (Util.BitSet, False), (Util.HasSize, False),
(Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp, old-locale-1.0.0.4,
old-time-1.1.0.0, process-1.1.0.1, random-1.0.1.1, time-1.4,
unix-2.5.1.0]
[ 87 of 182] Compiling Info.Binary[boot] ( src/Info/Binary.hs-boot, src/Info/Binary.o-boot )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(CPUTime, False), (Char, False),
(GenUtil, False), (Info.Info, False), (List, False),
(Monad, False), (Random, False), (System, False), (Time, False),
(Util.HasSize, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0, ghc-prim,
integer-gmp, old-locale-1.0.0.4, old-time-1.1.0.0, process-1.1.0.1,
random-1.0.1.1, time-1.4, unix-2.5.1.0]
[ 88 of 182] Compiling Fixer.VMap ( src/Fixer/VMap.hs, src/Fixer/VMap.o )
TYPE SIGNATURES
Fixer.VMap.$con2tag_Proxy :: forall p.
Proxy p -> ghc-prim:GHC.Prim.Int#
emptyVMap :: forall p n. (Ord p, Ord n) => VMap p n
pruneVMap :: forall n p.
(Ord n, Ord p, Show n, Show p) =>
VMap p n -> VMap p n
vmapArg :: forall p n.
(Ord p, Ord n, Show p, Show n) =>
n -> Int -> VMap p n -> VMap p n
vmapArgSingleton :: forall p n.
(Ord p, Ord n, Show p, Show n) =>
n -> Int -> VMap p n -> VMap p n
vmapArgs :: forall p n. VMap p n -> Map.Map (n, Int) (VMap p n)
vmapDropArgs :: forall n p. Ord n => VMap p n -> VMap p n
vmapHeads :: forall (m :: * -> *) p n. Monad m => VMap p n -> m [n]
vmapMember :: forall n p. Ord n => n -> VMap p n -> Bool
vmapNodes :: forall p n. VMap p n -> Either (Proxy p) (Set.Set n)
vmapPlaceholder :: forall p n.
(Show p, Show n, Ord p, Ord n) =>
p -> VMap p n
vmapProxyIndirect :: forall p n.
(Show p, Show n, Ord p, Ord n, Fixable (VMap p n)) =>
Int -> VMap p n -> VMap p n
vmapSingleton :: forall p n. (Ord p, Ord n) => n -> VMap p n
vmapValue :: forall p n.
(Show p, Show n, Ord p, Ord n) =>
n -> [VMap p n] -> VMap p n
TYPE CONSTRUCTORS
data Proxy p
RecFlag NonRecursive
= Proxy :: forall p. p -> Proxy p Stricts: _ |
DepthExceeded :: forall p. Proxy p
FamilyInstance: none
data VMap p n
RecFlag Recursive
= VMap :: forall p n.
(Map.Map (n, Int) (VMap p n)) -> (Either (Proxy p) (Set.Set n))
-> VMap p n
Stricts: _ _
Fields: vmapArgs vmapNodes
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Typeable1 Proxy
-- Defined at src/Fixer/VMap.hs:34:21
instance [overlap ok] Typeable2 VMap
-- Defined at src/Fixer/VMap.hs:31:14
instance [overlap ok] Eq p => Eq (Proxy p)
-- Defined at src/Fixer/VMap.hs:34:14
instance [overlap ok] Ord p => Ord (Proxy p)
-- Defined at src/Fixer/VMap.hs:34:17
instance [overlap ok] (Show p, Show n, Ord p, Ord n) =>
Monoid (VMap p n)
-- Defined at src/Fixer/VMap.hs:112:10
instance [overlap ok] (Show p, Show n, Ord p, Ord n) =>
Fixable (VMap p n)
-- Defined at src/Fixer/VMap.hs:91:10
instance [overlap ok] (Ord p, Ord n, Show p, Show n) =>
Show (VMap p n)
-- Defined at src/Fixer/VMap.hs:85:10
instance [overlap ok] Show p => Show (Proxy p)
-- Defined at src/Fixer/VMap.hs:36:10
Dependent modules: [(CPUTime, False), (Char, False),
(Doc.DocLike, False), (Fixer.Fixer, False), (GenUtil, False),
(IO, False), (List, False), (Monad, False), (Random, False),
(System, False), (Time, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, ghc-prim, integer-gmp, mtl-2.1.1,
old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, time-1.4, transformers-0.3.0.0,
unix-2.5.1.0]
[ 89 of 182] Compiling Util.Interact ( src/Util/Interact.hs, src/Util/Interact.o )
TYPE SIGNATURES
basicParse :: Maybe String
-> String -> Either (String, String) String
beginInteraction :: Interact -> IO ()
cleanupWhitespace :: [Char] -> [Char]
commandAction :: InteractCommand
-> Interact -> String -> String -> IO Interact
commandHelp :: InteractCommand -> String
commandName :: InteractCommand -> String
commands :: [([Char], [Char])]
emptyInteract :: Interact
extra_help :: [([Char], [Char])]
interactCommandMode :: Interact -> Bool
interactCommands :: Interact -> [InteractCommand]
interactComment :: Interact -> Maybe String
interactEcho :: Interact -> Bool
interactExpr :: Interact -> Interact -> String -> IO Interact
interactHistFile :: Interact -> Maybe String
interactPrompt :: Interact -> String
interactRC :: Interact -> [String]
interactSet :: Interact -> Map.Map String String
interactSettables :: Interact -> [String]
interactVersion :: Interact -> String
interactWords :: Interact -> [String]
readLine :: String -> (String -> IO [String]) -> IO String
runInteraction :: Interact -> String -> IO Interact
runInteractions :: Interact -> [String] -> IO Interact
thePrompt :: Interact -> String
TYPE CONSTRUCTORS
data Interact
RecFlag Recursive
= Interact :: String -> [InteractCommand] -> [String] -> String
-> (Map.Map String String) -> (Interact -> String -> IO Interact)
-> [String] -> [String] -> Bool -> Bool -> (Maybe String)
-> (Maybe String) -> Interact
Stricts: _ _ _ _ _ _ _ _ _ _ _ _
Fields: interactPrompt interactCommands interactSettables interactVersion interactSet interactExpr interactRC interactWords interactEcho interactCommandMode interactHistFile interactComment
FamilyInstance: none
data InteractCommand
RecFlag NonRecursive
= InteractCommand :: String -> String
-> (Interact -> String -> String -> IO Interact) -> InteractCommand
Stricts: _ _ _
Fields: commandName commandHelp commandAction
FamilyInstance: none
COERCION AXIOMS
Dependent modules: [(CPUTime, False), (Char, False),
(GenUtil, False), (IO, False), (List, False), (Monad, False),
(Random, False), (System, False), (Time, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, directory-1.1.0.2, filepath-1.3.0.0, ghc-prim,
integer-gmp, mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0,
process-1.1.0.1, random-1.0.1.1, readline-1.0.1.0, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0]
[ 90 of 182] Compiling Name.Names ( src/Name/Names.hs, src/Name/Names.o )
TYPE SIGNATURES
fromUnboxedNameTuple :: forall (m :: * -> *) a.
(Monad m, Show a) =>
a -> m Int
nameTuple :: NameType -> Int -> Name
sFuncNames :: FuncNames Name
s_Any :: Name
s_Quest :: Name
s_QuestQuest :: Name
s_StarBang :: Name
u_instance :: Name
unboxedNameTuple :: forall a. Show a => NameType -> a -> Name
TYPE CONSTRUCTORS
COERCION AXIOMS
INSTANCES
instance [overlap ok] FromTupname Name
-- Defined at src/Name/Names.hs:43:10
instance [overlap ok] TypeNames Name
-- Defined at src/Name/Names.hs:19:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (Name.Prim, False), (Name.VConsts, False),
(PackedString, False), (Random, False), (StringTable.Atom, False),
(System, False), (Time, False), (Util.GMap, False),
(Util.Gen, False), (Util.HasSize, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 91 of 182] Compiling E.Type ( drift_processed/E/Type.hs, src/E/Type.o )
TYPE SIGNATURES
E.Type.$con2tag_E :: E -> ghc-prim:GHC.Prim.Int#
E.Type.$con2tag_ESort :: ESort -> ghc-prim:GHC.Prim.Int#
E.Type.$con2tag_Lit :: forall e t.
Lit e t -> ghc-prim:GHC.Prim.Int#
E.Type.$con2tag_RuleType :: RuleType -> ghc-prim:GHC.Prim.Int#
altHead :: Alt E -> Lit () ()
aruleFreeVars :: ARules -> IdSet
aruleRules :: ARules -> [Rule]
bindComb :: (TVr, E) -> Comb
caseBinds :: E -> [TVr]
caseBodies :: E -> [E]
casePats :: E -> [Lit TVr E]
combABody :: Comb -> E
combArgs :: Comb -> [TVr]
combBind :: Comb -> (TVr, E)
combBody :: Comb -> E
combBody_s :: E -> Comb -> Comb
combBody_u :: (E -> E) -> Comb -> Comb
combHead :: Comb -> TVr
combHead_s :: TVr -> Comb -> Comb
combHead_u :: (TVr -> TVr) -> Comb -> Comb
combIdent :: Comb -> Id
combRules :: Comb -> [Rule]
combRules_s :: [Rule] -> Comb -> Comb
combRules_u :: ([Rule] -> [Rule]) -> Comb -> Comb
combTriple :: Comb -> (TVr, [TVr], E)
combTriple_s :: (TVr, [TVr], E) -> Comb -> Comb
eBody :: E -> E
eCaseAllFV :: E -> IdSet
eCaseAlts :: E -> [Alt E]
eCaseBind :: E -> TVr
eCaseDefault :: E -> Maybe E
eCaseScrutinee :: E -> E
eCaseType :: E -> E
eDefs :: E -> [(TVr, E)]
eHash :: E
eStar :: E
emptyComb :: Comb
fromAp :: E -> (E, [E])
fromEAp :: forall (m :: * -> *). Monad m => E -> m (E, E)
fromECase :: forall (m :: * -> *).
Monad m =>
E -> m (E, E, TVr, [Alt E], Maybe E, IdSet)
fromEError :: forall (m :: * -> *). Monad m => E -> m (String, E)
fromELam :: forall (m :: * -> *). Monad m => E -> m (TVr, E)
fromELetRec :: forall (m :: * -> *).
Monad m =>
E -> m ([(TVr, E)], E)
fromELit :: forall (m :: * -> *). Monad m => E -> m (Lit E E)
fromEPi :: forall (m :: * -> *). Monad m => E -> m (TVr, E)
fromEPrim :: forall (m :: * -> *). Monad m => E -> m (Prim, [E], E)
fromESort :: forall (m :: * -> *). Monad m => E -> m ESort
fromEVar :: forall (m :: * -> *). Monad m => E -> m TVr
fromLam :: E -> (E, [TVr])
fromPi :: E -> (E, [TVr])
fromUnknown :: forall (m :: * -> *). Monad m => E -> m ()
isEAp :: E -> Bool
isEBang :: ESort -> Bool
isECase :: E -> Bool
isEError :: E -> Bool
isEHash :: ESort -> Bool
isEHashHash :: ESort -> Bool
isELam :: E -> Bool
isELetRec :: E -> Bool
isELit :: E -> Bool
isEPi :: E -> Bool
isEPrim :: E -> Bool
isESort :: E -> Bool
isESortNamed :: ESort -> Bool
isEStar :: ESort -> Bool
isEStarStar :: ESort -> Bool
isETuple :: ESort -> Bool
isEVar :: E -> Bool
isLitCons :: forall t t1. Lit t t1 -> Bool
isLitInt :: forall t t1. Lit t t1 -> Bool
isUnknown :: E -> Bool
litAliasFor :: forall e t. Lit e t -> Maybe E
litArgs :: forall e t. Lit e t -> [e]
litBinds :: forall t t1. Lit t t1 -> [t]
litCons :: forall e t. Lit e t
litHead :: forall a b. Lit a b -> Lit () ()
litName :: forall e t. Lit e t -> Name
litNumber :: forall e t. Lit e t -> Number
litType :: forall e t. Lit e t -> t
patToLitEE :: Lit TVr E -> E
ruleArgs :: Rule -> [E]
ruleBinds :: Rule -> [TVr]
ruleBody :: Rule -> E
ruleHead :: Rule -> TVr
ruleNArgs :: Rule -> Int
ruleName :: Rule -> Atom
ruleType :: Rule -> RuleType
ruleUniq :: Rule -> (Module, Int)
tVr :: forall e. Id -> e -> TVr' e
tvr :: TVr' E
tvrIdent :: forall e. TVr' e -> Id
tvrIdent_s :: forall e. Id -> TVr' e -> TVr' e
tvrIdent_u :: forall e. (Id -> Id) -> TVr' e -> TVr' e
tvrInfo :: forall e. TVr' e -> Info.Info
tvrInfo_s :: forall e. Info.Info -> TVr' e -> TVr' e
tvrInfo_u :: forall e. (Info.Info -> Info.Info) -> TVr' e -> TVr' e
tvrType :: forall e. TVr' e -> e
tvrType_s :: forall e t. e -> TVr' t -> TVr' e
tvrType_u :: forall e t. (t -> e) -> TVr' t -> TVr' e
TYPE CONSTRUCTORS
data ARules
RecFlag NonRecursive
= ARules :: IdSet -> [Rule] -> ARules
Stricts: _ _
Fields: aruleFreeVars aruleRules
FamilyInstance: none
data Alt e
RecFlag NonRecursive
= Alt :: forall e. (Lit TVr e) -> e -> Alt e Stricts: _ _
FamilyInstance: none
data Comb
RecFlag NonRecursive
= Comb :: TVr -> E -> [Rule] -> Comb
Stricts: _ _ _
Fields: combHead combBody combRules
FamilyInstance: none
data E
RecFlag NonRecursive
= EAp :: E -> E -> E Stricts: _ _ |
ELam :: TVr -> E -> E Stricts: _ _ |
EPi :: TVr -> E -> E Stricts: _ _ |
EVar :: TVr -> E Stricts: _ |
Unknown :: E |
ESort :: ESort -> E Stricts: _ |
ELit :: (Lit E E) -> E HasWrapper Stricts: ! |
ELetRec :: [(TVr, E)] -> E -> E Stricts: _ _ Fields: eDefs eBody |
EPrim :: Prim -> [E] -> E -> E Stricts: _ _ _ |
EError :: String -> E -> E Stricts: _ _ |
ECase :: E -> E -> TVr -> [Alt E] -> (Maybe E) -> IdSet -> E
Stricts: _ _ _ _ _ _
Fields: eCaseScrutinee eCaseType eCaseBind eCaseAlts eCaseDefault eCaseAllFV
FamilyInstance: none
data ESort
RecFlag NonRecursive
= EStar :: ESort |
EBang :: ESort |
EHash :: ESort |
ETuple :: ESort |
EHashHash :: ESort |
EStarStar :: ESort |
ESortNamed :: Name -> ESort Stricts: _
FamilyInstance: none
data Lit e t
RecFlag NonRecursive
= LitInt :: forall e t. Number -> t -> Lit e t
Stricts: _ _
Fields: litNumber litType |
LitCons :: forall e t. Name -> [e] -> t -> (Maybe E) -> Lit e t
Stricts: _ _ _ _
Fields: litName litArgs litType litAliasFor
FamilyInstance: none
data Rule
RecFlag NonRecursive
= Rule :: TVr -> [TVr] -> [E] -> Int -> E -> RuleType
-> (Module, Int) -> Atom -> Rule
HasWrapper
Stricts: _ _ _ {-# UNPACK #-} ! _ _ _ _
Fields: ruleHead ruleBinds ruleArgs ruleNArgs ruleBody ruleType ruleUniq ruleName
FamilyInstance: none
data RuleType
RecFlag NonRecursive
= RuleSpecialization :: RuleType |
RuleUser :: RuleType |
RuleCatalyst :: RuleType
FamilyInstance: none
type TVr
= TVr' E
FamilyInstance: none
data TVr' e
RecFlag NonRecursive
= TVr :: forall e. Id -> e -> Info.Info -> TVr' e
HasWrapper
Stricts: ! _ _
Fields: tvrIdent tvrType tvrInfo
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Eq RuleType -- Defined at src/E/Type.hs:90:14
instance [overlap ok] Eq ESort -- Defined at src/E/Type.hs:131:14
instance [overlap ok] Ord ESort -- Defined at src/E/Type.hs:131:18
instance [overlap ok] Functor TVr'
-- Defined at src/E/Type.hs:184:14
instance [overlap ok] Foldable TVr'
-- Defined at src/E/Type.hs:184:22
instance [overlap ok] Traversable TVr'
-- Defined at src/E/Type.hs:184:31
instance [overlap ok] Eq e => Eq (Alt e)
-- Defined at src/E/Type.hs:188:14
instance [overlap ok] Ord e => Ord (Alt e)
-- Defined at src/E/Type.hs:188:17
instance [overlap ok] Eq E -- Defined at src/E/Type.hs:152:18
instance [overlap ok] Ord E -- Defined at src/E/Type.hs:152:22
instance [overlap ok] (Eq e, Eq t) => Eq (Lit e t)
-- Defined at src/E/Type.hs:112:14
instance [overlap ok] (Ord e, Ord t) => Ord (Lit e t)
-- Defined at src/E/Type.hs:112:17
instance [overlap ok] Functor (Lit e)
-- Defined at src/E/Type.hs:112:21
instance [overlap ok] Foldable (Lit e)
-- Defined at src/E/Type.hs:112:29
instance [overlap ok] Traversable (Lit e)
-- Defined at src/E/Type.hs:112:38
instance [overlap ok] Ord TVr -- Defined at src/E/Type.hs:194:10
instance [overlap ok] Eq TVr -- Defined at src/E/Type.hs:190:10
instance [overlap ok] Show a => Show (TVr' a)
-- Defined at src/E/Type.hs:176:10
instance [overlap ok] (Show e, Show t) => Show (Lit e t)
-- Defined at src/E/Type.hs:172:10
instance [overlap ok] Show ESort -- Defined at src/E/Type.hs:163:10
instance [overlap ok] HasProperties TVr
-- Defined at src/E/Type.hs:65:10
instance [overlap ok] HasProperties Comb
-- Defined at src/E/Type.hs:60:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.DocLike, False),
(Doc.PPrint, False), (GenUtil, False), (Info.Info, False),
(Info.Properties, False), (Info.Types, False), (List, False),
(Monad, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(PackedString, False), (Random, False), (Ratio, False),
(StringTable.Atom, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.Inst, False), (Util.NameMonad, False),
(Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 92 of 182] Compiling E.FreeVars ( src/E/FreeVars.hs, src/E/FreeVars.o )
TYPE SIGNATURES
bindingFreeVars :: TVr -> E -> IdSet
caseUpdate :: E -> E
decomposeDs :: [(TVr, E)] -> [Either (TVr, E) [(TVr, E)]]
decomposeLet :: E -> ([Either (TVr, E) [(TVr, E)]], E)
freeIdMap :: E -> IdMap TVr
freeIds :: E -> IdSet
freeVarsInfo :: forall t a. Monoid a => t -> a
getLitTyp :: forall t t1. Lit t t1 -> t1
ruleHeadFV :: forall s.
(FreeVars E s, SetLike s, Unionize s, Elem s ~ Id) =>
Rule -> s
TYPE CONSTRUCTORS
COERCION AXIOMS
INSTANCES
instance [overlap ok] FreeVars Rule IdSet
-- Defined at src/E/FreeVars.hs:131:10
instance [overlap ok] FreeVars Comb [Id]
-- Defined at src/E/FreeVars.hs:123:10
instance [overlap ok] FreeVars Comb IdSet
-- Defined at src/E/FreeVars.hs:120:10
instance [overlap ok] FreeVars ARules IdSet
-- Defined at src/E/FreeVars.hs:116:10
instance [overlap ok] FreeVars TVr IdSet
-- Defined at src/E/FreeVars.hs:105:10
instance [overlap ok] FreeVars E (IdMap (Maybe E))
-- Defined at src/E/FreeVars.hs:44:10
instance [overlap ok] FreeVars E (IdMap TVr)
-- Defined at src/E/FreeVars.hs:42:10
instance [overlap ok] FreeVars (Alt E) (IdMap TVr)
-- Defined at src/E/FreeVars.hs:40:10
instance [overlap ok] FreeVars E IdSet
-- Defined at src/E/FreeVars.hs:37:10
instance [overlap ok] FreeVars (Alt E) IdSet
-- Defined at src/E/FreeVars.hs:35:10
instance [overlap ok] FreeVars E x => FreeVars (Lit TVr E) x
-- Defined at src/E/FreeVars.hs:32:10
instance [overlap ok] FreeVars E t => FreeVars TVr t
-- Defined at src/E/FreeVars.hs:29:10
instance [overlap ok] FreeVars E [Id]
-- Defined at src/E/FreeVars.hs:26:10
instance [overlap ok] FreeVars E [TVr]
-- Defined at src/E/FreeVars.hs:24:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.DocLike, False),
(Doc.PPrint, False), (E.Type, False), (GenUtil, False),
(Info.Info, False), (Info.Properties, False), (Info.Types, False),
(List, False), (Monad, False), (Name.Id, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (PackedString, False), (Random, False),
(Ratio, False), (StringTable.Atom, False),
(Support.FreeVars, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.NameMonad, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 93 of 182] Compiling FrontEnd.HsSyn ( drift_processed/FrontEnd/HsSyn.hs, src/FrontEnd/HsSyn.o )
TYPE SIGNATURES
FrontEnd.HsSyn.$cHsAsst :: Constr
FrontEnd.HsSyn.$cHsAsstEq :: Constr
FrontEnd.HsSyn.$cHsKind :: Constr
FrontEnd.HsSyn.$cHsKindFn :: Constr
FrontEnd.HsSyn.$cHsQualType :: Constr
FrontEnd.HsSyn.$cHsTyApp :: Constr
FrontEnd.HsSyn.$cHsTyAssoc :: Constr
FrontEnd.HsSyn.$cHsTyCon :: Constr
FrontEnd.HsSyn.$cHsTyEq :: Constr
FrontEnd.HsSyn.$cHsTyExists :: Constr
FrontEnd.HsSyn.$cHsTyExpKind :: Constr
FrontEnd.HsSyn.$cHsTyForall :: Constr
FrontEnd.HsSyn.$cHsTyFun :: Constr
FrontEnd.HsSyn.$cHsTyStrictType :: Constr
FrontEnd.HsSyn.$cHsTyTuple :: Constr
FrontEnd.HsSyn.$cHsTyUnboxedTuple :: Constr
FrontEnd.HsSyn.$cHsTyVar :: Constr
FrontEnd.HsSyn.$cHsTyVarBind :: Constr
FrontEnd.HsSyn.$con2tag_DeclType :: DeclType
-> ghc-prim:GHC.Prim.Int#
FrontEnd.HsSyn.$con2tag_HsAssoc :: HsAssoc
-> ghc-prim:GHC.Prim.Int#
FrontEnd.HsSyn.$con2tag_HsAsst :: HsAsst -> ghc-prim:GHC.Prim.Int#
FrontEnd.HsSyn.$con2tag_HsErrorType :: HsErrorType
-> ghc-prim:GHC.Prim.Int#
FrontEnd.HsSyn.$con2tag_HsKind :: HsKind -> ghc-prim:GHC.Prim.Int#
FrontEnd.HsSyn.$con2tag_HsLiteral :: HsLiteral
-> ghc-prim:GHC.Prim.Int#
FrontEnd.HsSyn.$con2tag_HsPat :: HsPat -> ghc-prim:GHC.Prim.Int#
FrontEnd.HsSyn.$con2tag_HsType :: HsType -> ghc-prim:GHC.Prim.Int#
FrontEnd.HsSyn.$tHsAsst :: DataType
FrontEnd.HsSyn.$tHsKind :: DataType
FrontEnd.HsSyn.$tHsQualType :: DataType
FrontEnd.HsSyn.$tHsTyVarBind :: DataType
FrontEnd.HsSyn.$tHsType :: DataType
hsBangType :: HsBangType -> HsType
hsClassHead :: HsClassHead -> HsName
hsClassHeadArgs :: HsClassHead -> [HsType]
hsClassHeadArgs_s :: [HsType] -> HsClassHead -> HsClassHead
hsClassHeadArgs_u :: ([HsType] -> [HsType])
-> HsClassHead -> HsClassHead
hsClassHeadContext :: HsClassHead -> HsContext
hsClassHeadContext_s :: HsContext -> HsClassHead -> HsClassHead
hsClassHeadContext_u :: (HsContext -> HsContext)
-> HsClassHead -> HsClassHead
hsClassHead_s :: HsName -> HsClassHead -> HsClassHead
hsClassHead_u :: (HsName -> HsName) -> HsClassHead -> HsClassHead
hsConDeclArgs :: HsConDecl -> [HsBangType]
hsConDeclConArg :: HsConDecl -> [HsBangType]
hsConDeclConArg_s :: [HsBangType] -> HsConDecl -> HsConDecl
hsConDeclConArg_u :: ([HsBangType] -> [HsBangType])
-> HsConDecl -> HsConDecl
hsConDeclExists :: HsConDecl -> [HsTyVarBind]
hsConDeclExists_s :: [HsTyVarBind] -> HsConDecl -> HsConDecl
hsConDeclExists_u :: ([HsTyVarBind] -> [HsTyVarBind])
-> HsConDecl -> HsConDecl
hsConDeclName :: HsConDecl -> HsName
hsConDeclName_s :: HsName -> HsConDecl -> HsConDecl
hsConDeclName_u :: (HsName -> HsName) -> HsConDecl -> HsConDecl
hsConDeclRecArg :: HsConDecl -> [([HsName], HsBangType)]
hsConDeclRecArg_s :: [([HsName], HsBangType)]
-> HsConDecl -> HsConDecl
hsConDeclRecArg_u :: ([([HsName], HsBangType)]
-> [([HsName], HsBangType)])
-> HsConDecl -> HsConDecl
hsConDeclSrcLoc :: HsConDecl -> SrcLoc
hsConDeclSrcLoc_s :: SrcLoc -> HsConDecl -> HsConDecl
hsConDeclSrcLoc_u :: (SrcLoc -> SrcLoc) -> HsConDecl -> HsConDecl
hsDataDecl :: HsDecl
hsDeclArgs :: HsDecl -> [Name]
hsDeclAssoc :: HsDecl -> HsAssoc
hsDeclBool :: HsDecl -> Bool
hsDeclCName :: HsDecl -> Maybe String
hsDeclCTYPE :: HsDecl -> Maybe String
hsDeclClassHead :: HsDecl -> HsClassHead
hsDeclClasses :: HsDecl -> HsContext
hsDeclCons :: HsDecl -> [HsConDecl]
hsDeclContext :: HsDecl -> HsContext
hsDeclCount :: HsDecl -> Int
hsDeclData :: HsDecl -> Bool
hsDeclDeclType :: HsDecl -> DeclType
hsDeclDecls :: HsDecl -> [HsDecl]
hsDeclDerives :: HsDecl -> [HsName]
hsDeclExp :: HsDecl -> HsExp
hsDeclFFIExport :: HsDecl -> FfiExport
hsDeclForeign :: HsDecl -> FfiSpec
hsDeclHasKind :: HsDecl -> Maybe HsKind
hsDeclInt :: HsDecl -> Int
hsDeclName :: HsDecl -> HsName
hsDeclNames :: HsDecl -> [HsName]
hsDeclPat :: HsDecl -> HsPat
hsDeclQualType :: HsDecl -> HsQualType
hsDeclSrcLoc :: HsDecl -> SrcLoc
hsDeclTArgs :: HsDecl -> [HsType]
hsDeclType :: HsDecl -> HsType
hsDeclTypeArgs :: HsDecl -> [HsType]
hsDeclUniq :: HsDecl -> (Module, Int)
hsExpErrorType :: HsExp -> HsErrorType
hsExpErrorType_s :: HsErrorType -> HsExp -> HsExp
hsExpErrorType_u :: (HsErrorType -> HsErrorType) -> HsExp -> HsExp
hsExpExp :: HsExp -> HsExp
hsExpExp_s :: HsExp -> HsExp -> HsExp
hsExpExp_u :: (HsExp -> HsExp) -> HsExp -> HsExp
hsExpLExp :: HsExp -> LHsExp
hsExpLExp_s :: LHsExp -> HsExp -> HsExp
hsExpLExp_u :: (LHsExp -> LHsExp) -> HsExp -> HsExp
hsExpName :: HsExp -> HsName
hsExpName_s :: HsName -> HsExp -> HsExp
hsExpName_u :: (HsName -> HsName) -> HsExp -> HsExp
hsExpSrcLoc :: HsExp -> SrcLoc
hsExpSrcLoc_s :: SrcLoc -> HsExp -> HsExp
hsExpSrcLoc_u :: (SrcLoc -> SrcLoc) -> HsExp -> HsExp
hsExpStatements :: HsExp -> [HsStmt]
hsExpStatements_s :: [HsStmt] -> HsExp -> HsExp
hsExpStatements_u :: ([HsStmt] -> [HsStmt]) -> HsExp -> HsExp
hsExpString :: HsExp -> String
hsExpString_s :: String -> HsExp -> HsExp
hsExpString_u :: (String -> String) -> HsExp -> HsExp
hsIdentString_u :: forall t t1. (t1 -> t) -> t1 -> t
hsImportDeclAs :: HsImportDecl -> Maybe Module
hsImportDeclModule :: HsImportDecl -> Module
hsImportDeclQualified :: HsImportDecl -> Bool
hsImportDeclSpec :: HsImportDecl -> Maybe (Bool, [HsExportSpec])
hsImportDeclSrcLoc :: HsImportDecl -> SrcLoc
hsKindBang :: HsKind
hsKindHash :: HsKind
hsKindQuest :: HsKind
hsKindQuestQuest :: HsKind
hsKindStar :: HsKind
hsKindStarBang :: HsKind
hsMatchDecls :: HsMatch -> [HsDecl]
hsMatchName :: HsMatch -> HsName
hsMatchPats :: HsMatch -> [HsPat]
hsMatchRhs :: HsMatch -> HsRhs
hsMatchSrcLoc :: HsMatch -> SrcLoc
hsModuleDecls :: HsModule -> [HsDecl]
hsModuleDecls_s :: [HsDecl] -> HsModule -> HsModule
hsModuleDecls_u :: ([HsDecl] -> [HsDecl]) -> HsModule -> HsModule
hsModuleExports :: HsModule -> Maybe [HsExportSpec]
hsModuleExports_s :: Maybe [HsExportSpec] -> HsModule -> HsModule
hsModuleExports_u :: (Maybe [HsExportSpec] -> Maybe [HsExportSpec])
-> HsModule -> HsModule
hsModuleImports :: HsModule -> [HsImportDecl]
hsModuleImports_s :: [HsImportDecl] -> HsModule -> HsModule
hsModuleImports_u :: ([HsImportDecl] -> [HsImportDecl])
-> HsModule -> HsModule
hsModuleName :: HsModule -> Module
hsModuleName_s :: Module -> HsModule -> HsModule
hsModuleName_u :: (Module -> Module) -> HsModule -> HsModule
hsModuleOpt :: HsModule -> Opt
hsModuleOpt_s :: Opt -> HsModule -> HsModule
hsModuleOpt_u :: (Opt -> Opt) -> HsModule -> HsModule
hsModuleOptions :: HsModule -> [String]
hsModuleOptions_s :: [String] -> HsModule -> HsModule
hsModuleOptions_u :: ([String] -> [String]) -> HsModule -> HsModule
hsModuleSrcLoc :: HsModule -> SrcLoc
hsModuleSrcLoc_s :: SrcLoc -> HsModule -> HsModule
hsModuleSrcLoc_u :: (SrcLoc -> SrcLoc) -> HsModule -> HsModule
hsNameIdent_u :: (String -> String) -> Name -> Name
hsNewTypeDecl :: HsDecl
hsParen :: HsExp -> HsExp
hsPatLPat :: HsPat -> LHsPat
hsPatLit :: HsPat -> HsLiteral
hsPatName :: HsPat -> HsName
hsPatPat :: HsPat -> HsPat
hsPatPats :: HsPat -> [HsPat]
hsQualTypeContext :: HsQualType -> HsContext
hsQualTypeType :: HsQualType -> HsType
hsRuleFreeVars :: HsRule -> [(HsName, Maybe HsType)]
hsRuleIsMeta :: HsRule -> Bool
hsRuleLeftExpr :: HsRule -> HsExp
hsRuleRightExpr :: HsRule -> HsExp
hsRuleSrcLoc :: HsRule -> SrcLoc
hsRuleString :: HsRule -> String
hsRuleUniq :: HsRule -> (Module, Int)
hsTyKind :: HsType -> HsKind
hsTyLType :: HsType -> LHsType
hsTyStrict :: HsType -> Bool
hsTyVarBind :: HsTyVarBind
hsTyVarBindKind :: HsTyVarBind -> Maybe HsKind
hsTyVarBindKind_s :: Maybe HsKind -> HsTyVarBind -> HsTyVarBind
hsTyVarBindKind_u :: (Maybe HsKind -> Maybe HsKind)
-> HsTyVarBind -> HsTyVarBind
hsTyVarBindName :: HsTyVarBind -> HsName
hsTyVarBindName_s :: HsName -> HsTyVarBind -> HsTyVarBind
hsTyVarBindName_u :: (HsName -> HsName)
-> HsTyVarBind -> HsTyVarBind
hsTyVarBindSrcLoc :: HsTyVarBind -> SrcLoc
hsTyVarBindSrcLoc_s :: SrcLoc -> HsTyVarBind -> HsTyVarBind
hsTyVarBindSrcLoc_u :: (SrcLoc -> SrcLoc)
-> HsTyVarBind -> HsTyVarBind
hsTypeName :: HsType -> HsName
hsTypeType :: HsType -> HsQualType
hsTypeVars :: HsType -> [HsTyVarBind]
isHsActionDecl :: HsDecl -> Bool
isHsApp :: HsExp -> Bool
isHsAsPat :: HsExp -> Bool
isHsBangPat :: HsExp -> Bool
isHsCase :: HsExp -> Bool
isHsChar :: HsLiteral -> Bool
isHsCharPrim :: HsLiteral -> Bool
isHsClassAliasDecl :: HsDecl -> Bool
isHsClassDecl :: HsDecl -> Bool
isHsCon :: HsExp -> Bool
isHsConDecl :: HsConDecl -> Bool
isHsDataDecl :: HsDecl -> Bool
isHsDeclDeriving :: HsDecl -> Bool
isHsDefaultDecl :: HsDecl -> Bool
isHsDo :: HsExp -> Bool
isHsDoublePrim :: HsLiteral -> Bool
isHsEnumFrom :: HsExp -> Bool
isHsEnumFromThen :: HsExp -> Bool
isHsEnumFromThenTo :: HsExp -> Bool
isHsEnumFromTo :: HsExp -> Bool
isHsError :: HsExp -> Bool
isHsExpTypeSig :: HsExp -> Bool
isHsFloatPrim :: HsLiteral -> Bool
isHsForeignDecl :: HsDecl -> Bool
isHsForeignExport :: HsDecl -> Bool
isHsFrac :: HsLiteral -> Bool
isHsFunBind :: HsDecl -> Bool
isHsIf :: HsExp -> Bool
isHsInfixApp :: HsExp -> Bool
isHsInfixDecl :: HsDecl -> Bool
isHsInstDecl :: HsDecl -> Bool
isHsInt :: HsLiteral -> Bool
isHsIntPrim :: HsLiteral -> Bool
isHsIrrPat :: HsExp -> Bool
isHsLambda :: HsExp -> Bool
isHsLeftSection :: HsExp -> Bool
isHsLet :: HsExp -> Bool
isHsList :: HsExp -> Bool
isHsListComp :: HsExp -> Bool
isHsLit :: HsExp -> Bool
isHsLitLit :: HsLiteral -> Bool
isHsLocatedExp :: HsExp -> Bool
isHsNegApp :: HsExp -> Bool
isHsPApp :: HsPat -> Bool
isHsPAsPat :: HsPat -> Bool
isHsPBangPat :: HsPat -> Bool
isHsPInfixApp :: HsPat -> Bool
isHsPIrrPat :: HsPat -> Bool
isHsPList :: HsPat -> Bool
isHsPLit :: HsPat -> Bool
isHsPNeg :: HsPat -> Bool
isHsPParen :: HsPat -> Bool
isHsPRec :: HsPat -> Bool
isHsPTuple :: HsPat -> Bool
isHsPTypeSig :: HsPat -> Bool
isHsPUnboxedTuple :: HsPat -> Bool
isHsPVar :: HsPat -> Bool
isHsPWildCard :: HsPat -> Bool
isHsParen :: HsExp -> Bool
isHsPatBind :: HsDecl -> Bool
isHsPragmaProps :: HsDecl -> Bool
isHsPragmaRules :: HsDecl -> Bool
isHsPragmaSpecialize :: HsDecl -> Bool
isHsRecConstr :: HsExp -> Bool
isHsRecDecl :: HsConDecl -> Bool
isHsRecUpdate :: HsExp -> Bool
isHsRightSection :: HsExp -> Bool
isHsSpaceDecl :: HsDecl -> Bool
isHsString :: HsLiteral -> Bool
isHsStringPrim :: HsLiteral -> Bool
isHsTuple :: HsExp -> Bool
isHsTyApp :: HsType -> Bool
isHsTyAssoc :: HsType -> Bool
isHsTyCon :: HsType -> Bool
isHsTyEq :: HsType -> Bool
isHsTyExists :: HsType -> Bool
isHsTyExpKind :: HsType -> Bool
isHsTyForall :: HsType -> Bool
isHsTyFun :: HsType -> Bool
isHsTyStrictType :: HsType -> Bool
isHsTyTuple :: HsType -> Bool
isHsTyUnboxedTuple :: HsType -> Bool
isHsTyVar :: HsType -> Bool
isHsTypeDecl :: HsDecl -> Bool
isHsTypeFamilyDecl :: HsDecl -> Bool
isHsTypeSig :: HsDecl -> Bool
isHsUnboxedTuple :: HsExp -> Bool
isHsVar :: HsExp -> Bool
isHsWildCard :: HsExp -> Bool
TYPE CONSTRUCTORS
data DeclType
RecFlag NonRecursive
= DeclTypeData :: DeclType |
DeclTypeNewtype :: DeclType |
DeclTypeKind :: DeclType
FamilyInstance: none
data HsAlt
RecFlag NonRecursive
= HsAlt :: SrcLoc -> HsPat -> HsRhs -> [HsDecl] -> HsAlt
Stricts: _ _ _ _
FamilyInstance: none
data HsAssoc
RecFlag NonRecursive
= HsAssocNone :: HsAssoc |
HsAssocLeft :: HsAssoc |
HsAssocRight :: HsAssoc
FamilyInstance: none
data HsAsst
RecFlag NonRecursive
= HsAsst :: HsName -> [HsName] -> HsAsst Stricts: _ _ |
HsAsstEq :: HsType -> HsType -> HsAsst Stricts: _ _
FamilyInstance: none
data HsBangType
RecFlag NonRecursive
= HsBangedTy :: HsType -> HsBangType
Stricts: _
Fields: hsBangType |
HsUnBangedTy :: HsType -> HsBangType Stricts: _ Fields: hsBangType
FamilyInstance: none
data HsClassHead
RecFlag NonRecursive
= HsClassHead :: HsContext -> HsName -> [HsType] -> HsClassHead
Stricts: _ _ _
Fields: hsClassHeadContext hsClassHead hsClassHeadArgs
FamilyInstance: none
data HsConDecl
RecFlag NonRecursive
= HsConDecl :: SrcLoc -> [HsTyVarBind] -> HsName -> [HsBangType]
-> HsConDecl
Stricts: _ _ _ _
Fields: hsConDeclSrcLoc hsConDeclExists hsConDeclName hsConDeclConArg |
HsRecDecl :: SrcLoc -> [HsTyVarBind] -> HsName
-> [([HsName], HsBangType)] -> HsConDecl
Stricts: _ _ _ _
Fields: hsConDeclSrcLoc hsConDeclExists hsConDeclName hsConDeclRecArg
FamilyInstance: none
type HsContext
= [HsAsst]
FamilyInstance: none
data HsDecl
RecFlag NonRecursive
= HsTypeFamilyDecl :: SrcLoc -> Bool -> HsName -> [HsType]
-> (Maybe HsKind) -> HsDecl
HasWrapper
Stricts: _ ! _ _ _
Fields: hsDeclSrcLoc hsDeclData hsDeclName hsDeclTArgs hsDeclHasKind |
HsTypeDecl :: SrcLoc -> HsName -> [HsType] -> HsType -> HsDecl
Stricts: _ _ _ _
Fields: hsDeclSrcLoc hsDeclName hsDeclTArgs hsDeclType |
HsDataDecl :: DeclType -> SrcLoc -> HsContext -> HsName -> [Name]
-> [HsConDecl] -> (Maybe HsKind) -> (Maybe String) -> [HsName]
-> HsDecl
HasWrapper
Stricts: ! _ _ _ _ _ _ _ _
Fields: hsDeclDeclType hsDeclSrcLoc hsDeclContext hsDeclName hsDeclArgs hsDeclCons hsDeclHasKind hsDeclCTYPE hsDeclDerives |
HsInfixDecl :: SrcLoc -> HsAssoc -> Int -> [HsName] -> HsDecl
HasWrapper
Stricts: _ _ ! _
Fields: hsDeclSrcLoc hsDeclAssoc hsDeclInt hsDeclNames |
HsClassDecl :: SrcLoc -> HsClassHead -> [HsDecl] -> HsDecl
Stricts: _ _ _
Fields: hsDeclSrcLoc hsDeclClassHead hsDeclDecls |
HsClassAliasDecl :: SrcLoc -> HsName -> [HsType] -> HsContext
-> HsContext -> [HsDecl] -> HsDecl
Stricts: _ _ _ _ _ _
Fields: hsDeclSrcLoc hsDeclName hsDeclTypeArgs hsDeclContext hsDeclClasses hsDeclDecls |
HsInstDecl :: SrcLoc -> HsClassHead -> [HsDecl] -> HsDecl
Stricts: _ _ _
Fields: hsDeclSrcLoc hsDeclClassHead hsDeclDecls |
HsDefaultDecl :: SrcLoc -> HsType -> HsDecl Stricts: _ _ |
HsTypeSig :: SrcLoc -> [HsName] -> HsQualType -> HsDecl
Stricts: _ _ _ |
HsFunBind :: [HsMatch] -> HsDecl Stricts: _ |
HsPatBind :: SrcLoc -> HsPat -> HsRhs -> [HsDecl] -> HsDecl
Stricts: _ _ _ _ |
HsActionDecl :: SrcLoc -> HsPat -> HsExp -> HsDecl
Stricts: _ _ _
Fields: hsDeclSrcLoc hsDeclPat hsDeclExp |
HsSpaceDecl :: SrcLoc -> HsName -> HsExp -> (Maybe String) -> Int
-> HsQualType -> HsDecl
Stricts: _ _ _ _ _ _
Fields: hsDeclSrcLoc hsDeclName hsDeclExp hsDeclCName hsDeclCount hsDeclQualType |
HsForeignDecl :: SrcLoc -> FfiSpec -> HsName -> HsQualType
-> HsDecl
Stricts: _ _ _ _
Fields: hsDeclSrcLoc hsDeclForeign hsDeclName hsDeclQualType |
HsForeignExport :: SrcLoc -> FfiExport -> HsName -> HsQualType
-> HsDecl
Stricts: _ _ _ _
Fields: hsDeclSrcLoc hsDeclFFIExport hsDeclName hsDeclQualType |
HsPragmaProps :: SrcLoc -> String -> [HsName] -> HsDecl
Stricts: _ _ _ |
HsPragmaRules :: [HsRule] -> HsDecl Stricts: _ |
HsPragmaSpecialize :: (Module, Int) -> SrcLoc -> Bool -> HsName
-> HsType -> HsDecl
Stricts: _ _ _ _ _
Fields: hsDeclUniq hsDeclSrcLoc hsDeclBool hsDeclName hsDeclType |
HsDeclDeriving :: SrcLoc -> HsClassHead -> HsDecl
Stricts: _ _
Fields: hsDeclSrcLoc hsDeclClassHead
FamilyInstance: none
data HsErrorType
RecFlag NonRecursive
= HsErrorPatternFailure :: HsErrorType |
HsErrorSource :: HsErrorType |
HsErrorFieldSelect :: HsErrorType |
HsErrorUnderscore :: HsErrorType |
HsErrorUninitializedField :: HsErrorType |
HsErrorRecordUpdate :: HsErrorType
FamilyInstance: none
data HsExp
RecFlag NonRecursive
= HsVar :: HsName -> HsExp Stricts: _ Fields: hsExpName |
HsCon :: HsName -> HsExp Stricts: _ Fields: hsExpName |
HsLit :: HsLiteral -> HsExp Stricts: _ |
HsInfixApp :: HsExp -> HsExp -> HsExp -> HsExp Stricts: _ _ _ |
HsApp :: HsExp -> HsExp -> HsExp Stricts: _ _ |
HsNegApp :: HsExp -> HsExp Stricts: _ |
HsLambda :: SrcLoc -> [HsPat] -> HsExp -> HsExp Stricts: _ _ _ |
HsLet :: [HsDecl] -> HsExp -> HsExp Stricts: _ _ |
HsIf :: HsExp -> HsExp -> HsExp -> HsExp Stricts: _ _ _ |
HsCase :: HsExp -> [HsAlt] -> HsExp Stricts: _ _ |
HsDo :: [HsStmt] -> HsExp Stricts: _ Fields: hsExpStatements |
HsTuple :: [HsExp] -> HsExp Stricts: _ |
HsUnboxedTuple :: [HsExp] -> HsExp Stricts: _ |
HsList :: [HsExp] -> HsExp Stricts: _ |
HsParen :: HsExp -> HsExp Stricts: _ |
HsLeftSection :: HsExp -> HsExp -> HsExp Stricts: _ _ |
HsRightSection :: HsExp -> HsExp -> HsExp Stricts: _ _ |
HsRecConstr :: HsName -> [HsFieldUpdate] -> HsExp Stricts: _ _ |
HsRecUpdate :: HsExp -> [HsFieldUpdate] -> HsExp Stricts: _ _ |
HsEnumFrom :: HsExp -> HsExp Stricts: _ |
HsEnumFromTo :: HsExp -> HsExp -> HsExp Stricts: _ _ |
HsEnumFromThen :: HsExp -> HsExp -> HsExp Stricts: _ _ |
HsEnumFromThenTo :: HsExp -> HsExp -> HsExp -> HsExp
Stricts: _ _ _ |
HsListComp :: HsExp -> [HsStmt] -> HsExp Stricts: _ _ |
HsExpTypeSig :: SrcLoc -> HsExp -> HsQualType -> HsExp
Stricts: _ _ _ |
HsAsPat :: HsName -> HsExp -> HsExp
Stricts: _ _
Fields: hsExpName hsExpExp |
HsError :: SrcLoc -> HsErrorType -> String -> HsExp
Stricts: _ _ _
Fields: hsExpSrcLoc hsExpErrorType hsExpString |
HsWildCard :: SrcLoc -> HsExp Stricts: _ |
HsIrrPat :: LHsExp -> HsExp Stricts: _ Fields: hsExpLExp |
HsBangPat :: LHsExp -> HsExp Stricts: _ Fields: hsExpLExp |
HsLocatedExp :: LHsExp -> HsExp Stricts: _
FamilyInstance: none
data HsExportSpec
RecFlag NonRecursive
= HsEVar :: HsName -> HsExportSpec Stricts: _ |
HsEAbs :: HsName -> HsExportSpec Stricts: _ |
HsEThingAll :: HsName -> HsExportSpec Stricts: _ |
HsEThingWith :: HsName -> [HsName] -> HsExportSpec Stricts: _ _ |
HsEModuleContents :: Module -> HsExportSpec Stricts: _ |
HsEQualified :: NameType -> HsExportSpec -> HsExportSpec
Stricts: _ _
FamilyInstance: none
data HsFieldUpdate
RecFlag NonRecursive
= HsFieldUpdate :: HsName -> HsExp -> HsFieldUpdate Stricts: _ _
FamilyInstance: none
data HsGuardedRhs
RecFlag NonRecursive
= HsGuardedRhs :: SrcLoc -> HsExp -> HsExp -> HsGuardedRhs
Stricts: _ _ _
FamilyInstance: none
data HsImportDecl
RecFlag NonRecursive
= HsImportDecl :: SrcLoc -> Module -> Bool -> (Maybe Module)
-> (Maybe (Bool, [HsExportSpec])) -> HsImportDecl
HasWrapper
Stricts: _ _ ! _ _
Fields: hsImportDeclSrcLoc hsImportDeclModule hsImportDeclQualified hsImportDeclAs hsImportDeclSpec
FamilyInstance: none
data HsKind
RecFlag NonRecursive
= HsKind :: HsName -> HsKind Stricts: _ |
HsKindFn :: HsKind -> HsKind -> HsKind Stricts: _ _
FamilyInstance: none
data HsLiteral
RecFlag NonRecursive
= HsInt :: Integer -> HsLiteral HasWrapper Stricts: ! |
HsChar :: Char -> HsLiteral HasWrapper Stricts: ! |
HsString :: String -> HsLiteral Stricts: _ |
HsFrac :: Rational -> HsLiteral Stricts: _ |
HsCharPrim :: Char -> HsLiteral Stricts: _ |
HsStringPrim :: String -> HsLiteral Stricts: _ |
HsIntPrim :: Integer -> HsLiteral Stricts: _ |
HsFloatPrim :: Rational -> HsLiteral Stricts: _ |
HsDoublePrim :: Rational -> HsLiteral Stricts: _ |
HsLitLit :: String -> HsLiteral Stricts: _
FamilyInstance: none
data HsMatch
RecFlag NonRecursive
= HsMatch :: SrcLoc -> HsName -> [HsPat] -> HsRhs -> [HsDecl]
-> HsMatch
Stricts: _ _ _ _ _
Fields: hsMatchSrcLoc hsMatchName hsMatchPats hsMatchRhs hsMatchDecls
FamilyInstance: none
data HsModule
RecFlag NonRecursive
= HsModule :: Module -> SrcLoc -> (Maybe [HsExportSpec])
-> [HsImportDecl] -> [HsDecl] -> [String] -> Opt -> HsModule
Stricts: _ _ _ _ _ _ _
Fields: hsModuleName hsModuleSrcLoc hsModuleExports hsModuleImports hsModuleDecls hsModuleOptions hsModuleOpt
FamilyInstance: none
type HsName
= Name
FamilyInstance: none
data HsPat
RecFlag NonRecursive
= HsPVar :: HsName -> HsPat Stricts: _ Fields: hsPatName |
HsPLit :: HsLiteral -> HsPat Stricts: _ Fields: hsPatLit |
HsPNeg :: HsPat -> HsPat Stricts: _ |
HsPInfixApp :: HsPat -> HsName -> HsPat -> HsPat Stricts: _ _ _ |
HsPApp :: HsName -> [HsPat] -> HsPat
Stricts: _ _
Fields: hsPatName hsPatPats |
HsPTuple :: [HsPat] -> HsPat Stricts: _ |
HsPUnboxedTuple :: [HsPat] -> HsPat Stricts: _ |
HsPList :: [HsPat] -> HsPat Stricts: _ |
HsPParen :: HsPat -> HsPat Stricts: _ |
HsPRec :: HsName -> [HsPatField] -> HsPat Stricts: _ _ |
HsPAsPat :: HsName -> HsPat -> HsPat
Stricts: _ _
Fields: hsPatName hsPatPat |
HsPWildCard :: HsPat |
HsPIrrPat :: LHsPat -> HsPat Stricts: _ Fields: hsPatLPat |
HsPBangPat :: LHsPat -> HsPat Stricts: _ Fields: hsPatLPat |
HsPTypeSig :: SrcLoc -> HsPat -> HsQualType -> HsPat Stricts: _ _ _
FamilyInstance: none
data HsPatField
RecFlag NonRecursive
= HsPFieldPat :: HsName -> HsPat -> HsPatField Stricts: _ _
FamilyInstance: none
data HsPragmaExp
RecFlag NonRecursive
= HsPragmaExp :: String -> [HsExp] -> HsPragmaExp Stricts: _ _
FamilyInstance: none
data HsQualType
RecFlag NonRecursive
= HsQualType :: HsContext -> HsType -> HsQualType
Stricts: _ _
Fields: hsQualTypeContext hsQualTypeType
FamilyInstance: none
data HsRhs
RecFlag NonRecursive
= HsUnGuardedRhs :: HsExp -> HsRhs Stricts: _ |
HsGuardedRhss :: [HsGuardedRhs] -> HsRhs Stricts: _
FamilyInstance: none
data HsRule
RecFlag NonRecursive
= HsRule :: (Module, Int) -> SrcLoc -> Bool -> String
-> [(HsName, Maybe HsType)] -> HsExp -> HsExp -> HsRule
Stricts: _ _ _ _ _ _ _
Fields: hsRuleUniq hsRuleSrcLoc hsRuleIsMeta hsRuleString hsRuleFreeVars hsRuleLeftExpr hsRuleRightExpr
FamilyInstance: none
data HsStmt
RecFlag NonRecursive
= HsGenerator :: SrcLoc -> HsPat -> HsExp -> HsStmt
Stricts: _ _ _ |
HsQualifier :: HsExp -> HsStmt Stricts: _ |
HsLetStmt :: [HsDecl] -> HsStmt Stricts: _
FamilyInstance: none
data HsTyVarBind
RecFlag NonRecursive
= HsTyVarBind :: SrcLoc -> HsName -> (Maybe HsKind) -> HsTyVarBind
Stricts: _ _ _
Fields: hsTyVarBindSrcLoc hsTyVarBindName hsTyVarBindKind
FamilyInstance: none
data HsType
RecFlag NonRecursive
= HsTyFun :: HsType -> HsType -> HsType Stricts: _ _ |
HsTyTuple :: [HsType] -> HsType Stricts: _ |
HsTyUnboxedTuple :: [HsType] -> HsType Stricts: _ |
HsTyApp :: HsType -> HsType -> HsType Stricts: _ _ |
HsTyVar :: HsName -> HsType Stricts: _ Fields: hsTypeName |
HsTyCon :: HsName -> HsType Stricts: _ Fields: hsTypeName |
HsTyForall :: [HsTyVarBind] -> HsQualType -> HsType
Stricts: _ _
Fields: hsTypeVars hsTypeType |
HsTyExists :: [HsTyVarBind] -> HsQualType -> HsType
Stricts: _ _
Fields: hsTypeVars hsTypeType |
HsTyExpKind :: LHsType -> HsKind -> HsType
Stricts: _ _
Fields: hsTyLType hsTyKind |
HsTyStrictType :: Bool -> LHsType -> HsType
HasWrapper
Stricts: ! _
Fields: hsTyStrict hsTyLType |
HsTyAssoc :: HsType |
HsTyEq :: HsType -> HsType -> HsType Stricts: _ _
FamilyInstance: none
type LHsExp
= Located HsExp
FamilyInstance: none
type LHsPat
= Located HsPat
FamilyInstance: none
type LHsType
= Located HsType
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Typeable HsKind
-- Defined at src/FrontEnd/HsSyn.hs:441:17
instance [overlap ok] Typeable HsTyVarBind
-- Defined at src/FrontEnd/HsSyn.hs:309:17
instance [overlap ok] Typeable HsType
-- Defined at src/FrontEnd/HsSyn.hs:302:17
instance [overlap ok] Typeable HsQualType
-- Defined at src/FrontEnd/HsSyn.hs:274:21
instance [overlap ok] Typeable HsAsst
-- Defined at src/FrontEnd/HsSyn.hs:324:17
instance [overlap ok] Eq HsExportSpec
-- Defined at src/FrontEnd/HsSyn.hs:58:12
instance [overlap ok] Show HsExportSpec
-- Defined at src/FrontEnd/HsSyn.hs:58:15
instance [overlap ok] Eq HsImportDecl
-- Defined at src/FrontEnd/HsSyn.hs:70:12
instance [overlap ok] Show HsImportDecl
-- Defined at src/FrontEnd/HsSyn.hs:70:15
instance [overlap ok] Eq HsAssoc
-- Defined at src/FrontEnd/HsSyn.hs:73:12
instance [overlap ok] Show HsAssoc
-- Defined at src/FrontEnd/HsSyn.hs:73:15
instance [overlap ok] Eq DeclType
-- Defined at src/FrontEnd/HsSyn.hs:118:14
instance [overlap ok] Show DeclType
-- Defined at src/FrontEnd/HsSyn.hs:118:17
instance [overlap ok] Eq HsLiteral
-- Defined at src/FrontEnd/HsSyn.hs:340:12
instance [overlap ok] Ord HsLiteral
-- Defined at src/FrontEnd/HsSyn.hs:340:15
instance [overlap ok] Show HsLiteral
-- Defined at src/FrontEnd/HsSyn.hs:340:20
instance [overlap ok] Eq HsErrorType
-- Defined at src/FrontEnd/HsSyn.hs:358:11
instance [overlap ok] Show HsErrorType
-- Defined at src/FrontEnd/HsSyn.hs:358:14
instance [overlap ok] Data HsKind
-- Defined at src/FrontEnd/HsSyn.hs:441:12
instance [overlap ok] Eq HsKind
-- Defined at src/FrontEnd/HsSyn.hs:441:26
instance [overlap ok] Ord HsKind
-- Defined at src/FrontEnd/HsSyn.hs:441:29
instance [overlap ok] Show HsKind
-- Defined at src/FrontEnd/HsSyn.hs:441:33
instance [overlap ok] Data HsTyVarBind
-- Defined at src/FrontEnd/HsSyn.hs:309:12
instance [overlap ok] Eq HsTyVarBind
-- Defined at src/FrontEnd/HsSyn.hs:309:26
instance [overlap ok] Ord HsTyVarBind
-- Defined at src/FrontEnd/HsSyn.hs:309:29
instance [overlap ok] Show HsTyVarBind
-- Defined at src/FrontEnd/HsSyn.hs:309:33
instance [overlap ok] Data HsType
-- Defined at src/FrontEnd/HsSyn.hs:302:12
instance [overlap ok] Eq HsType
-- Defined at src/FrontEnd/HsSyn.hs:302:26
instance [overlap ok] Ord HsType
-- Defined at src/FrontEnd/HsSyn.hs:302:29
instance [overlap ok] Show HsType
-- Defined at src/FrontEnd/HsSyn.hs:302:33
instance [overlap ok] Data HsQualType
-- Defined at src/FrontEnd/HsSyn.hs:274:16
instance [overlap ok] Eq HsQualType
-- Defined at src/FrontEnd/HsSyn.hs:274:30
instance [overlap ok] Ord HsQualType
-- Defined at src/FrontEnd/HsSyn.hs:274:33
instance [overlap ok] Show HsQualType
-- Defined at src/FrontEnd/HsSyn.hs:274:37
instance [overlap ok] Data HsAsst
-- Defined at src/FrontEnd/HsSyn.hs:324:12
instance [overlap ok] Eq HsAsst
-- Defined at src/FrontEnd/HsSyn.hs:324:26
instance [overlap ok] Ord HsAsst
-- Defined at src/FrontEnd/HsSyn.hs:324:29
instance [overlap ok] Show HsAsst
-- Defined at src/FrontEnd/HsSyn.hs:324:34
instance [overlap ok] Eq HsClassHead
-- Defined at src/FrontEnd/HsSyn.hs:401:11
instance [overlap ok] Show HsClassHead
-- Defined at src/FrontEnd/HsSyn.hs:401:14
instance [overlap ok] Eq HsPat
-- Defined at src/FrontEnd/HsSyn.hs:422:11
instance [overlap ok] Ord HsPat
-- Defined at src/FrontEnd/HsSyn.hs:422:14
instance [overlap ok] Show HsPat
-- Defined at src/FrontEnd/HsSyn.hs:422:18
instance [overlap ok] Eq HsPatField
-- Defined at src/FrontEnd/HsSyn.hs:426:14
instance [overlap ok] Ord HsPatField
-- Defined at src/FrontEnd/HsSyn.hs:426:17
instance [overlap ok] Show HsPatField
-- Defined at src/FrontEnd/HsSyn.hs:426:21
instance [overlap ok] Eq HsBangType
-- Defined at src/FrontEnd/HsSyn.hs:261:12
instance [overlap ok] Show HsBangType
-- Defined at src/FrontEnd/HsSyn.hs:261:15
instance [overlap ok] Eq HsConDecl
-- Defined at src/FrontEnd/HsSyn.hs:252:12
instance [overlap ok] Show HsConDecl
-- Defined at src/FrontEnd/HsSyn.hs:252:15
instance [overlap ok] Eq HsDecl
-- Defined at src/FrontEnd/HsSyn.hs:211:12
instance [overlap ok] Show HsDecl
-- Defined at src/FrontEnd/HsSyn.hs:211:15
instance [overlap ok] Eq HsExp
-- Defined at src/FrontEnd/HsSyn.hs:394:11
instance [overlap ok] Show HsExp
-- Defined at src/FrontEnd/HsSyn.hs:394:14
instance [overlap ok] Eq HsAlt
-- Defined at src/FrontEnd/HsSyn.hs:438:12
instance [overlap ok] Show HsAlt
-- Defined at src/FrontEnd/HsSyn.hs:438:15
instance [overlap ok] Eq HsRhs
-- Defined at src/FrontEnd/HsSyn.hs:266:12
instance [overlap ok] Show HsRhs
-- Defined at src/FrontEnd/HsSyn.hs:266:15
instance [overlap ok] Eq HsGuardedRhs
-- Defined at src/FrontEnd/HsSyn.hs:269:12
instance [overlap ok] Show HsGuardedRhs
-- Defined at src/FrontEnd/HsSyn.hs:269:15
instance [overlap ok] Eq HsFieldUpdate
-- Defined at src/FrontEnd/HsSyn.hs:435:12
instance [overlap ok] Show HsFieldUpdate
-- Defined at src/FrontEnd/HsSyn.hs:435:15
instance [overlap ok] Eq HsStmt
-- Defined at src/FrontEnd/HsSyn.hs:432:11
instance [overlap ok] Show HsStmt
-- Defined at src/FrontEnd/HsSyn.hs:432:14
instance [overlap ok] Eq HsMatch
-- Defined at src/FrontEnd/HsSyn.hs:237:12
instance [overlap ok] Show HsMatch
-- Defined at src/FrontEnd/HsSyn.hs:237:15
instance [overlap ok] Eq HsRule
-- Defined at src/FrontEnd/HsSyn.hs:223:12
instance [overlap ok] Show HsRule
-- Defined at src/FrontEnd/HsSyn.hs:223:15
instance [overlap ok] Binary HsKind
-- Defined at src/FrontEnd/HsSyn.hs:855:10
instance [overlap ok] Binary HsAsst
-- Defined at src/FrontEnd/HsSyn.hs:686:10
instance [overlap ok] Binary HsTyVarBind
-- Defined at src/FrontEnd/HsSyn.hs:668:10
instance [overlap ok] Binary HsType
-- Defined at src/FrontEnd/HsSyn.hs:553:10
instance [overlap ok] Binary HsQualType
-- Defined at src/FrontEnd/HsSyn.hs:544:10
instance [overlap ok] Binary HsAssoc
-- Defined at src/FrontEnd/HsSyn.hs:466:10
instance [overlap ok] HasLocation HsTyVarBind
-- Defined at src/FrontEnd/HsSyn.hs:318:10
instance [overlap ok] HasLocation HsMatch
-- Defined at src/FrontEnd/HsSyn.hs:227:10
instance [overlap ok] HasLocation HsRule
-- Defined at src/FrontEnd/HsSyn.hs:97:10
instance [overlap ok] HasLocation HsDecl
-- Defined at src/FrontEnd/HsSyn.hs:76:10
instance [overlap ok] HasLocation HsImportDecl
-- Defined at src/FrontEnd/HsSyn.hs:60:10
instance [overlap ok] HasLocation HsModule
-- Defined at src/FrontEnd/HsSyn.hs:35:10
instance [overlap ok] Binary Module
-- Defined at src/FrontEnd/HsSyn.hs:29:10
instance [overlap ok] HasLocation HsExp
-- Defined at src/FrontEnd/HsSyn.hs:17:10
instance [overlap ok] HasLocation HsAlt
-- Defined at src/FrontEnd/HsSyn.hs:14:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.SrcLoc, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (RawFiles, False), (StringTable.Atom, False),
(Support.IniParse, False), (Support.TempDir, False),
(System, False), (Time, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.SetLike, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 94 of 182] Compiling FrontEnd.Infix ( src/FrontEnd/Infix.hs, src/FrontEnd/Infix.o )
TYPE SIGNATURES
buildFixityMap :: [HsDecl] -> FixityMap
defaultFixity :: (Int, HsAssoc)
infixHsModule :: FixityMap -> HsModule -> HsModule
infixStatement :: FixityMap -> HsStmt -> HsStmt
lookupSM :: Map.Map Name (Int, HsAssoc) -> HsExp -> (Int, HsAssoc)
procPat :: SymbolMap -> HsPat -> HsPat
processAlt :: SymbolMap -> HsAlt -> HsAlt
processDecl :: SymbolMap -> HsDecl -> HsDecl
processExp :: SymbolMap -> HsExp -> (HsExp, FixityInfo)
processFUpdt :: SymbolMap -> HsFieldUpdate -> HsFieldUpdate
processGAlt :: SymbolMap -> HsGuardedRhs -> HsGuardedRhs
processGAlts :: SymbolMap -> HsRhs -> HsRhs
processGRhs :: SymbolMap -> HsGuardedRhs -> HsGuardedRhs
processMatch :: SymbolMap -> HsMatch -> HsMatch
processPat :: SymbolMap -> HsPat -> (HsPat, FixityInfo)
processRhs :: SymbolMap -> HsRhs -> HsRhs
processStmt :: SymbolMap -> HsStmt -> HsStmt
restrictFixityMap :: (Name -> Bool) -> FixityMap -> FixityMap
syn_err_bad_oparg :: forall a a1.
(Show a1, Show a) =>
a -> a1 -> [Char]
syn_err_msg :: String
syn_err_precedence :: forall a a1.
(Show a1, Show a) =>
a -> a1 -> [Char]
terminalFixity :: (Int, HsAssoc)
TYPE CONSTRUCTORS
type FixityInfo
= (Int, HsAssoc)
FamilyInstance: none
newtype FixityMap
RecFlag NonRecursive
= FixityMap :: SymbolMap -> FixityMap Stricts: _
FamilyInstance: none
type SymbolMap
= Map.Map Name FixityInfo
FamilyInstance: none
COERCION AXIOMS
axiom FrontEnd.Infix.NTCo:FixityMap [] :: FixityMap ~# SymbolMap
INSTANCES
instance [overlap ok] Monoid FixityMap
-- Defined at src/FrontEnd/Infix.hs:36:14
instance [overlap ok] HasSize FixityMap
-- Defined at src/FrontEnd/Infix.hs:36:21
instance [overlap ok] Binary FixityMap
-- Defined at src/FrontEnd/Infix.hs:38:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.SrcLoc, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (RawFiles, False),
(StringTable.Atom, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(System, False), (Time, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.SetLike, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 95 of 182] Compiling FrontEnd.Syn.Traverse ( src/FrontEnd/Syn/Traverse.hs, src/FrontEnd/Syn/Traverse.o )
TYPE SIGNATURES
doQual :: forall (m :: * -> *) a b.
Monad m =>
(a -> HsQualType -> b)
-> (HsType -> m HsType) -> a -> HsQualType -> m b
getNamesFromHsPat :: HsPat -> [HsName]
traverseHsDeclHsExp :: forall (m :: * -> *).
MonadSetSrcLoc m =>
(HsExp -> m HsExp) -> HsDecl -> m HsDecl
traverseHsExp :: forall (m :: * -> *).
MonadSetSrcLoc m =>
(HsExp -> m HsExp) -> HsExp -> m HsExp
traverseHsExp_ :: forall (m :: * -> *).
MonadSetSrcLoc m =>
(HsExp -> m ()) -> HsExp -> m ()
traverseHsPat :: forall (m :: * -> *).
MonadSetSrcLoc m =>
(HsPat -> m HsPat) -> HsPat -> m HsPat
traverseHsPat_ :: forall (m :: * -> *) b.
MonadSetSrcLoc m =>
(HsPat -> m b) -> HsPat -> m ()
traverseHsRhsHsExp :: forall (m :: * -> *).
MonadSetSrcLoc m =>
(HsExp -> m HsExp) -> HsRhs -> m HsRhs
traverseHsStmtHsExp :: forall (m :: * -> *).
MonadSetSrcLoc m =>
(HsExp -> m HsExp) -> HsStmt -> m HsStmt
traverseHsType :: forall (m :: * -> *).
Monad m =>
(HsType -> m HsType) -> HsType -> m HsType
traverseHsType_ :: forall (m :: * -> *) b.
Monad m =>
(HsType -> m b) -> HsType -> m ()
traverse_ :: forall (m :: * -> *) a b.
Monad m =>
(a -> m b) -> a -> m a
TYPE CONSTRUCTORS
COERCION AXIOMS
INSTANCES
instance [overlap ok] FreeVars HsType (Set.Set Name)
-- Defined at src/FrontEnd/Syn/Traverse.hs:17:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.SrcLoc, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (RawFiles, False),
(StringTable.Atom, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.TempDir, False),
(System, False), (Time, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.SetLike, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 96 of 182] Compiling FrontEnd.Desugar ( src/FrontEnd/Desugar.hs, src/FrontEnd/Desugar.o )
TYPE SIGNATURES
desugarAlt :: HsAlt -> PatSM HsAlt
desugarDecl :: HsDecl -> PatSM [HsDecl]
desugarExp :: HsExp -> PatSM HsExp
desugarHsModule :: HsModule -> HsModule
desugarHsStmt :: forall (m :: * -> *).
Monad m =>
HsStmt -> m HsStmt
desugarMatch :: HsMatch -> PatSM HsMatch
desugarRhs :: HsRhs -> PatSM HsRhs
desugarStmt :: HsStmt -> PatSM HsStmt
doToExp :: forall (m :: * -> *).
Monad m =>
m HsName -> HsName -> HsName -> HsName -> [HsStmt] -> m HsExp
genBindsForPat :: HsPat -> SrcLoc -> HsName -> [HsDecl]
getPatSelFuns :: SrcLoc -> HsPat -> [(HsName, HsExp)]
getUnique :: StateT
PatState transformers-0.3.0.0:Data.Functor.Identity.Identity Int
hsApp :: HsExp -> [HsExp] -> HsExp
hsIf :: HsExp -> HsExp -> HsExp -> HsExp
isFailablePat :: HsPat -> Bool
isLazyPat :: HsPat -> Bool
isSimplePat :: HsPat -> Bool
isStrictPat :: HsPat -> Bool
listCompToExp :: forall (m :: * -> *).
Monad m =>
m HsName -> HsExp -> [HsStmt] -> m HsExp
newPatVarName :: HsName
openPat :: HsPat -> HsPat
replaceVarNamesInPat :: HsName -> HsPat -> HsPat
TYPE CONSTRUCTORS
type PatSM
= State PatState
FamilyInstance: none
type PatState
= Int
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] MonadSetSrcLoc PatSM
-- Defined at src/FrontEnd/Desugar.hs:28:10
instance [overlap ok] MonadSrcLoc PatSM
-- Defined at src/FrontEnd/Desugar.hs:27:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Syn.Traverse, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (RawFiles, False), (StringTable.Atom, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.TempDir, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.SetLike, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 97 of 182] Compiling FrontEnd.TypeSynonyms ( src/FrontEnd/TypeSynonyms.hs, src/FrontEnd/TypeSynonyms.o )
TYPE SIGNATURES
declsToTypeSynonyms :: forall (m :: * -> *).
MonadWarn m =>
TypeSynonyms -> [HsDecl] -> m TypeSynonyms
evalTypeSyms :: forall (m :: * -> *).
MonadWarn m =>
TypeSynonyms -> HsType -> m HsType
quantifyHsType :: [HsName] -> HsQualType -> HsType
removeSynonymsFromType :: forall (m :: * -> *).
MonadWarn m =>
TypeSynonyms -> HsType -> m HsType
restrictTypeSynonyms :: (Name -> Bool)
-> TypeSynonyms -> TypeSynonyms
showSynonym :: forall d (m :: * -> *).
(DocLike d, Monad m) =>
(HsType -> d) -> Name -> TypeSynonyms -> m d
showSynonyms :: forall d.
DocLike d =>
(HsType -> d) -> TypeSynonyms -> d
tsInsert :: Name
-> ([HsName], HsType, SrcLoc) -> TypeSynonyms -> TypeSynonyms
TYPE CONSTRUCTORS
newtype TypeSynonyms
RecFlag NonRecursive
= TypeSynonyms :: (Map.Map Name ([HsName], HsType, SrcLoc))
-> TypeSynonyms
Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom FrontEnd.TypeSynonyms.NTCo:TypeSynonyms []
:: TypeSynonyms ~# Map.Map Name ([HsName], HsType, SrcLoc)
INSTANCES
instance [overlap ok] Monoid TypeSynonyms
-- Defined at src/FrontEnd/TypeSynonyms.hs:30:14
instance [overlap ok] HasSize TypeSynonyms
-- Defined at src/FrontEnd/TypeSynonyms.hs:30:21
instance [overlap ok] Binary TypeSynonyms
-- Defined at src/FrontEnd/TypeSynonyms.hs:32:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Syn.Traverse, False),
(FrontEnd.Warning, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (RawFiles, False),
(StringTable.Atom, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.SetLike, False),
(Util.UniqueMonad, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 98 of 182] Compiling FrontEnd.TypeSyns ( src/FrontEnd/TypeSyns.hs, src/FrontEnd/TypeSyns.o )
TYPE SIGNATURES
clobberHsName :: HsName -> SubTable -> ScopeSM SubTable
clobberHsNames :: [HsName] -> SubTable -> ScopeSM SubTable
clobberHsNamesAndUpdateIdentTable :: [(HsName, SrcLoc)]
-> SubTable -> ScopeSM SubTable
currentModule :: ScopeState -> Module
errors :: ScopeState -> [Warning]
expandTypeSigs :: [HsDecl] -> [HsDecl]
expandTypeSyns :: forall (m :: * -> *).
MonadWarn m =>
TypeSynonyms -> HsModule -> m HsModule
expandTypeSynsStmt :: forall (m :: * -> *).
MonadWarn m =>
TypeSynonyms -> Module -> HsStmt -> m HsStmt
getHsNamesAndASrcLocsFromHsDecl :: HsDecl -> [(HsName, SrcLoc)]
getHsNamesAndASrcLocsFromHsMatch :: HsMatch -> [(HsName, SrcLoc)]
getHsNamesAndASrcLocsFromHsMatches :: [HsMatch]
-> [(HsName, SrcLoc)]
getHsNamesAndASrcLocsFromHsStmt :: HsStmt -> [(HsName, SrcLoc)]
getHsNamesFromHsQualType :: HsQualType -> [HsName]
getHsNamesFromHsType :: HsType -> [HsName]
mapRename :: forall a.
(a -> SubTable -> ScopeSM a) -> [a] -> SubTable -> ScopeSM [a]
renameDecls :: HsModule -> ScopeSM HsModule
renameHsAlt :: HsAlt -> SubTable -> ScopeSM HsAlt
renameHsAlts :: [HsAlt] -> SubTable -> ScopeSM [HsAlt]
renameHsAsst :: HsAsst -> SubTable -> ScopeSM HsAsst
renameHsBangType :: HsBangType -> SubTable -> ScopeSM HsBangType
renameHsBangTypes :: [HsBangType]
-> SubTable -> ScopeSM [HsBangType]
renameHsClassHead :: HsClassHead -> ScopeSM HsClassHead
renameHsConDecl :: HsConDecl -> SubTable -> ScopeSM HsConDecl
renameHsConDecls :: [HsConDecl] -> SubTable -> ScopeSM [HsConDecl]
renameHsContext :: HsContext -> SubTable -> ScopeSM HsContext
renameHsDecl :: HsDecl -> SubTable -> ScopeSM HsDecl
renameHsDecls :: [HsDecl] -> SubTable -> ScopeSM [HsDecl]
renameHsExp :: HsExp -> SubTable -> ScopeSM HsExp
renameHsFieldUpdate :: HsFieldUpdate
-> SubTable -> ScopeSM HsFieldUpdate
renameHsFieldUpdates :: [HsFieldUpdate]
-> SubTable -> ScopeSM [HsFieldUpdate]
renameHsGuardedRhs :: HsGuardedRhs
-> SubTable -> ScopeSM HsGuardedRhs
renameHsGuardedRhsList :: [HsGuardedRhs]
-> SubTable -> ScopeSM [HsGuardedRhs]
renameHsMatch :: HsMatch -> SubTable -> ScopeSM HsMatch
renameHsMatches :: [HsMatch] -> SubTable -> ScopeSM [HsMatch]
renameHsName :: HsName -> SubTable -> ScopeSM HsName
renameHsNames :: [HsName] -> SubTable -> ScopeSM [HsName]
renameHsPat :: HsPat -> SubTable -> ScopeSM HsPat
renameHsPats :: [HsPat] -> SubTable -> ScopeSM [HsPat]
renameHsQualType :: HsQualType -> SubTable -> ScopeSM HsQualType
renameHsRhs :: HsRhs -> SubTable -> ScopeSM HsRhs
renameHsRule :: HsRule
-> SubTable
-> StateT
ScopeState
transformers-0.3.0.0:Data.Functor.Identity.Identity
HsRule
renameHsStmt :: HsStmt -> SubTable -> ScopeSM HsStmt
renameHsStmts :: [HsStmt]
-> SubTable -> ScopeSM ([HsStmt], SubTable)
renameHsType :: forall t.
HsType
-> t
-> StateT
ScopeState
transformers-0.3.0.0:Data.Functor.Identity.Identity
HsType
renameHsType' :: forall t.
Bool
-> HsType
-> t
-> StateT
ScopeState
transformers-0.3.0.0:Data.Functor.Identity.Identity
HsType
renameTypeHsName :: forall t (m :: * -> *) a.
Monad m =>
a -> t -> m a
srcLoc :: ScopeState -> SrcLoc
synonyms :: ScopeState -> TypeSynonyms
updateSubTableWithHsDecls :: SubTable
-> [HsDecl] -> ScopeSM SubTable
updateSubTableWithHsPats :: SubTable
-> [HsPat] -> SrcLoc -> ScopeSM SubTable
updateSubTableWithHsQualType :: SubTable
-> HsQualType -> ScopeSM SubTable
updateSubTableWithHsStmt :: SubTable -> HsStmt -> ScopeSM SubTable
TYPE CONSTRUCTORS
type ScopeSM
= State ScopeState
FamilyInstance: none
data ScopeState
RecFlag NonRecursive
= ScopeState :: Module -> [Warning] -> TypeSynonyms -> SrcLoc
-> ScopeState
HasWrapper
Stricts: _ _ _ !
Fields: currentModule errors synonyms srcLoc
FamilyInstance: none
type SubTable
= ()
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] MonadSetSrcLoc ScopeSM
-- Defined at src/FrontEnd/TypeSyns.hs:34:10
instance [overlap ok] MonadSrcLoc ScopeSM
-- Defined at src/FrontEnd/TypeSyns.hs:32:10
instance [overlap ok] MonadWarn ScopeSM
-- Defined at src/FrontEnd/TypeSyns.hs:29:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Syn.Traverse, False),
(FrontEnd.TypeSynonyms, False), (FrontEnd.Warning, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (RawFiles, False), (StringTable.Atom, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(System, False), (Time, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.Graph, False),
(Util.HasSize, False), (Util.SetLike, False),
(Util.UniqueMonad, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[ 99 of 182] Compiling DerivingDrift.DataP ( src/DerivingDrift/DataP.hs, src/DerivingDrift/DataP.o )
TYPE SIGNATURES
DerivingDrift.DataP.$con2tag_Statement :: Statement
-> ghc-prim:GHC.Prim.Int#
body :: Data -> [Body]
constraints :: Data -> [(Class, Var)]
constructor :: Body -> Constructor
derives :: Data -> [Class]
labels :: Body -> [Name]
name :: Data -> Name
statement :: Data -> Statement
types :: Body -> [HsBangType]
vars :: Data -> [Var]
TYPE CONSTRUCTORS
data Body
RecFlag NonRecursive
= Body :: Constructor -> [Name] -> [HsBangType] -> Body
Stricts: _ _ _
Fields: constructor labels types
FamilyInstance: none
type Class
= String
FamilyInstance: none
type Constructor
= String
FamilyInstance: none
data Data
RecFlag NonRecursive
= D :: Name -> [(Class, Var)] -> [Var] -> [Body] -> [Class]
-> Statement -> Data
Stricts: _ _ _ _ _ _
Fields: name constraints vars body derives statement
FamilyInstance: none
data Statement
RecFlag NonRecursive
= DataStmt :: Statement | NewTypeStmt :: Statement
FamilyInstance: none
type Var
= String
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Eq Statement
-- Defined at src/DerivingDrift/DataP.hs:7:15
instance [overlap ok] Show Statement
-- Defined at src/DerivingDrift/DataP.hs:7:18
instance [overlap ok] Eq Body
-- Defined at src/DerivingDrift/DataP.hs:22:17
instance [overlap ok] Show Body
-- Defined at src/DerivingDrift/DataP.hs:22:20
instance [overlap ok] Eq Data
-- Defined at src/DerivingDrift/DataP.hs:16:17
instance [overlap ok] Show Data
-- Defined at src/DerivingDrift/DataP.hs:16:20
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.SrcLoc, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (RawFiles, False),
(StringTable.Atom, False), (Support.IniParse, False),
(Support.TempDir, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.SetLike, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[100 of 182] Compiling DerivingDrift.RuleUtils ( src/DerivingDrift/RuleUtils.hs, src/DerivingDrift/RuleUtils.o )
TYPE SIGNATURES
blank :: Doc
block :: [Doc] -> Doc
blockList :: [Doc] -> Doc
bracketList :: [Doc] -> Doc
commentBlock :: Doc -> Doc
commentLine :: Doc -> Doc
f :: Doc
hasRecord :: Data -> Bool
instanceSkeleton :: Class -> [(IFunction, Doc)] -> Data -> Doc
lArrow :: Doc
opt :: forall a. [a] -> ([a] -> Doc) -> Doc
opt1 :: forall a. [a] -> ([a] -> Doc) -> (a -> Doc) -> Doc
parenList :: [Doc] -> Doc
pattern :: forall a. Constructor -> [a] -> Doc
pattern' :: forall a. Constructor -> [a] -> Doc
pattern_ :: forall a. Constructor -> [a] -> Doc
rArrow :: Doc
semicolon :: Doc
sepWith :: forall a. a -> [a] -> [a]
simpleInstance :: Class -> Data -> Doc
texts :: [String] -> [Doc]
tuple :: [Doc] -> Doc
varNames :: forall a. [a] -> [Doc]
varNames' :: forall a. [a] -> [Doc]
x :: Doc
TYPE CONSTRUCTORS
type IFunction
= Body -> Doc
FamilyInstance: none
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(DerivingDrift.DataP, False), (Directory, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.SrcLoc, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (RawFiles, False),
(StringTable.Atom, False), (Support.IniParse, False),
(Support.TempDir, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.SetLike, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[101 of 182] Compiling DerivingDrift.StandardRules ( src/DerivingDrift/StandardRules.hs, src/DerivingDrift/StandardRules.o )
TYPE SIGNATURES
boundedEnum :: Data -> Doc
boundedSingle :: Data -> Doc
boundedfn :: Data -> Doc
defaultEq :: Doc
driftResolvedNames :: [(Name, [Name])]
enumFromFn :: Data -> Doc
enumFromThenFn :: Doc
enumfn :: Data -> Doc
eqfn :: Data -> Doc
fromEnumFn :: Data -> [Doc]
makeEq :: IFunction
makeRead :: IFunction
makeShow :: IFunction
ordfn :: Data -> Doc
q :: Name -> String
readfn :: Data -> Doc
readsPrecFn :: Data -> Doc
showfn :: Data -> Doc
singleton :: forall t. [t] -> Bool
standardRules :: Map.Map Name (Data -> Doc)
toEnumFn :: Data -> [Doc]
tshow :: forall a. Show a => a -> Doc
u :: Name -> String
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(DerivingDrift.DataP, False), (DerivingDrift.RuleUtils, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.SrcLoc, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (RawFiles, False),
(StringTable.Atom, False), (Support.IniParse, False),
(Support.TempDir, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.SetLike, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[102 of 182] Compiling E.Binary ( src/E/Binary.hs, src/E/Binary.o )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
INSTANCES
instance [overlap ok] Binary e => Binary (Alt e)
-- Defined at src/E/Binary.hs:225:10
instance [overlap ok] Binary E -- Defined at src/E/Binary.hs:131:10
instance [overlap ok] Binary ESort
-- Defined at src/E/Binary.hs:95:10
instance [overlap ok] (Binary e, Binary t) => Binary (Lit e t)
-- Defined at src/E/Binary.hs:68:10
instance [overlap ok] Binary ARules
-- Defined at src/E/Binary.hs:59:10
instance [overlap ok] Binary Rule
-- Defined at src/E/Binary.hs:38:10
instance [overlap ok] Binary RuleType
-- Defined at src/E/Binary.hs:20:10
instance [overlap ok] Binary TVr -- Defined at src/E/Binary.hs:9:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.DocLike, False),
(Doc.PPrint, False), (E.Type, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.SrcLoc, False), (GenUtil, False), (Info.Binary, True),
(Info.Info, False), (Info.Properties, False), (Info.Types, False),
(List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (StringTable.Atom, False),
(Support.IniParse, False), (Support.TempDir, False),
(System, False), (Time, False), (Util.BitSet, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.Inst, False), (Util.NameMonad, False),
(Util.SetLike, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[103 of 182] Compiling FrontEnd.Exports ( src/FrontEnd/Exports.hs, src/FrontEnd/Exports.o )
TYPE SIGNATURES
defsToRel :: forall s t t1.
(Collection s, Elem s ~ (Name, Name)) =>
[(Name, t, t1)] -> s
determineExports :: [(Name, SrcLoc, [Name])]
-> [(Module, [Name])] -> [ModInfo] -> IO [ModInfo]
determineExports' :: [(Name, [Name])]
-> [(Module, [Name])] -> [ModInfo] -> IO [ModInfo]
modInfoConsArity :: ModInfo -> [(Name, Int)]
modInfoDefs :: ModInfo -> [(Name, SrcLoc, [Name])]
modInfoExport :: ModInfo -> [Name]
modInfoHsModule :: ModInfo -> HsModule
modInfoImport :: ModInfo -> [(Name, [Name])]
modInfoModImports :: ModInfo -> [HsImportDecl]
modInfoName :: ModInfo -> Module
modInfoOptions :: ModInfo -> Opt
modInfoReverseMap :: ModInfo -> Map.Map Name Name
TYPE CONSTRUCTORS
data ModInfo
RecFlag NonRecursive
= ModInfo :: Module -> [(Name, SrcLoc, [Name])] -> [(Name, Int)]
-> [Name] -> [(Name, [Name])] -> HsModule -> (Map.Map Name Name)
-> Opt -> ModInfo
Stricts: _ _ _ _ _ _ _ _
Fields: modInfoName modInfoDefs modInfoConsArity modInfoExport modInfoImport modInfoHsModule modInfoReverseMap modInfoOptions
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Ord ModInfo
-- Defined at src/FrontEnd/Exports.hs:39:10
instance [overlap ok] Eq ModInfo
-- Defined at src/FrontEnd/Exports.hs:36:10
Dependent modules: [(Array, False), (C.FFI, False),
(C.Prims, False), (CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FindFixpoint, False), (FlagDump, False), (FlagOpts, False),
(FrontEnd.HsSyn, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Warning, False), (GenUtil, False), (Ix, False),
(List, False), (Monad, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(RawFiles, False), (StringTable.Atom, False),
(Support.IniParse, False), (Support.TempDir, False),
(System, False), (Time, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Relation, False), (Util.SetLike, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[104 of 182] Compiling FrontEnd.Representation ( drift_processed/FrontEnd/Representation.hs, src/FrontEnd/Representation.o )
TYPE SIGNATURES
FrontEnd.Representation.$con2tag_MetaVarType :: MetaVarType
-> ghc-prim:GHC.Prim.Int#
FrontEnd.Representation.$con2tag_Pred :: Pred
-> ghc-prim:GHC.Prim.Int#
FrontEnd.Representation.$con2tag_Type :: Type
-> ghc-prim:GHC.Prim.Int#
fn :: Type -> Type -> Type
fromTAp :: Type -> (Type, [Type])
fromTArrow :: Type -> ([Type], Type)
metaKind :: MetaVar -> Kind
metaRef :: MetaVar -> IORef (Maybe Type)
metaType :: MetaVar -> MetaVarType
metaUniq :: MetaVar -> Int
metaVar :: Type -> MetaVar
newTyvarName :: forall (m :: * -> *).
Monad m =>
Tyvar -> VarNameT Kind Tyvar [Char] m [Char]
prettyPrintType :: forall d. DocLike d => Type -> d
prettyPrintTypePrec :: forall d. DocLike d => Int -> Type -> d
tAp :: Type -> Type -> Type
tArrow :: Type
tExists :: [Tyvar] -> Qual Type -> Type
tForAll :: [Tyvar] -> Qual Type -> Type
tList :: Type
tTTuple :: [Type] -> Type
tTTuple' :: [Type] -> Type
tassocToAp :: Type -> Type
tyconKind :: Tycon -> Kind
tyconName :: Tycon -> Name
typeArgs :: Type -> [Tyvar]
typeBody :: Type -> Qual Type
typeClassArgs :: Type -> [Type]
typeCon :: Type -> Tycon
typeExtraArgs :: Type -> [Type]
typeVar :: Type -> Tyvar
tyvar :: Name -> Kind -> Tyvar
tyvarKind :: Tyvar -> Kind
tyvarName :: Tyvar -> Name
withNewNames :: forall (m :: * -> *) a.
Monad m =>
[Tyvar]
-> ([[Char]] -> VarNameT Kind Tyvar [Char] m a)
-> VarNameT Kind Tyvar [Char] m a
TYPE CONSTRUCTORS
data MetaVar
RecFlag NonRecursive
= MetaVar :: Int -> Kind -> (IORef (Maybe Type)) -> MetaVarType
-> MetaVar
HasWrapper
Stricts: {-# UNPACK #-} ! _ {-# UNPACK #-} ! !
Fields: metaUniq metaKind metaRef metaType
FamilyInstance: none
data MetaVarType
RecFlag NonRecursive
= Tau :: MetaVarType | Rho :: MetaVarType | Sigma :: MetaVarType
FamilyInstance: none
data Pred
RecFlag NonRecursive
= IsIn :: Class -> Type -> Pred Stricts: _ _ |
IsEq :: Type -> Type -> Pred Stricts: _ _
FamilyInstance: none
data Qual t
RecFlag NonRecursive
= :=> :: forall t. [Pred] -> t -> Qual t Infix Stricts: _ _
FamilyInstance: none
data Tycon
RecFlag NonRecursive
= Tycon :: Name -> Kind -> Tycon
Stricts: _ _
Fields: tyconName tyconKind
FamilyInstance: none
data Type
RecFlag NonRecursive
= TVar :: Tyvar -> Type HasWrapper Stricts: ! Fields: typeVar |
TCon :: Tycon -> Type HasWrapper Stricts: ! Fields: typeCon |
TAp :: Type -> Type -> Type Stricts: _ _ |
TArrow :: Type -> Type -> Type Stricts: _ _ |
TForAll :: [Tyvar] -> (Qual Type) -> Type
Stricts: _ _
Fields: typeArgs typeBody |
TExists :: [Tyvar] -> (Qual Type) -> Type
Stricts: _ _
Fields: typeArgs typeBody |
TMetaVar :: MetaVar -> Type Stricts: _ Fields: metaVar |
TAssoc :: Tycon -> [Type] -> [Type] -> Type
HasWrapper
Stricts: ! _ _
Fields: typeCon typeClassArgs typeExtraArgs
FamilyInstance: none
data Tyvar
RecFlag NonRecursive
= Tyvar :: Name -> Kind -> Tyvar
HasWrapper
Stricts: {-# UNPACK #-} ! _
Fields: tyvarName tyvarKind
FamilyInstance: none
COERCION AXIOMS
axiom FrontEnd.Representation.TFCo:R:TypeOfType []
:: TypeOf Type ~# FrontEnd.Representation.R:TypeOfType
axiom FrontEnd.Representation.TFCo:R:TypeOfTyvar []
:: TypeOf Tyvar ~# FrontEnd.Representation.R:TypeOfTyvar
axiom FrontEnd.Representation.TFCo:R:TypeOfTycon []
:: TypeOf Tycon ~# FrontEnd.Representation.R:TypeOfTycon
axiom FrontEnd.Representation.TFCo:R:TypeOfMetaVar []
:: TypeOf MetaVar ~# FrontEnd.Representation.R:TypeOfMetaVar
INSTANCES
instance [overlap ok] Eq MetaVarType
-- Defined at src/FrontEnd/Representation.hs:42:23
instance [overlap ok] Ord MetaVarType
-- Defined at src/FrontEnd/Representation.hs:42:26
instance [overlap ok] Eq Tycon
-- Defined at src/FrontEnd/Representation.hs:138:14
instance [overlap ok] Show Tycon
-- Defined at src/FrontEnd/Representation.hs:138:18
instance [overlap ok] Ord Tycon
-- Defined at src/FrontEnd/Representation.hs:138:23
instance [overlap ok] Show t => Show (Qual t)
-- Defined at src/FrontEnd/Representation.hs:162:24
instance [overlap ok] Eq t => Eq (Qual t)
-- Defined at src/FrontEnd/Representation.hs:162:30
instance [overlap ok] Ord t => Ord (Qual t)
-- Defined at src/FrontEnd/Representation.hs:162:33
instance [overlap ok] Show Pred
-- Defined at src/FrontEnd/Representation.hs:157:24
instance [overlap ok] Eq Pred
-- Defined at src/FrontEnd/Representation.hs:157:30
instance [overlap ok] Ord Pred
-- Defined at src/FrontEnd/Representation.hs:157:33
instance [overlap ok] Ord Type
-- Defined at src/FrontEnd/Representation.hs:53:23
instance [overlap ok] Show Type
-- Defined at src/FrontEnd/Representation.hs:53:27
instance [overlap ok] Binary t => Binary (Qual t)
-- Defined at src/FrontEnd/Representation.hs:448:10
instance [overlap ok] Binary Pred
-- Defined at src/FrontEnd/Representation.hs:426:10
instance [overlap ok] Binary Tycon
-- Defined at src/FrontEnd/Representation.hs:417:10
instance [overlap ok] Binary MetaVar
-- Defined at src/FrontEnd/Representation.hs:404:10
instance [overlap ok] Binary Type
-- Defined at src/FrontEnd/Representation.hs:338:10
instance [overlap ok] Binary MetaVarType
-- Defined at src/FrontEnd/Representation.hs:320:10
instance [overlap ok] CanType Type
-- Defined at src/FrontEnd/Representation.hs:301:10
instance [overlap ok] CanType Tyvar
-- Defined at src/FrontEnd/Representation.hs:297:10
instance [overlap ok] CanType Tycon
-- Defined at src/FrontEnd/Representation.hs:293:10
instance [overlap ok] CanType MetaVar
-- Defined at src/FrontEnd/Representation.hs:289:10
instance [overlap ok] Show MetaVar
-- Defined at src/FrontEnd/Representation.hs:278:10
instance [overlap ok] Show MetaVarType
-- Defined at src/FrontEnd/Representation.hs:275:10
instance [overlap ok] DocLike d => PPrint d MetaVar
-- Defined at src/FrontEnd/Representation.hs:270:10
instance [overlap ok] DocLike d => PPrint d Pred
-- Defined at src/FrontEnd/Representation.hs:266:10
instance [overlap ok] DocLike d => PPrint d MetaVarType
-- Defined at src/FrontEnd/Representation.hs:260:10
instance [overlap ok] DocLike d => PPrint d Type
-- Defined at src/FrontEnd/Representation.hs:200:10
instance [overlap ok] DocLike d => PPrint d Module
-- Defined at src/FrontEnd/Representation.hs:182:10
instance [overlap ok] Binary Tyvar
-- Defined at src/FrontEnd/Representation.hs:173:10
instance [overlap ok] DocLike d => PPrint d Tyvar
-- Defined at src/FrontEnd/Representation.hs:170:11
instance [overlap ok] (DocLike d, PPrint d t) => PPrint d (Qual t)
-- Defined at src/FrontEnd/Representation.hs:165:10
instance [overlap ok] DocLike d => PPrint d Tycon
-- Defined at src/FrontEnd/Representation.hs:146:10
instance [overlap ok] ToTuple Type
-- Defined at src/FrontEnd/Representation.hs:143:10
instance [overlap ok] ToTuple Tycon
-- Defined at src/FrontEnd/Representation.hs:141:10
instance [overlap ok] Ord Tyvar
-- Defined at src/FrontEnd/Representation.hs:128:10
instance [overlap ok] Eq Tyvar
-- Defined at src/FrontEnd/Representation.hs:124:10
instance [overlap ok] Show Tyvar
-- Defined at src/FrontEnd/Representation.hs:111:10
instance [overlap ok] Eq Type
-- Defined at src/FrontEnd/Representation.hs:95:10
instance [overlap ok] Binary (IORef a)
-- Defined at src/FrontEnd/Representation.hs:79:10
instance [overlap ok] Ord (IORef a)
-- Defined at src/FrontEnd/Representation.hs:78:10
instance [overlap ok] TypeNames Type
-- Defined at src/FrontEnd/Representation.hs:71:10
instance [overlap ok] Ord MetaVar
-- Defined at src/FrontEnd/Representation.hs:68:10
instance [overlap ok] Eq MetaVar
-- Defined at src/FrontEnd/Representation.hs:65:10
FAMILY INSTANCES
type TypeOf Type
-- Defined at src/FrontEnd/Representation.hs:302:10
type TypeOf Tyvar
-- Defined at src/FrontEnd/Representation.hs:298:10
type TypeOf Tycon
-- Defined at src/FrontEnd/Representation.hs:294:10
type TypeOf MetaVar
-- Defined at src/FrontEnd/Representation.hs:290:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FrontEnd.Tc.Kind, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (PackedString, False),
(Random, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.Unparse, False),
(System, False), (Time, False), (Util.GMap, False),
(Util.Gen, False), (Util.HasSize, False), (Util.SetLike, False),
(Util.VarName, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[105 of 182] Compiling FrontEnd.Tc.Type ( src/FrontEnd/Tc/Type.hs, src/FrontEnd/Tc/Type.o )
TYPE SIGNATURES
applyTyvarMap :: [(Tyvar, Type)] -> Type -> Type
applyTyvarMapQT :: [(Tyvar, Type)] -> Qual Type -> Qual Type
composeCoerce :: CoerceTerm -> CoerceTerm -> CoerceTerm
constraintSrcLoc :: Constraint -> SrcLoc
constraintType1 :: Constraint -> Type
constraintType2 :: Constraint -> Type
ctAbs :: [Tyvar] -> CoerceTerm
ctAp :: [Type] -> CoerceTerm
ctFun :: CoerceTerm -> CoerceTerm
ctId :: CoerceTerm
extractBox :: forall (m :: * -> *). Monad m => Type -> m MetaVar
extractMetaVar :: forall (m :: * -> *).
Monad m =>
Type -> m MetaVar
extractTyVar :: forall (m :: * -> *). Monad m => Type -> m Tyvar
failEmptyMetaVar :: UnVarOpt -> Bool
findType :: forall (m :: * -> *). MonadIO m => Type -> m Type
flattenType :: forall (m :: * -> *) t.
(MonadIO m, UnVar t) =>
t -> m t
followTaus :: forall (m :: * -> *). MonadIO m => Type -> m Type
freeMetaVars :: Type -> S.Set MetaVar
fromType :: Sigma -> ([Tyvar], [Pred], Type)
isBoxy :: Type -> Bool
isBoxyMetaVar :: MetaVar -> Bool
isRho :: Type -> Bool
isRho' :: Type -> Bool
isTau :: Type -> Bool
isTau' :: Type -> Bool
ptrans :: forall a. Bool -> (a -> a) -> a -> a
readMetaVar :: forall (m :: * -> *).
MonadIO m =>
MetaVar -> m (Maybe Type)
ruleFreeTVars :: Rule -> [(Name, Kind)]
ruleName :: Rule -> Name
ruleSuper :: Rule -> Bool
ruleType :: Rule -> Type
ruleUniq :: Rule -> (Module, Int)
typeOfType :: Type -> (MetaVarType, Bool)
TYPE CONSTRUCTORS
type BoundTV
= Tyvar
FamilyInstance: none
data CoerceTerm
RecFlag NonRecursive
= CTId :: CoerceTerm |
CTAp :: [Type] -> CoerceTerm Stricts: _ |
CTAbs :: [Tyvar] -> CoerceTerm Stricts: _ |
CTFun :: CoerceTerm -> CoerceTerm Stricts: _ |
CTCompose :: CoerceTerm -> CoerceTerm -> CoerceTerm Stricts: _ _
FamilyInstance: none
data Constraint
RecFlag NonRecursive
= Equality :: SrcLoc -> Type -> Type -> Constraint
Stricts: _ _ _
Fields: constraintSrcLoc constraintType1 constraintType2
FamilyInstance: none
type Preds
= [Pred]
FamilyInstance: none
type Rho
= Type
FamilyInstance: none
type Rho'
= Rho
FamilyInstance: none
data Rule
RecFlag NonRecursive
= RuleSpec :: (Module, Int) -> Name -> Bool -> Type -> Rule
Stricts: _ _ _ _
Fields: ruleUniq ruleName ruleSuper ruleType |
RuleUser :: (Module, Int) -> [(Name, Kind)] -> Rule
Stricts: _ _
Fields: ruleUniq ruleFreeTVars
FamilyInstance: none
type Sigma
= Type
FamilyInstance: none
type Sigma'
= Sigma
FamilyInstance: none
type SkolemTV
= Tyvar
FamilyInstance: none
type Tau
= Type
FamilyInstance: none
type Tau'
= Tau
FamilyInstance: none
class UnVar t
RecFlag NonRecursive
unVar' :: t -> IO t
newtype UnVarOpt
RecFlag NonRecursive
= UnVarOpt :: Bool -> UnVarOpt Stricts: _ Fields: failEmptyMetaVar
FamilyInstance: none
COERCION AXIOMS
axiom FrontEnd.Tc.Type.NTCo:UnVarOpt [] :: UnVarOpt ~# Bool
axiom FrontEnd.Tc.Type.NTCo:UnVar [t] :: UnVar t ~# (t -> IO t)
INSTANCES
instance [overlap ok] UnVar Type => UnVar CoerceTerm
-- Defined at src/FrontEnd/Tc/Type.hs:329:10
instance [overlap ok] Monoid CoerceTerm
-- Defined at src/FrontEnd/Tc/Type.hs:298:10
instance [overlap ok] Show CoerceTerm
-- Defined at src/FrontEnd/Tc/Type.hs:287:10
instance [overlap ok] Tickleable Type Type
-- Defined at src/FrontEnd/Tc/Type.hs:261:10
instance [overlap ok] Tickleable Type Pred
-- Defined at src/FrontEnd/Tc/Type.hs:257:10
instance [overlap ok] FreeVars Type b => FreeVars Pred b
-- Defined at src/FrontEnd/Tc/Type.hs:253:10
instance [overlap ok] (FreeVars t b, FreeVars Pred b) =>
FreeVars (Qual t) b
-- Defined at src/FrontEnd/Tc/Type.hs:250:10
instance [overlap ok] FreeVars Type (S.Set MetaVar)
-- Defined at src/FrontEnd/Tc/Type.hs:247:10
instance [overlap ok] FreeVars Type [MetaVar]
-- Defined at src/FrontEnd/Tc/Type.hs:244:10
instance [overlap ok] FreeVars Type [Tyvar]
-- Defined at src/FrontEnd/Tc/Type.hs:238:10
instance [overlap ok] UnVar Type
-- Defined at src/FrontEnd/Tc/Type.hs:161:10
instance [overlap ok] UnVar t => UnVar (Qual t)
-- Defined at src/FrontEnd/Tc/Type.hs:158:10
instance [overlap ok] (UnVar a, UnVar b) => UnVar (a, b)
-- Defined at src/FrontEnd/Tc/Type.hs:152:10
instance [overlap ok] UnVar Pred
-- Defined at src/FrontEnd/Tc/Type.hs:148:10
instance [overlap ok] UnVar t => UnVar [t]
-- Defined at src/FrontEnd/Tc/Type.hs:145:10
instance [overlap ok] HasLocation Constraint
-- Defined at src/FrontEnd/Tc/Type.hs:68:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Tc.Kind, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (PackedString, False),
(Random, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.Tickle, False), (Support.Unparse, False), (System, False),
(Time, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.SetLike, False),
(Util.VarName, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[106 of 182] Compiling FrontEnd.Utils ( src/FrontEnd/Utils.hs, src/FrontEnd/Utils.o )
TYPE SIGNATURES
getDeclName :: HsDecl -> Name
hsNameToOrig :: HsName -> HsName
maybeGetDeclName :: forall (m :: * -> *).
Monad m =>
HsDecl -> m Name
pprintEnvMap :: forall d k a.
(PPrint d k, PPrint d a) =>
Map.Map k a -> d
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.SrcLoc, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (RawFiles, False),
(StringTable.Atom, False), (Support.IniParse, False),
(Support.TempDir, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.SetLike, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[107 of 182] Compiling FrontEnd.KindInfer ( drift_processed/FrontEnd/KindInfer.hs, src/FrontEnd/KindInfer.o )
TYPE SIGNATURES
FrontEnd.KindInfer.$con2tag_KiWhere :: KiWhere
-> ghc-prim:GHC.Prim.Int#
aHsQualTypeToQualType :: KindEnv -> HsQualType -> Qual Type
aHsTypeToType :: KindEnv -> HsType -> Type
constrain :: KindConstraint -> Kind -> Ki ()
extendEnv :: KindEnv -> Ki ()
findKind :: forall (m :: * -> *). MonadIO m => Kind -> m Kind
flattenKind :: Kind -> Ki Kind
fromHsTyVar :: forall (m :: * -> *). Monad m => HsType -> m HsName
fromHsTypeApp :: HsType -> (HsType, [HsType])
fromTyApp :: HsType -> (HsType, [HsType])
getConstructorKinds :: KindEnv -> Map.Map Name Kind
getEnv :: Ki KindEnv
hoistType :: Type -> Type
hsAsstToPred :: KindEnv -> HsAsst -> Pred
hsKindToKind :: HsKind -> Kind
hsQualTypeToSigma :: forall (m :: * -> *).
Monad m =>
KindEnv -> HsQualType -> m Sigma
hsQualTypeToType :: forall (m :: * -> *).
Monad m =>
KindEnv -> Maybe [HsName] -> HsQualType -> m Sigma
hsTypeToType :: forall (m :: * -> *).
Monad m =>
KindEnv -> HsType -> m Type
hsTypeToType' :: forall (m :: * -> *).
Monad m =>
KindEnv -> HsType -> m Type
initTyVarBind :: HsTyVarBind -> Ki ()
kiAlias :: forall a a1.
(ToName a1, ToName a) =>
[HsAsst] -> a1 -> [a] -> HsConDecl -> Ki ()
kiApps :: Kind -> [HsType] -> Kind -> Ki ()
kiApps' :: Kind -> [Kind] -> Kind -> Ki ()
kiContext :: KiEnv -> [String]
kiData :: forall a a1.
(ToName a1, ToName a) =>
[HsAsst] -> a1 -> [a] -> [HsConDecl] -> Ki ()
kiDataKind :: Name -> [HsConDecl] -> Ki ()
kiDecl :: HsDecl -> Ki ()
kiDecls :: KindEnv -> [HsDecl] -> IO KindEnv
kiEnv :: KiEnv -> IORef KindEnv
kiHsQualType :: KindEnv -> HsQualType -> KindEnv
kiInitClasses :: [HsDecl] -> Ki ()
kiInitDecl :: HsDecl -> Ki ()
kiPred :: HsAsst -> Ki ()
kiSrcLoc :: KiEnv -> SrcLoc
kiType :: Kind -> HsType -> Ki ()
kiType' :: Kind -> HsType -> Ki ()
kiVarnum :: KiEnv -> IORef Int
kiWhere :: KiEnv -> KiWhere
kindEnv :: KindEnv -> Map.Map Name Kind
kindEnvAssocs :: KindEnv -> Map.Map Name (Int, Int)
kindEnvClasses :: KindEnv -> Map.Map Name [Kind]
kindOf :: Name -> KindEnv -> Kind
kindOfClass :: Name -> KindEnv -> [Kind]
lookupKind :: KindConstraint -> Name -> Ki Kind
mgu :: Kind -> Kind -> Ki ()
newKindVar :: KindConstraint -> Ki Kindvar
postProcess :: KindEnv -> Ki KindEnv
printRule :: String -> Ki ()
restrictKindEnv :: (Name -> Bool) -> KindEnv -> KindEnv
runKI :: forall a. KindEnv -> Ki a -> IO a
toTyvar :: forall a. ToName a => KindEnv -> a -> Tyvar
unify :: Kind -> Kind -> Ki ()
varBind :: Kindvar -> Kind -> Ki ()
zonkConstraint :: KindConstraint -> Kindvar -> Ki ()
TYPE CONSTRUCTORS
newtype Ki a
RecFlag NonRecursive
= Ki :: forall a. (ReaderT KiEnv IO a) -> Ki a Stricts: _
FamilyInstance: none
data KiEnv
RecFlag NonRecursive
= KiEnv :: SrcLoc -> [String] -> (IORef KindEnv) -> KiWhere
-> (IORef Int) -> KiEnv
HasWrapper
Stricts: _ _ {-# UNPACK #-} ! ! {-# UNPACK #-} !
Fields: kiSrcLoc kiContext kiEnv kiWhere kiVarnum
FamilyInstance: none
data KiWhere
RecFlag NonRecursive
= InClass :: KiWhere | InInstance :: KiWhere | Other :: KiWhere
FamilyInstance: none
data KindEnv
RecFlag NonRecursive
= KindEnv :: (Map.Map Name Kind) -> (Map.Map Name (Int, Int))
-> (Map.Map Name [Kind]) -> KindEnv
Stricts: _ _ _
Fields: kindEnv kindEnvAssocs kindEnvClasses
FamilyInstance: none
COERCION AXIOMS
axiom FrontEnd.KindInfer.NTCo:Ki [] :: Ki ~# ReaderT KiEnv IO
axiom FrontEnd.KindInfer.TFCo:R:ContextOfKi []
:: ContextOf Ki ~# FrontEnd.KindInfer.R:ContextOfKi
INSTANCES
instance [overlap ok] Typeable KindEnv
-- Defined at src/FrontEnd/KindInfer.hs:54:16
instance [overlap ok] Show KindEnv
-- Defined at src/FrontEnd/KindInfer.hs:54:25
instance [overlap ok] Eq KiWhere
-- Defined at src/FrontEnd/KindInfer.hs:86:14
instance [overlap ok] Monad Ki
-- Defined at src/FrontEnd/KindInfer.hs:97:14
instance [overlap ok] MonadReader KiEnv Ki
-- Defined at src/FrontEnd/KindInfer.hs:97:20
instance [overlap ok] MonadIO Ki
-- Defined at src/FrontEnd/KindInfer.hs:97:38
instance [overlap ok] Functor Ki
-- Defined at src/FrontEnd/KindInfer.hs:97:46
instance [overlap ok] MonadWarn Ki
-- Defined at src/FrontEnd/KindInfer.hs:97:54
instance [overlap ok] Monoid KindEnv
-- Defined at src/FrontEnd/KindInfer.hs:627:10
instance [overlap ok] ContextMonad Ki
-- Defined at src/FrontEnd/KindInfer.hs:135:10
instance [overlap ok] MonadSetSrcLoc Ki
-- Defined at src/FrontEnd/KindInfer.hs:101:10
instance [overlap ok] MonadSrcLoc Ki
-- Defined at src/FrontEnd/KindInfer.hs:99:10
instance [overlap ok] DocLike d => PPrint d KindEnv
-- Defined at src/FrontEnd/KindInfer.hs:74:10
instance [overlap ok] FreeVars Kind (Set.Set Kindvar)
-- Defined at src/FrontEnd/KindInfer.hs:69:10
instance [overlap ok] HasSize KindEnv
-- Defined at src/FrontEnd/KindInfer.hs:66:10
instance [overlap ok] Binary KindEnv
-- Defined at src/FrontEnd/KindInfer.hs:57:10
FAMILY INSTANCES
type ContextOf Ki -- Defined at src/FrontEnd/KindInfer.hs:136:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Type, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (RawFiles, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.ContextMonad, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Inst, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[108 of 182] Compiling FrontEnd.Class ( drift_processed/FrontEnd/Class.hs, src/FrontEnd/Class.o )
TYPE SIGNATURES
FrontEnd.Class.$con2tag_ClassType :: ClassType
-> ghc-prim:GHC.Prim.Int#
aHsTypeSigToAssumps :: KindEnv -> HsDecl -> [(Name, Type)]
accLen :: forall a. Int -> [[a]] -> [(Int, [a])]
addInstanceToHierarchy :: Inst -> ClassHierarchy -> ClassHierarchy
asksClassRecord :: forall t.
ClassHierarchy -> Class -> (ClassRecord -> t) -> t
augmentClassHierarchy :: ClassHierarchy
-> ClassHierarchy -> ClassHierarchy
chToClassHead :: KindEnv -> HsClassHead -> ([Pred], (Name, [Type]))
checkForDuplicateInstaces :: forall (m :: * -> *).
MonadWarn m =>
ClassHierarchy -> ClassHierarchy -> m ClassHierarchy
classAlias :: ClassRecord -> Maybe (Qual [Pred])
classArgs :: ClassRecord -> [Tyvar]
classAssocs :: ClassRecord -> [AssociatedType]
classAssumps :: ClassRecord -> [(Name, Sigma)]
classHierarchyFromRecords :: [ClassRecord] -> ClassHierarchy
className :: ClassRecord -> Class
classRecords :: ClassHierarchy -> [ClassRecord]
classSrcLoc :: ClassRecord -> SrcLoc
classSupers :: ClassRecord -> [Class]
createClassAssocs :: KindEnv -> [HsDecl] -> [AssociatedType]
createInstAssocs :: KindEnv
-> [HsDecl] -> [(Tycon, [Tyvar], [Tyvar], Maybe Type)]
defaultInstanceName :: forall a. Show a => a -> Name
defaultMethodToTopDecls :: KindEnv
-> [Assump] -> HsClassHead -> (Name, HsDecl) -> (HsDecl, Assump)
derivableClasses :: [Name]
emptyInstance :: Inst
enumDerivableClasses :: [Name]
findClassInsts :: ClassHierarchy -> Class -> [Inst]
findClassRecord :: ClassHierarchy -> Class -> ClassRecord
fromHsTyVar :: forall (m :: * -> *). Monad m => HsType -> m HsName
fromHsTypeApp :: HsType -> (HsType, [HsType])
getTypeHead :: Type -> Name
groupEquations :: [HsDecl] -> [(Name, HsDecl)]
groupStringsToWidth :: Int -> [String] -> [String]
hsInstDeclToInst :: forall (m :: * -> *).
Monad m =>
KindEnv -> HsDecl -> m [Inst]
instAssocs :: Inst -> [(Tycon, [Tyvar], [Tyvar], Sigma)]
instDerived :: Inst -> Bool
instHead :: Inst -> Qual Pred
instSrcLoc :: Inst -> SrcLoc
instanceEnv :: InstanceEnv
-> Map.Map (Name, Name) ([Tyvar], [Tyvar], Type)
instanceName :: forall a a1. (Show a1, Show a) => a -> a1 -> Name
instanceToTopDecls :: KindEnv
-> ClassHierarchy -> HsDecl -> ([HsDecl], [Assump])
makeClassHierarchy :: forall (m :: * -> *).
MonadWarn m =>
ClassHierarchy -> KindEnv -> [HsDecl] -> m ClassHierarchy
makeInstanceEnv :: ClassHierarchy -> InstanceEnv
methodToTopDecls :: forall (m :: * -> *).
Monad m =>
KindEnv
-> [Pred]
-> ClassRecord
-> HsClassHead
-> (Name, HsDecl)
-> m (HsDecl, Assump)
newMethodSig' :: KindEnv
-> Name -> [Pred] -> Sigma -> Type -> Sigma
noNewtypeDerivable :: [Name]
pretty :: forall a. PPrint Doc a => a -> String
printClassHierarchy :: ClassHierarchy -> IO ()
printClassSummary :: ClassHierarchy -> IO ()
qualifyMethod :: [HsAsst] -> HsDecl -> HsDecl
renameOneDecl :: Name -> HsDecl -> HsDecl
renameOneMatch :: Name -> HsMatch -> HsMatch
scatterAliasInstances :: ClassHierarchy -> ClassHierarchy
showInst :: Inst -> String
showListAndSepInWidth :: forall a.
(a -> String) -> Int -> String -> [a] -> String
vtrace :: forall a. String -> a -> a
TYPE CONSTRUCTORS
data AssociatedType
RecFlag NonRecursive
= Assoc :: Tycon -> Bool -> [Tyvar] -> Kind -> AssociatedType
HasWrapper
Stricts: ! ! _ _
FamilyInstance: none
type Assump
= (Name, Sigma)
FamilyInstance: none
data ClassHierarchy
RecFlag NonRecursive
= CH :: (Map.Map Class ClassRecord) -> (Map.Map Class [Inst])
-> ClassHierarchy
Stricts: _ _
FamilyInstance: none
data ClassRecord
RecFlag NonRecursive
= ClassRecord :: Class -> SrcLoc -> [Tyvar] -> [Class]
-> (Maybe (Qual [Pred])) -> [(Name, Sigma)] -> [AssociatedType]
-> ClassRecord
HasWrapper
Stricts: ! ! _ _ _ _ _
Fields: className classSrcLoc classArgs classSupers classAlias classAssumps classAssocs
FamilyInstance: none
data ClassType
RecFlag NonRecursive
= ClassNormal :: ClassType |
ClassTypeFamily :: ClassType |
ClassDataFamily :: ClassType |
ClassAlias :: ClassType
FamilyInstance: none
data Inst
RecFlag NonRecursive
= Inst :: SrcLoc -> Bool -> (Qual Pred)
-> [(Tycon, [Tyvar], [Tyvar], Sigma)] -> Inst
HasWrapper
Stricts: _ ! _ _
Fields: instSrcLoc instDerived instHead instAssocs
FamilyInstance: none
newtype InstanceEnv
RecFlag NonRecursive
= InstanceEnv :: (Map.Map (Name, Name) ([Tyvar], [Tyvar], Type))
-> InstanceEnv
Stricts: _
Fields: instanceEnv
FamilyInstance: none
COERCION AXIOMS
axiom FrontEnd.Class.NTCo:InstanceEnv []
:: InstanceEnv ~# Map.Map (Name, Name) ([Tyvar], [Tyvar], Type)
INSTANCES
instance [overlap ok] Eq Inst
-- Defined at src/FrontEnd/Class.hs:68:16
instance [overlap ok] Ord Inst
-- Defined at src/FrontEnd/Class.hs:68:19
instance [overlap ok] Show Inst
-- Defined at src/FrontEnd/Class.hs:68:23
instance [overlap ok] Eq ClassType
-- Defined at src/FrontEnd/Class.hs:84:18
instance [overlap ok] Ord ClassType
-- Defined at src/FrontEnd/Class.hs:84:21
instance [overlap ok] Eq AssociatedType
-- Defined at src/FrontEnd/Class.hs:88:14
instance [overlap ok] Show AssociatedType
-- Defined at src/FrontEnd/Class.hs:88:17
instance [overlap ok] Show ClassRecord
-- Defined at src/FrontEnd/Class.hs:99:17
instance [overlap ok] Eq ClassRecord
-- Defined at src/FrontEnd/Class.hs:99:22
instance [overlap ok] Binary ClassRecord
-- Defined at src/FrontEnd/Class.hs:565:10
instance [overlap ok] Binary AssociatedType
-- Defined at src/FrontEnd/Class.hs:552:10
instance [overlap ok] Binary Inst
-- Defined at src/FrontEnd/Class.hs:539:10
instance [overlap ok] Monoid ClassHierarchy
-- Defined at src/FrontEnd/Class.hs:128:10
instance [overlap ok] Binary ClassHierarchy
-- Defined at src/FrontEnd/Class.hs:119:10
instance [overlap ok] PPrint a (Qual Pred) => PPrint a Inst
-- Defined at src/FrontEnd/Class.hs:71:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.KindInfer, False), (FrontEnd.Representation, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (RawFiles, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Unparse, False), (System, False),
(Time, False), (Util.ContextMonad, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Inst, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[109 of 182] Compiling FrontEnd.Tc.Class[boot] ( src/FrontEnd/Tc/Class.hs-boot, src/FrontEnd/Tc/Class.o-boot )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Type, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (RawFiles, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.ContextMonad, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Inst, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[110 of 182] Compiling FrontEnd.HsErrors ( src/FrontEnd/HsErrors.hs, src/FrontEnd/HsErrors.o )
TYPE SIGNATURES
FrontEnd.HsErrors.$con2tag_Context :: Context
-> ghc-prim:GHC.Prim.Int#
checkDeriving :: forall (m :: * -> *).
MonadWarn m =>
SrcLoc -> Bool -> [Name] -> m ()
hsDecl :: forall (m :: * -> *).
MonadWarn m =>
Context -> HsDecl -> m ()
hsDeclLocal :: forall (m :: * -> *). MonadWarn m => HsDecl -> m ()
hsDeclTopLevel :: forall (m :: * -> *).
MonadWarn m =>
HsDecl -> m ()
hsType :: forall (m :: * -> *).
(MonadSrcLoc m, MonadWarn m) =>
HsType -> m ()
TYPE CONSTRUCTORS
data Context
RecFlag NonRecursive
= InClass :: [HsType] -> Context Stricts: _ |
InInstance :: [HsType] -> Context Stricts: _ |
TopLevel :: Context |
Local :: Context
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Eq Context
-- Defined at src/FrontEnd/HsErrors.hs:28:14
instance [overlap ok] Show Context
-- Defined at src/FrontEnd/HsErrors.hs:30:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (RawFiles, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Unparse, False), (System, False),
(Time, False), (Util.ContextMonad, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Inst, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[111 of 182] Compiling FrontEnd.TypeSigs ( src/FrontEnd/TypeSigs.hs, src/FrontEnd/TypeSigs.o )
TYPE SIGNATURES
aHsTypeSigToAssumps :: KindEnv -> HsDecl -> [(Name, Type)]
addSigs :: [HsDecl] -> SC ()
collectExp :: HsExp -> SC ()
collectSigEnv :: KindEnv -> HsStmt -> SigEnv
collectSigs :: [HsDecl] -> [HsDecl]
collectSigsFromAlt :: HsAlt -> [HsDecl]
collectSigsFromDecls :: [HsDecl] -> [HsDecl]
collectSigsFromExp :: HsExp -> [HsDecl]
collectSigsFromGuardedAlt :: HsGuardedRhs -> [HsDecl]
collectSigsFromGuardedRhs :: HsGuardedRhs -> [HsDecl]
collectSigsFromMatch :: HsMatch -> [HsDecl]
collectSigsFromRhs :: HsRhs -> [HsDecl]
collectSigsFromStmt :: HsStmt -> [HsDecl]
fromSC :: SC () -> [HsDecl]
listSigsToSigEnv :: KindEnv -> [HsDecl] -> SigEnv
TYPE CONSTRUCTORS
newtype SC a
RecFlag NonRecursive
= SC :: forall a. (Writer [HsDecl] a) -> SC a Stricts: _
FamilyInstance: none
type SigEnv
= Map.Map Name Type
FamilyInstance: none
COERCION AXIOMS
axiom FrontEnd.TypeSigs.NTCo:SC []
:: SC ~# WriterT [HsDecl] Identity
INSTANCES
instance [overlap ok] Monad SC
-- Defined at src/FrontEnd/TypeSigs.hs:28:14
instance [overlap ok] MonadSetSrcLoc SC
-- Defined at src/FrontEnd/TypeSigs.hs:37:10
instance [overlap ok] MonadSrcLoc SC
-- Defined at src/FrontEnd/TypeSigs.hs:36:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.KindInfer, False), (FrontEnd.Representation, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Syn.Traverse, False),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Type, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (RawFiles, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.ContextMonad, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Inst, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[112 of 182] Compiling FrontEnd.DataConsAssump ( src/FrontEnd/DataConsAssump.hs, src/FrontEnd/DataConsAssump.o )
TYPE SIGNATURES
bangTypeToType :: KindEnv -> HsBangType -> Type
conDeclType :: Module
-> KindEnv -> [Pred] -> Type -> HsConDecl -> Map.Map Name Sigma
dataConsEnv :: KindEnv -> [HsDecl] -> Map.Map Name Sigma
dataDeclEnv :: Module -> KindEnv -> HsDecl -> Map.Map Name Sigma
hsContextToPreds :: KindEnv -> HsContext -> [Pred]
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.KindInfer, False), (FrontEnd.Representation, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (RawFiles, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Unparse, False), (System, False),
(Time, False), (Util.ContextMonad, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Inst, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[113 of 182] Compiling FrontEnd.ParseUtils ( src/FrontEnd/ParseUtils.hs, src/FrontEnd/ParseUtils.o )
TYPE SIGNATURES
check1Expr :: forall a. HsExp -> (HsExp -> a) -> P a
check2Exprs :: forall a.
HsExp -> HsExp -> (HsExp -> HsExp -> a) -> P a
check3Exprs :: forall a.
HsExp -> HsExp -> HsExp -> (HsExp -> HsExp -> HsExp -> a) -> P a
checkAlt :: HsAlt -> P HsAlt
checkAssertion :: HsType -> P HsAsst
checkContext :: HsType -> P HsContext
checkDataHeader :: HsQualType -> P (HsContext, Name, [Name])
checkExpr :: HsExp -> P HsExp
checkField :: HsFieldUpdate -> P HsFieldUpdate
checkGAlt :: HsGuardedRhs -> P HsGuardedRhs
checkGAlts :: HsRhs -> P HsRhs
checkManyExprs :: forall a. [HsExp] -> ([HsExp] -> a) -> P a
checkPat :: HsExp -> [HsPat] -> P HsPat
checkPatField :: HsFieldUpdate -> P HsPatField
checkPattern :: HsExp -> P HsPat
checkPatterns :: [HsExp] -> P [HsPat]
checkPrec :: Integer -> P Int
checkSimple :: String -> HsType -> [Name] -> P (Name, [Name])
checkStmt :: HsStmt -> P HsStmt
checkUnQual :: Name -> P Name
checkValDef :: SrcLoc -> HsExp -> HsRhs -> [HsDecl] -> P HsDecl
collectMatches :: [HsDecl] -> [HsMatch]
doForeign :: forall (m :: * -> *).
Monad m =>
SrcLoc -> [Name] -> Maybe (String, Name) -> HsQualType -> m HsDecl
doForeignEq :: forall (m :: * -> *).
Monad m =>
SrcLoc
-> [Name]
-> Maybe (String, Name)
-> HsQualType
-> HsExp
-> m HsDecl
fixupHsDecls :: [HsDecl] -> [HsDecl]
isCName :: [Char] -> Bool
isFunLhs :: HsExp -> [HsExp] -> Maybe (Name, [HsExp])
matchName :: HsMatch -> HsName
mkRecConstrOrUpdate :: HsExp -> [HsFieldUpdate] -> P HsExp
parseError :: forall a. String -> P a
parseExport :: forall (m :: * -> *).
Monad m =>
String -> Name -> m String
parseIS :: forall (m :: * -> *).
Monad m =>
CallConv -> [[Char]] -> m FfiType
parseImport :: forall (m :: * -> *).
Monad m =>
CallConv -> Maybe String -> Name -> m FfiType
patFail :: forall a. P a
qualTypeToClassHead :: HsQualType -> P HsClassHead
readInteger :: String -> Integer
readInteger2 :: Integer -> (Char -> Bool) -> String -> Integer
readRational :: String -> Rational
sameFun :: Name -> HsDecl -> Bool
splitTyConApp :: HsType -> P (Name, [HsType])
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.ParseMonad, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Warning, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (StringTable.Atom, False),
(Support.IniParse, False), (Support.TempDir, False),
(System, False), (Time, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.SetLike, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[114 of 182] Compiling FrontEnd.HsParser ( src/FrontEnd/HsParser.hs, src/FrontEnd/HsParser.o )
TYPE SIGNATURES
as_name :: Name
derive_name :: Name
dot_name :: Name
fun_tycon_name :: Name
happyAccept :: forall t t1 a.
Happy_GHC_Exts.Int#
-> t -> Happy_GHC_Exts.Int# -> t1 -> HappyStk a -> P a
happyActOffsets :: HappyAddr
happyCheck :: HappyAddr
happyDefActions :: HappyAddr
happyDoAction :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyDoSeq :: forall a b. a -> b -> b
happyDontSeq :: forall a b. a -> b -> b
happyDrop :: Happy_GHC_Exts.Int# -> Happy_IntList -> Happy_IntList
happyDropStk :: forall t.
Happy_GHC_Exts.Int# -> HappyStk t -> HappyStk t
happyError :: forall a. P a
happyError' :: forall a. Token -> P a
happyError_ :: forall a. Happy_GHC_Exts.Int# -> Token -> P a
happyFail :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyGoto :: Happy_GHC_Exts.Int#
-> Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyGotoOffsets :: HappyAddr
happyIn10 :: () -> HappyAbsSyn
happyIn100 :: HsExp -> HappyAbsSyn
happyIn101 :: Int -> HappyAbsSyn
happyIn102 :: [HsExp] -> HappyAbsSyn
happyIn103 :: HsExp -> HappyAbsSyn
happyIn104 :: [HsExp] -> HappyAbsSyn
happyIn105 :: HsExp -> HappyAbsSyn
happyIn106 :: HsExp -> HappyAbsSyn
happyIn107 :: HsExp -> HappyAbsSyn
happyIn108 :: HsExp -> HappyAbsSyn
happyIn109 :: HsExp -> HappyAbsSyn
happyIn11 :: () -> HappyAbsSyn
happyIn110 :: HsExp -> HappyAbsSyn
happyIn111 :: [HsExp] -> HappyAbsSyn
happyIn112 :: HsExp -> HappyAbsSyn
happyIn113 :: [HsExp] -> HappyAbsSyn
happyIn114 :: [HsStmt] -> HappyAbsSyn
happyIn115 :: HsStmt -> HappyAbsSyn
happyIn116 :: [HsAlt] -> HappyAbsSyn
happyIn117 :: [HsAlt] -> HappyAbsSyn
happyIn118 :: HsAlt -> HappyAbsSyn
happyIn119 :: HsRhs -> HappyAbsSyn
happyIn12 :: Maybe [HsExportSpec] -> HappyAbsSyn
happyIn120 :: [HsGuardedRhs] -> HappyAbsSyn
happyIn121 :: HsGuardedRhs -> HappyAbsSyn
happyIn122 :: [HsStmt] -> HappyAbsSyn
happyIn123 :: [HsStmt] -> HappyAbsSyn
happyIn124 :: [HsStmt] -> HappyAbsSyn
happyIn125 :: HsStmt -> HappyAbsSyn
happyIn126 :: [HsFieldUpdate] -> HappyAbsSyn
happyIn127 :: HsFieldUpdate -> HappyAbsSyn
happyIn128 :: [HsFieldUpdate] -> HappyAbsSyn
happyIn129 :: HsFieldUpdate -> HappyAbsSyn
happyIn13 :: [HsExportSpec] -> HappyAbsSyn
happyIn130 :: HsExp -> HappyAbsSyn
happyIn131 :: HsName -> HappyAbsSyn
happyIn132 :: HsName -> HappyAbsSyn
happyIn133 :: HsName -> HappyAbsSyn
happyIn134 :: HsName -> HappyAbsSyn
happyIn135 :: HsName -> HappyAbsSyn
happyIn136 :: HsName -> HappyAbsSyn
happyIn137 :: HsName -> HappyAbsSyn
happyIn138 :: HsName -> HappyAbsSyn
happyIn139 :: HsName -> HappyAbsSyn
happyIn14 :: () -> HappyAbsSyn
happyIn140 :: HsName -> HappyAbsSyn
happyIn141 :: HsExp -> HappyAbsSyn
happyIn142 :: HsExp -> HappyAbsSyn
happyIn143 :: HsName -> HappyAbsSyn
happyIn144 :: HsName -> HappyAbsSyn
happyIn145 :: HsName -> HappyAbsSyn
happyIn146 :: HsName -> HappyAbsSyn
happyIn147 :: HsName -> HappyAbsSyn
happyIn148 :: HsName -> HappyAbsSyn
happyIn149 :: HsName -> HappyAbsSyn
happyIn15 :: [HsExportSpec] -> HappyAbsSyn
happyIn150 :: HsName -> HappyAbsSyn
happyIn151 :: HsName -> HappyAbsSyn
happyIn152 :: HsName -> HappyAbsSyn
happyIn153 :: HsName -> HappyAbsSyn
happyIn154 :: HsExp -> HappyAbsSyn
happyIn155 :: SrcLoc -> HappyAbsSyn
happyIn156 :: () -> HappyAbsSyn
happyIn157 :: () -> HappyAbsSyn
happyIn158 :: Module -> HappyAbsSyn
happyIn159 :: HsName -> HappyAbsSyn
happyIn16 :: HsExportSpec -> HappyAbsSyn
happyIn160 :: HsName -> HappyAbsSyn
happyIn161 :: HsName -> HappyAbsSyn
happyIn162 :: HsName -> HappyAbsSyn
happyIn163 :: HsName -> HappyAbsSyn
happyIn17 :: [HsName] -> HappyAbsSyn
happyIn18 :: HsName -> HappyAbsSyn
happyIn19 :: [HsImportDecl] -> HappyAbsSyn
happyIn20 :: HsImportDecl -> HappyAbsSyn
happyIn21 :: Bool -> HappyAbsSyn
happyIn22 :: Maybe Module -> HappyAbsSyn
happyIn23 :: Maybe (Bool, [HsExportSpec]) -> HappyAbsSyn
happyIn24 :: (Bool, [HsExportSpec]) -> HappyAbsSyn
happyIn25 :: [HsExportSpec] -> HappyAbsSyn
happyIn26 :: HsExportSpec -> HappyAbsSyn
happyIn27 :: [HsName] -> HappyAbsSyn
happyIn28 :: HsName -> HappyAbsSyn
happyIn29 :: HsDecl -> HappyAbsSyn
happyIn30 :: Int -> HappyAbsSyn
happyIn31 :: HsAssoc -> HappyAbsSyn
happyIn32 :: [HsName] -> HappyAbsSyn
happyIn33 :: [HsDecl] -> HappyAbsSyn
happyIn34 :: [HsDecl] -> HappyAbsSyn
happyIn35 :: Maybe HsKind -> HappyAbsSyn
happyIn36 :: Maybe String -> HappyAbsSyn
happyIn37 :: HsDecl -> HappyAbsSyn
happyIn38 :: HsRule -> HappyAbsSyn
happyIn39 :: [HsRule] -> HappyAbsSyn
happyIn40 :: [(HsName, Maybe HsType)] -> HappyAbsSyn
happyIn41 :: [(HsName, Maybe HsType)] -> HappyAbsSyn
happyIn42 :: [HsDecl] -> HappyAbsSyn
happyIn43 :: [HsDecl] -> HappyAbsSyn
happyIn44 :: HsDecl -> HappyAbsSyn
happyIn45 :: [HsDecl] -> HappyAbsSyn
happyIn46 :: HsDecl -> HappyAbsSyn
happyIn47 :: HsDecl -> HappyAbsSyn
happyIn48 :: (Bool, Maybe Int) -> HappyAbsSyn
happyIn49 :: Maybe Int -> HappyAbsSyn
happyIn5 :: HsModule -> HappyAbsSyn
happyIn50 :: HsDecl -> HappyAbsSyn
happyIn51 :: [HsName] -> HappyAbsSyn
happyIn52 :: Maybe (String, HsName) -> HappyAbsSyn
happyIn53 :: HsType -> HappyAbsSyn
happyIn54 :: [HsTyVarBind] -> HappyAbsSyn
happyIn55 :: HsTyVarBind -> HappyAbsSyn
happyIn56 :: HsKind -> HappyAbsSyn
happyIn57 :: HsKind -> HappyAbsSyn
happyIn58 :: HsType -> HappyAbsSyn
happyIn59 :: HsType -> HappyAbsSyn
happyIn6 :: HsModule -> HappyAbsSyn
happyIn60 :: HsType -> HappyAbsSyn
happyIn61 :: HsName -> HappyAbsSyn
happyIn62 :: HsQualType -> HappyAbsSyn
happyIn63 :: HsContext -> HappyAbsSyn
happyIn64 :: (HsContext, HsContext) -> HappyAbsSyn
happyIn65 :: HsClassHead -> HappyAbsSyn
happyIn66 :: [HsType] -> HappyAbsSyn
happyIn67 :: (HsName, [HsType]) -> HappyAbsSyn
happyIn68 :: [HsType] -> HappyAbsSyn
happyIn69 :: [HsConDecl] -> HappyAbsSyn
happyIn7 :: ([HsImportDecl], [HsDecl]) -> HappyAbsSyn
happyIn70 :: HsConDecl -> HappyAbsSyn
happyIn71 :: [HsTyVarBind] -> HappyAbsSyn
happyIn72 :: (HsName, [HsBangType]) -> HappyAbsSyn
happyIn73 :: (HsName, [HsBangType]) -> HappyAbsSyn
happyIn74 :: HsBangType -> HappyAbsSyn
happyIn75 :: HsBangType -> HappyAbsSyn
happyIn76 :: [([HsName], HsBangType)] -> HappyAbsSyn
happyIn77 :: ([HsName], HsBangType) -> HappyAbsSyn
happyIn78 :: HsBangType -> HappyAbsSyn
happyIn79 :: [HsName] -> HappyAbsSyn
happyIn8 :: ([HsImportDecl], [HsDecl]) -> HappyAbsSyn
happyIn80 :: [HsName] -> HappyAbsSyn
happyIn81 :: [HsDecl] -> HappyAbsSyn
happyIn82 :: [HsDecl] -> HappyAbsSyn
happyIn83 :: [([HsName], [HsName])] -> HappyAbsSyn
happyIn84 :: [([HsName], [HsName])] -> HappyAbsSyn
happyIn85 :: ([HsName], [HsName]) -> HappyAbsSyn
happyIn86 :: [HsName] -> HappyAbsSyn
happyIn87 :: [HsDecl] -> HappyAbsSyn
happyIn88 :: [HsDecl] -> HappyAbsSyn
happyIn89 :: HsDecl -> HappyAbsSyn
happyIn9 :: () -> HappyAbsSyn
happyIn90 :: [HsDecl] -> HappyAbsSyn
happyIn91 :: HsRhs -> HappyAbsSyn
happyIn92 :: [HsGuardedRhs] -> HappyAbsSyn
happyIn93 :: HsGuardedRhs -> HappyAbsSyn
happyIn94 :: HsExp -> HappyAbsSyn
happyIn95 :: HsExp -> HappyAbsSyn
happyIn96 :: HsExp -> HappyAbsSyn
happyIn97 :: HsExp -> HappyAbsSyn
happyIn98 :: [HsExp] -> HappyAbsSyn
happyIn99 :: HsExp -> HappyAbsSyn
happyInTok :: Token -> HappyAbsSyn
happyMonad2Reduce :: Happy_GHC_Exts.Int#
-> Happy_GHC_Exts.Int#
-> (HappyStk HappyAbsSyn -> Token -> P HappyAbsSyn)
-> Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyMonadReduce :: Happy_GHC_Exts.Int#
-> Happy_GHC_Exts.Int#
-> (HappyStk HappyAbsSyn -> Token -> P HappyAbsSyn)
-> Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyNewToken :: Happy_GHC_Exts.Int#
-> Happy_IntList -> HappyStk HappyAbsSyn -> P HappyAbsSyn
happyOut10 :: HappyAbsSyn -> ()
happyOut100 :: HappyAbsSyn -> HsExp
happyOut101 :: HappyAbsSyn -> Int
happyOut102 :: HappyAbsSyn -> [HsExp]
happyOut103 :: HappyAbsSyn -> HsExp
happyOut104 :: HappyAbsSyn -> [HsExp]
happyOut105 :: HappyAbsSyn -> HsExp
happyOut106 :: HappyAbsSyn -> HsExp
happyOut107 :: HappyAbsSyn -> HsExp
happyOut108 :: HappyAbsSyn -> HsExp
happyOut109 :: HappyAbsSyn -> HsExp
happyOut11 :: HappyAbsSyn -> ()
happyOut110 :: HappyAbsSyn -> HsExp
happyOut111 :: HappyAbsSyn -> [HsExp]
happyOut112 :: HappyAbsSyn -> HsExp
happyOut113 :: HappyAbsSyn -> [HsExp]
happyOut114 :: HappyAbsSyn -> [HsStmt]
happyOut115 :: HappyAbsSyn -> HsStmt
happyOut116 :: HappyAbsSyn -> [HsAlt]
happyOut117 :: HappyAbsSyn -> [HsAlt]
happyOut118 :: HappyAbsSyn -> HsAlt
happyOut119 :: HappyAbsSyn -> HsRhs
happyOut12 :: HappyAbsSyn -> Maybe [HsExportSpec]
happyOut120 :: HappyAbsSyn -> [HsGuardedRhs]
happyOut121 :: HappyAbsSyn -> HsGuardedRhs
happyOut122 :: HappyAbsSyn -> [HsStmt]
happyOut123 :: HappyAbsSyn -> [HsStmt]
happyOut124 :: HappyAbsSyn -> [HsStmt]
happyOut125 :: HappyAbsSyn -> HsStmt
happyOut126 :: HappyAbsSyn -> [HsFieldUpdate]
happyOut127 :: HappyAbsSyn -> HsFieldUpdate
happyOut128 :: HappyAbsSyn -> [HsFieldUpdate]
happyOut129 :: HappyAbsSyn -> HsFieldUpdate
happyOut13 :: HappyAbsSyn -> [HsExportSpec]
happyOut130 :: HappyAbsSyn -> HsExp
happyOut131 :: HappyAbsSyn -> HsName
happyOut132 :: HappyAbsSyn -> HsName
happyOut133 :: HappyAbsSyn -> HsName
happyOut134 :: HappyAbsSyn -> HsName
happyOut135 :: HappyAbsSyn -> HsName
happyOut136 :: HappyAbsSyn -> HsName
happyOut137 :: HappyAbsSyn -> HsName
happyOut138 :: HappyAbsSyn -> HsName
happyOut139 :: HappyAbsSyn -> HsName
happyOut14 :: HappyAbsSyn -> ()
happyOut140 :: HappyAbsSyn -> HsName
happyOut141 :: HappyAbsSyn -> HsExp
happyOut142 :: HappyAbsSyn -> HsExp
happyOut143 :: HappyAbsSyn -> HsName
happyOut144 :: HappyAbsSyn -> HsName
happyOut145 :: HappyAbsSyn -> HsName
happyOut146 :: HappyAbsSyn -> HsName
happyOut147 :: HappyAbsSyn -> HsName
happyOut148 :: HappyAbsSyn -> HsName
happyOut149 :: HappyAbsSyn -> HsName
happyOut15 :: HappyAbsSyn -> [HsExportSpec]
happyOut150 :: HappyAbsSyn -> HsName
happyOut151 :: HappyAbsSyn -> HsName
happyOut152 :: HappyAbsSyn -> HsName
happyOut153 :: HappyAbsSyn -> HsName
happyOut154 :: HappyAbsSyn -> HsExp
happyOut155 :: HappyAbsSyn -> SrcLoc
happyOut156 :: HappyAbsSyn -> ()
happyOut157 :: HappyAbsSyn -> ()
happyOut158 :: HappyAbsSyn -> Module
happyOut159 :: HappyAbsSyn -> HsName
happyOut16 :: HappyAbsSyn -> HsExportSpec
happyOut160 :: HappyAbsSyn -> HsName
happyOut161 :: HappyAbsSyn -> HsName
happyOut162 :: HappyAbsSyn -> HsName
happyOut163 :: HappyAbsSyn -> HsName
happyOut17 :: HappyAbsSyn -> [HsName]
happyOut18 :: HappyAbsSyn -> HsName
happyOut19 :: HappyAbsSyn -> [HsImportDecl]
happyOut20 :: HappyAbsSyn -> HsImportDecl
happyOut21 :: HappyAbsSyn -> Bool
happyOut22 :: HappyAbsSyn -> Maybe Module
happyOut23 :: HappyAbsSyn -> Maybe (Bool, [HsExportSpec])
happyOut24 :: HappyAbsSyn -> (Bool, [HsExportSpec])
happyOut25 :: HappyAbsSyn -> [HsExportSpec]
happyOut26 :: HappyAbsSyn -> HsExportSpec
happyOut27 :: HappyAbsSyn -> [HsName]
happyOut28 :: HappyAbsSyn -> HsName
happyOut29 :: HappyAbsSyn -> HsDecl
happyOut30 :: HappyAbsSyn -> Int
happyOut31 :: HappyAbsSyn -> HsAssoc
happyOut32 :: HappyAbsSyn -> [HsName]
happyOut33 :: HappyAbsSyn -> [HsDecl]
happyOut34 :: HappyAbsSyn -> [HsDecl]
happyOut35 :: HappyAbsSyn -> Maybe HsKind
happyOut36 :: HappyAbsSyn -> Maybe String
happyOut37 :: HappyAbsSyn -> HsDecl
happyOut38 :: HappyAbsSyn -> HsRule
happyOut39 :: HappyAbsSyn -> [HsRule]
happyOut40 :: HappyAbsSyn -> [(HsName, Maybe HsType)]
happyOut41 :: HappyAbsSyn -> [(HsName, Maybe HsType)]
happyOut42 :: HappyAbsSyn -> [HsDecl]
happyOut43 :: HappyAbsSyn -> [HsDecl]
happyOut44 :: HappyAbsSyn -> HsDecl
happyOut45 :: HappyAbsSyn -> [HsDecl]
happyOut46 :: HappyAbsSyn -> HsDecl
happyOut47 :: HappyAbsSyn -> HsDecl
happyOut48 :: HappyAbsSyn -> (Bool, Maybe Int)
happyOut49 :: HappyAbsSyn -> Maybe Int
happyOut5 :: HappyAbsSyn -> HsModule
happyOut50 :: HappyAbsSyn -> HsDecl
happyOut51 :: HappyAbsSyn -> [HsName]
happyOut52 :: HappyAbsSyn -> Maybe (String, HsName)
happyOut53 :: HappyAbsSyn -> HsType
happyOut54 :: HappyAbsSyn -> [HsTyVarBind]
happyOut55 :: HappyAbsSyn -> HsTyVarBind
happyOut56 :: HappyAbsSyn -> HsKind
happyOut57 :: HappyAbsSyn -> HsKind
happyOut58 :: HappyAbsSyn -> HsType
happyOut59 :: HappyAbsSyn -> HsType
happyOut6 :: HappyAbsSyn -> HsModule
happyOut60 :: HappyAbsSyn -> HsType
happyOut61 :: HappyAbsSyn -> HsName
happyOut62 :: HappyAbsSyn -> HsQualType
happyOut63 :: HappyAbsSyn -> HsContext
happyOut64 :: HappyAbsSyn -> (HsContext, HsContext)
happyOut65 :: HappyAbsSyn -> HsClassHead
happyOut66 :: HappyAbsSyn -> [HsType]
happyOut67 :: HappyAbsSyn -> (HsName, [HsType])
happyOut68 :: HappyAbsSyn -> [HsType]
happyOut69 :: HappyAbsSyn -> [HsConDecl]
happyOut7 :: HappyAbsSyn -> ([HsImportDecl], [HsDecl])
happyOut70 :: HappyAbsSyn -> HsConDecl
happyOut71 :: HappyAbsSyn -> [HsTyVarBind]
happyOut72 :: HappyAbsSyn -> (HsName, [HsBangType])
happyOut73 :: HappyAbsSyn -> (HsName, [HsBangType])
happyOut74 :: HappyAbsSyn -> HsBangType
happyOut75 :: HappyAbsSyn -> HsBangType
happyOut76 :: HappyAbsSyn -> [([HsName], HsBangType)]
happyOut77 :: HappyAbsSyn -> ([HsName], HsBangType)
happyOut78 :: HappyAbsSyn -> HsBangType
happyOut79 :: HappyAbsSyn -> [HsName]
happyOut8 :: HappyAbsSyn -> ([HsImportDecl], [HsDecl])
happyOut80 :: HappyAbsSyn -> [HsName]
happyOut81 :: HappyAbsSyn -> [HsDecl]
happyOut82 :: HappyAbsSyn -> [HsDecl]
happyOut83 :: HappyAbsSyn -> [([HsName], [HsName])]
happyOut84 :: HappyAbsSyn -> [([HsName], [HsName])]
happyOut85 :: HappyAbsSyn -> ([HsName], [HsName])
happyOut86 :: HappyAbsSyn -> [HsName]
happyOut87 :: HappyAbsSyn -> [HsDecl]
happyOut88 :: HappyAbsSyn -> [HsDecl]
happyOut89 :: HappyAbsSyn -> HsDecl
happyOut9 :: HappyAbsSyn -> ()
happyOut90 :: HappyAbsSyn -> [HsDecl]
happyOut91 :: HappyAbsSyn -> HsRhs
happyOut92 :: HappyAbsSyn -> [HsGuardedRhs]
happyOut93 :: HappyAbsSyn -> HsGuardedRhs
happyOut94 :: HappyAbsSyn -> HsExp
happyOut95 :: HappyAbsSyn -> HsExp
happyOut96 :: HappyAbsSyn -> HsExp
happyOut97 :: HappyAbsSyn -> HsExp
happyOut98 :: HappyAbsSyn -> [HsExp]
happyOut99 :: HappyAbsSyn -> HsExp
happyOutTok :: HappyAbsSyn -> Token
happyParse :: Happy_GHC_Exts.Int# -> P HappyAbsSyn
happyReduce :: Happy_GHC_Exts.Int#
-> Happy_GHC_Exts.Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduceArr :: Happy_Data_Array.Array
Int
(Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn)
happyReduce_10 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_100 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_101 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_102 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_103 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_104 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_105 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_106 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_107 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_108 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_109 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_11 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_110 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_111 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_112 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_113 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_114 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_115 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_116 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_117 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_118 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_119 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_12 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_120 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_121 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_122 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_123 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_124 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_125 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_126 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_127 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_128 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_129 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_13 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_130 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_131 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_132 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_133 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_134 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_135 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_136 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_137 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_138 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_139 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_14 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_140 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_141 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_142 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_143 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_144 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_145 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_146 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_147 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_148 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_149 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_15 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_150 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_151 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_152 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_153 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_154 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_155 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_156 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_157 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_158 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_159 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_16 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_160 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_161 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_162 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_163 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_164 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_165 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_166 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_167 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_168 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_169 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_17 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_170 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_171 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_172 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_173 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_174 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_175 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_176 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_177 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_178 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_179 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_18 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_180 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_181 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_182 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_183 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_184 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_185 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_186 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_187 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_188 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_189 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_19 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_190 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_191 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_192 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_193 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_194 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_195 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_196 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_197 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_198 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_199 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_2 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_20 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_200 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_201 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_202 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_203 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_204 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_205 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_206 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_207 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_208 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_209 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_21 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_210 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_211 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_212 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_213 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_214 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_215 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_216 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_217 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_218 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_219 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_22 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_220 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_221 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_222 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_223 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_224 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_225 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_226 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_227 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_228 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_229 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_23 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_230 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_231 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_232 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_233 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_234 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_235 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_236 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_237 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_238 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_239 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_24 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_240 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_241 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_242 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_243 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_244 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_245 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_246 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_247 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_248 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_249 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_25 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_250 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_251 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_252 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_253 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_254 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_255 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_256 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_257 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_258 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_259 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_26 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_260 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_261 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_262 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_263 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_264 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_265 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_266 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_267 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_268 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_269 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_27 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_270 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_271 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_272 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_273 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_274 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_275 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_276 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_277 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_278 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_279 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_28 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_280 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_281 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_282 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_283 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_284 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_285 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_286 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_287 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_288 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_289 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_29 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_290 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_291 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_292 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_293 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_294 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_295 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_296 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_297 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_298 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_299 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_3 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_30 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_300 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_301 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_302 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_303 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_304 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_305 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_306 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_307 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_308 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_309 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_31 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_310 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_311 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_312 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_313 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_314 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_315 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_316 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_317 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_318 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_319 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_32 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_320 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_321 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_322 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_323 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_324 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_325 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_326 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_327 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_328 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_329 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_33 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_330 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_331 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_332 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_333 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_334 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_335 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_336 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_337 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_338 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_339 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_34 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_340 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_341 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_342 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_343 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_344 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_345 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_346 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_347 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_348 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_349 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_35 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_350 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_351 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_352 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_353 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_354 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_355 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_356 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_357 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_358 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_359 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_36 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_360 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_361 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_362 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_363 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_364 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_365 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_366 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_367 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_368 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_369 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_37 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_370 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_371 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_372 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_373 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_374 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_375 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_376 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_377 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_378 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_379 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_38 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_380 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_381 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_382 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_383 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_384 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_385 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_386 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_387 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_388 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_389 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_39 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_390 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_391 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_392 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_393 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_394 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_395 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_396 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_397 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_398 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_399 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_4 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_40 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_400 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_401 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_402 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_403 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_404 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_405 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_406 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_407 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_408 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_409 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_41 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_410 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_411 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_412 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_413 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_414 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_415 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_416 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_417 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_418 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_419 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_42 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_420 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_421 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_422 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_423 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_424 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_425 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_426 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_427 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_43 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_44 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_45 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_46 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_47 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_48 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_49 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_5 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_50 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_51 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_52 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_53 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_54 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_55 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_56 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_57 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_58 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_59 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_6 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_60 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_61 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_62 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_63 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_64 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_65 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_66 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_67 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_68 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_69 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_7 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_70 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_71 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_72 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_73 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_74 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_75 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_76 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_77 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_78 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_79 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_8 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_80 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_81 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_82 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_83 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_84 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_85 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_86 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_87 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_88 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_89 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_9 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_90 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_91 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_92 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_93 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_94 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_95 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_96 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_97 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_98 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduce_99 :: Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyReduction_10 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_100 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_101 :: HappyAbsSyn
happyReduction_102 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_103 :: HappyAbsSyn
happyReduction_104 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_105 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_106 :: HappyAbsSyn
happyReduction_107 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_108 :: forall t. t -> HappyAbsSyn
happyReduction_109 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_11 :: forall t. t -> HappyAbsSyn
happyReduction_110 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_111 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_112 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_113 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_114 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_115 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_116 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_117 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_118 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_119 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_12 :: forall t. t -> HappyAbsSyn
happyReduction_120 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_121 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_122 :: HappyAbsSyn
happyReduction_123 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_124 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_125 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_126 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_127 :: HappyAbsSyn
happyReduction_128 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_129 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_13 :: HappyAbsSyn
happyReduction_130 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_131 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_132 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_133 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_134 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_135 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_136 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_137 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_138 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_139 :: forall t. t -> HappyAbsSyn
happyReduction_14 :: forall t t1. t -> t1 -> HappyAbsSyn
happyReduction_140 :: forall t. t -> HappyAbsSyn
happyReduction_141 :: forall t. t -> HappyAbsSyn
happyReduction_142 :: forall t. t -> HappyAbsSyn
happyReduction_143 :: forall t. t -> HappyAbsSyn
happyReduction_144 :: forall t. t -> HappyAbsSyn
happyReduction_145 :: forall t. t -> HappyAbsSyn
happyReduction_146 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_147 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_148 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_149 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_15 :: forall t. t -> HappyAbsSyn
happyReduction_150 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_151 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_152 :: forall t t1. t -> t1 -> HappyAbsSyn
happyReduction_153 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_154 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_155 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_156 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_157 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_158 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_159 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_16 :: HappyAbsSyn
happyReduction_160 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_161 :: forall t t1. t -> t1 -> HappyAbsSyn
happyReduction_162 :: forall t t1 t2. t -> t1 -> t2 -> HappyAbsSyn
happyReduction_163 :: forall t t1. t -> t1 -> HappyAbsSyn
happyReduction_164 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_165 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_166 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_167 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_168 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_169 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_17 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_170 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_171 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_172 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_173 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_174 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_175 :: HappyAbsSyn
happyReduction_176 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_177 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_178 :: HappyAbsSyn
-> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_179 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_18 :: HappyAbsSyn
happyReduction_180 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_181 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_182 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_183 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_184 :: HappyAbsSyn
happyReduction_185 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_186 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_187 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_188 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_189 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_19 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_190 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_191 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_192 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_193 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_194 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_195 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_196 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_197 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_198 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_199 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_2 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_20 :: forall t t1. t -> t1 -> HappyAbsSyn
happyReduction_200 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_201 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_202 :: HappyAbsSyn
happyReduction_203 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_204 :: forall t t1 t2. t -> t1 -> t2 -> HappyAbsSyn
happyReduction_205 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_206 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_207 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_208 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_209 :: HappyAbsSyn
happyReduction_21 :: forall t. t -> HappyAbsSyn
happyReduction_210 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_211 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_212 :: HappyAbsSyn
happyReduction_213 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_214 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_215 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_216 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_217 :: HappyAbsSyn
happyReduction_218 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_219 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_22 :: HappyAbsSyn
happyReduction_220 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_221 :: HappyAbsSyn
happyReduction_222 :: forall t. t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_223 :: forall t. t -> HappyAbsSyn
happyReduction_224 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_225 :: forall t.
HappyAbsSyn -> HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_226 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_227 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_228 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_229 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_23 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_230 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_231 :: HappyAbsSyn
happyReduction_232 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_233 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_234 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_235 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_236 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_237 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_238 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_239 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_24 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_240 :: HappyAbsSyn
-> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_241 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_242 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_243 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_244 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_245 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_246 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_247 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_248 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_249 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_25 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_250 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_251 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_252 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_253 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_254 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_255 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_256 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_257 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_258 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_259 :: forall t t1. t -> t1 -> HappyAbsSyn
happyReduction_26 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_260 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_261 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_262 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_263 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_264 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_265 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_266 :: forall t. t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_267 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_268 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_269 :: forall t. t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_27 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_270 :: forall t. t -> HappyAbsSyn
happyReduction_271 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_272 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_273 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_274 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_275 :: forall t. t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_276 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_277 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_278 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_279 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_28 :: forall t t1.
t -> t1 -> HappyAbsSyn -> HappyAbsSyn
happyReduction_280 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_281 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_282 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_283 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_284 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_285 :: HappyAbsSyn
-> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_286 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_287 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_288 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_289 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_29 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_290 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_291 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_292 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_293 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_294 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_295 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_296 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_297 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_298 :: forall t t1. t -> t1 -> HappyAbsSyn
happyReduction_299 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_3 :: HappyAbsSyn
-> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_30 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_300 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_301 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_302 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_303 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_304 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_305 :: forall t. t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_306 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_307 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_308 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_309 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_31 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_310 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_311 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_312 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_313 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_314 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_315 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_316 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_317 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_318 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_319 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_32 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_320 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_321 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_322 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_323 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_324 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_325 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_326 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_327 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_328 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_329 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_33 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_330 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_331 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_332 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_333 :: HappyAbsSyn
happyReduction_334 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_335 :: HappyAbsSyn
happyReduction_336 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_337 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_338 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_339 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_34 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_340 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_341 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_342 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_343 :: forall t t1. t -> t1 -> HappyAbsSyn
happyReduction_344 :: forall t t1. t -> t1 -> HappyAbsSyn
happyReduction_345 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_346 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_347 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_348 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_349 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_35 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_350 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_351 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_352 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_353 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_354 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_355 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_356 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_357 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_358 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_359 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_36 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_360 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_361 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_362 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_363 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_364 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_365 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_366 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_367 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_368 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_369 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_37 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_370 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_371 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_372 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_373 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_374 :: forall t. t -> HappyAbsSyn
happyReduction_375 :: forall t. t -> HappyAbsSyn
happyReduction_376 :: forall t. t -> HappyAbsSyn
happyReduction_377 :: forall t. t -> HappyAbsSyn
happyReduction_378 :: forall t. t -> HappyAbsSyn
happyReduction_379 :: forall t. t -> HappyAbsSyn
happyReduction_38 :: forall t. t -> HappyAbsSyn
happyReduction_380 :: forall t. t -> HappyAbsSyn
happyReduction_381 :: forall t. t -> HappyAbsSyn
happyReduction_382 :: forall t. t -> HappyAbsSyn
happyReduction_383 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_384 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_385 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_386 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_387 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_388 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_389 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_39 :: HappyAbsSyn
happyReduction_390 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_391 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_392 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_393 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_394 :: forall t. t -> HappyAbsSyn
happyReduction_395 :: forall t. t -> HappyAbsSyn
happyReduction_396 :: forall t. t -> HappyAbsSyn
happyReduction_397 :: forall t. t -> HappyAbsSyn
happyReduction_398 :: forall t. t -> HappyAbsSyn
happyReduction_399 :: forall t. t -> HappyAbsSyn
happyReduction_4 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_40 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_400 :: forall t. t -> HappyAbsSyn
happyReduction_401 :: forall t. t -> HappyAbsSyn
happyReduction_402 :: forall t. t -> HappyAbsSyn
happyReduction_403 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_404 :: forall t. t -> HappyAbsSyn
happyReduction_405 :: forall t. t -> HappyAbsSyn
happyReduction_406 :: forall t. t -> HappyAbsSyn
happyReduction_407 :: forall t. t -> HappyAbsSyn
happyReduction_408 :: forall t. t -> HappyAbsSyn
happyReduction_409 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_41 :: HappyAbsSyn
happyReduction_410 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_411 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_412 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_413 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_414 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_415 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_416 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_417 :: forall t t1. t -> t1 -> P HappyAbsSyn
happyReduction_418 :: forall t. t -> HappyAbsSyn
happyReduction_419 :: forall t t1.
HappyStk t1 -> t -> P HappyAbsSyn
happyReduction_42 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_420 :: forall t t1. t -> t1 -> P HappyAbsSyn
happyReduction_421 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_422 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_423 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_424 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_425 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_426 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_427 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_43 :: HappyAbsSyn
happyReduction_44 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_45 :: forall t t1. t -> t1 -> HappyAbsSyn
happyReduction_46 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_47 :: forall t t1 t2. t -> t1 -> t2 -> HappyAbsSyn
happyReduction_48 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_49 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_5 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_50 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_51 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_52 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_53 :: forall t t1.
t -> t1 -> HappyAbsSyn -> HappyAbsSyn
happyReduction_54 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_55 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_56 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_57 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_58 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_59 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_6 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_60 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_61 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_62 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_63 :: HappyAbsSyn
happyReduction_64 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_65 :: forall t. t -> HappyAbsSyn
happyReduction_66 :: forall t. t -> HappyAbsSyn
happyReduction_67 :: forall t. t -> HappyAbsSyn
happyReduction_68 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_69 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_7 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_70 :: forall t. t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_71 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_72 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_73 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_74 :: HappyAbsSyn
happyReduction_75 :: forall t t1.
t -> HappyAbsSyn -> t1 -> HappyAbsSyn
happyReduction_76 :: HappyAbsSyn
happyReduction_77 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_78 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_79 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_8 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_80 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_81 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_82 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_83 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_84 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_85 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_86 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_87 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_88 :: forall t.
HappyAbsSyn -> HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_89 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_9 :: forall t. HappyAbsSyn -> t -> HappyAbsSyn
happyReduction_90 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_91 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_92 :: forall t.
HappyStk HappyAbsSyn -> t -> P HappyAbsSyn
happyReduction_93 :: forall t.
t -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_94 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_95 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_96 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_97 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_98 :: forall t.
HappyAbsSyn -> t -> HappyAbsSyn -> HappyAbsSyn
happyReduction_99 :: forall t. t -> HappyAbsSyn -> HappyAbsSyn
happyReturn :: forall a. a -> P a
happyReturn1 :: forall a. a -> P a
happySeq :: forall a b. a -> b -> b
happyShift :: Happy_GHC_Exts.Int#
-> Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happySpecReduce_0 :: Happy_GHC_Exts.Int#
-> HappyAbsSyn
-> Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happySpecReduce_1 :: Happy_GHC_Exts.Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happySpecReduce_2 :: Happy_GHC_Exts.Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happySpecReduce_3 :: Happy_GHC_Exts.Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Happy_GHC_Exts.Int#
-> Token
-> Happy_GHC_Exts.Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> P HappyAbsSyn
happyTable :: HappyAddr
happyTcHack :: forall a. Happy_GHC_Exts.Int# -> a -> a
happyThen :: forall a b. P a -> (a -> P b) -> P b
happyThen1 :: forall a b. P a -> (a -> P b) -> P b
happy_n_nonterms :: Int
happy_n_terms :: Int
hash_name :: Name
hiding_name :: Name
indexShortOffAddr :: HappyAddr
-> Happy_GHC_Exts.Int# -> Happy_GHC_Exts.Int#
list_tycon :: HsType
list_tycon_name :: Name
main_mod :: Module
minus_name :: Name
notHappyAtAll :: forall a. a
parse :: P HsModule
parseHsStmt :: P HsStmt
pling_name :: Name
prelude_mod :: Module
qualified_name :: Name
readInteger :: forall a b. (Integral a, Num b) => a -> b
readRational :: forall t. t -> t
star_name :: Name
toUnqualName :: forall t. ToName (Maybe Module, t) => t -> Name
tuple_con :: Int -> HsExp
tuple_con_name :: Int -> Name
tuple_tycon_name :: Int -> Name
unit_con :: HsExp
unit_tycon_name :: Name
TYPE CONSTRUCTORS
newtype HappyAbsSyn
RecFlag NonRecursive
= HappyAbsSyn :: HappyAny -> HappyAbsSyn Stricts: _
FamilyInstance: none
data HappyAddr
RecFlag NonRecursive
= HappyA# :: Happy_GHC_Exts.Addr# -> HappyAddr Stricts: _
FamilyInstance: none
type HappyAny
= Happy_GHC_Exts.Any *
FamilyInstance: none
data HappyStk a
RecFlag Recursive
= HappyStk :: forall a. a -> (HappyStk a) -> HappyStk a
Stricts: _ _
FamilyInstance: none
data Happy_IntList
RecFlag Recursive
= HappyCons :: Happy_GHC_Exts.Int# -> Happy_IntList
-> Happy_IntList
Stricts: _ _
FamilyInstance: none
COERCION AXIOMS
axiom FrontEnd.HsParser.NTCo:HappyAbsSyn []
:: HappyAbsSyn ~# HappyAny
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.HsSyn, False),
(FrontEnd.Lexer, False), (FrontEnd.ParseMonad, False),
(FrontEnd.ParseUtils, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Warning, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (StringTable.Atom, False),
(Support.IniParse, False), (Support.TempDir, False),
(System, False), (Time, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.SetLike, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[115 of 182] Compiling DerivingDrift.Drift ( src/DerivingDrift/Drift.hs, src/DerivingDrift/Drift.o )
TYPE SIGNATURES
derive :: Bool -> Data -> Name -> [Char]
driftDerive :: HsModule -> [HsDecl]
driftDerive' :: forall (m :: * -> *). Monad m => HsDecl -> m String
shortRuleNames :: Map.Map
String (Data -> Text.PrettyPrint.HughesPJ.Doc)
toData :: HsName -> [HsName] -> [HsConDecl] -> [HsName] -> Data
unrenameTyVars :: Data -> Data
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(DerivingDrift.DataP, False), (DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsParser, False), (FrontEnd.HsSyn, False),
(FrontEnd.KindInfer, False), (FrontEnd.Lexer, False),
(FrontEnd.ParseMonad, False), (FrontEnd.ParseUtils, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Type, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (Ratio, False), (RawFiles, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Unparse, False), (System, False),
(Time, False), (Util.ContextMonad, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Inst, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[116 of 182] Compiling FrontEnd.Rename ( src/FrontEnd/Rename.hs, src/FrontEnd/Rename.o )
TYPE SIGNATURES
FrontEnd.Rename.$con2tag_Context :: Context
-> ghc-prim:GHC.Prim.Int#
FrontEnd.Rename.$dmgetNames :: forall a.
UpdateTable a =>
a -> [Name]
FrontEnd.Rename.$dmrename :: forall a. Rename a => a -> RM a
addTopLevels :: forall a. HsModule -> RM a -> RM a
ambig :: forall a a1. (Show a1, Show a) => a -> [a1] -> [Char]
buildRecConstr :: FieldMap -> Name -> [HsFieldUpdate] -> RM HsExp
buildRecPat :: FieldMap -> Name -> [HsPatField] -> RM HsPat
buildRecUpdate :: FieldMap -> HsExp -> [HsFieldUpdate] -> RM HsExp
checkExportSpec :: HsExportSpec -> RM ()
clobberName :: Name -> RM SubTable
clobberedName :: Name -> RM Name
collectDefsHsModule :: HsModule
-> ([(Name, SrcLoc, [Name])], [(Name, Int)])
createError :: forall (m :: * -> *).
MonadSrcLoc m =>
HsErrorType -> [Char] -> m HsExp
createSelectors :: SrcLoc -> [HsConDecl] -> RM [HsDecl]
desugarEnum :: forall a. ToName a => a -> [HsExp] -> HsExp
envFieldLabels :: Env -> FieldMap
envModule :: Env -> Module
envNameMap :: Env -> Map.Map Name (Either String Name)
envOptions :: Env -> Opt
envSrcLoc :: Env -> SrcLoc
expandTypeSigs :: [HsDecl] -> [HsDecl]
f_fromRational :: HsExp
failRename :: forall (m :: * -> *) b.
MonadSrcLoc m =>
[Char] -> m b
getCurrentModule :: RM Module
getNamesAndASrcLocsFromHsDecl :: HsDecl -> [(Name, SrcLoc)]
getNamesAndASrcLocsFromHsStmt :: HsStmt -> [(Name, SrcLoc)]
getTypeClassModule :: HsClassHead -> Maybe Module
getUpdates :: forall a. UpdateTable a => a -> RM SubTable
getUpdatesN :: forall a.
UpdateTable a =>
NameType -> a -> RM SubTable
newVar :: RM Name
qualifyInstMethod :: Maybe Module -> HsDecl -> RM HsDecl
qualifyMethodName :: Module -> Name -> Name
renameAndQualify :: Name -> Int -> Module -> Name
renameDecls :: HsModule -> RM HsModule
renameHsDecl :: HsDecl -> RM HsDecl
renameHsDecls :: Context -> [HsDecl] -> RM [HsDecl]
renameHsStmts :: forall a. [HsStmt] -> RM a -> RM ([HsStmt], a)
renameHsType' :: Bool -> HsType -> RM HsType
renameKindHsCon :: HsConDecl -> RM HsConDecl
renameKindName :: Name -> RM Name
renameModule :: forall (m :: * -> *).
MonadWarn m =>
Opt
-> FieldMap
-> [(Name, [Name])]
-> HsModule
-> m ((HsModule, [HsDecl]), Map.Map Name Name)
renameName :: Name -> RM Name
renameStatement :: forall (m :: * -> *).
MonadWarn m =>
FieldMap -> [(Name, [Name])] -> Module -> HsStmt -> m HsStmt
renameTypeName :: Name -> RM Name
renameValName :: Name -> RM Name
runRename :: forall (m :: * -> *) a b.
MonadWarn m =>
(a -> RM b)
-> Opt
-> Module
-> FieldMap
-> [(Name, [Name])]
-> a
-> m (b, Map.Map Name Name)
unRM :: forall t.
RM t -> RWS Env (Map.Map Name Name, [Warning]) ScopeState t
unRename :: Name -> Name
unRenameString :: String -> String
updateWith :: forall b a. UpdateTable a => a -> RM b -> RM b
updateWithN :: forall b a.
UpdateTable a =>
NameType -> a -> RM b -> RM b
withSubTable :: forall a. SubTable -> RM a -> RM a
TYPE CONSTRUCTORS
data Context
RecFlag NonRecursive
= ContextTopLevel :: Context |
ContextInstance :: Name -> Context HasWrapper Stricts: ! |
ContextLocal :: Context
FamilyInstance: none
class DeNameable a
RecFlag NonRecursive
deName :: Module -> a -> a
data Env
RecFlag NonRecursive
= Env :: Module -> (Map.Map Name (Either String Name)) -> Opt
-> FieldMap -> SrcLoc -> Env
Stricts: _ _ _ _ _
Fields: envModule envNameMap envOptions envFieldLabels envSrcLoc
FamilyInstance: none
data FieldMap
RecFlag NonRecursive
= FieldMap :: (Map.Map Name Int) -> (Map.Map Name [(Name, Int)])
-> FieldMap
HasWrapper
Stricts: ! !
FamilyInstance: none
newtype RM a
RecFlag NonRecursive
= RM :: forall a.
(RWS Env (Map.Map Name Name, [Warning]) ScopeState a) -> RM a
Stricts: _
FamilyInstance: none
class Rename a
RecFlag NonRecursive
rename {- Has default method -} :: a -> RM a
newtype ScopeState
RecFlag NonRecursive
= ScopeState :: Int -> ScopeState Stricts: _
FamilyInstance: none
type SubTable
= Map.Map Name Name
FamilyInstance: none
class UpdateTable a
RecFlag NonRecursive
getNames {- Has default method -} :: a -> [Name]
COERCION AXIOMS
axiom FrontEnd.Rename.NTCo:ScopeState [] :: ScopeState ~# Int
axiom FrontEnd.Rename.NTCo:UpdateTable [a]
:: UpdateTable a ~# (a -> [Name])
axiom FrontEnd.Rename.NTCo:RM []
:: RM
~#
RWST Env (Map.Map Name Name, [Warning]) ScopeState Identity
axiom FrontEnd.Rename.NTCo:Rename [a] :: Rename a ~# (a -> RM a)
axiom FrontEnd.Rename.NTCo:DeNameable [a]
:: DeNameable a ~# (Module -> a -> a)
INSTANCES
instance [overlap ok] Eq Context
-- Defined at src/FrontEnd/Rename.hs:57:14
instance [overlap ok] Monad RM
-- Defined at src/FrontEnd/Rename.hs:785:14
instance [overlap ok] Functor RM
-- Defined at src/FrontEnd/Rename.hs:785:20
instance [overlap ok] MonadReader Env RM
-- Defined at src/FrontEnd/Rename.hs:785:28
instance [overlap ok] MonadWriter (Map.Map Name Name, [Warning]) RM
-- Defined at src/FrontEnd/Rename.hs:785:45
instance [overlap ok] MonadState ScopeState RM
-- Defined at src/FrontEnd/Rename.hs:785:88
instance [overlap ok] DeNameable HsExp
-- Defined at src/FrontEnd/Rename.hs:844:10
instance [overlap ok] DeNameable HsAlt
-- Defined at src/FrontEnd/Rename.hs:841:10
instance [overlap ok] DeNameable HsPat
-- Defined at src/FrontEnd/Rename.hs:826:10
instance [overlap ok] DeNameable Name
-- Defined at src/FrontEnd/Rename.hs:818:10
instance [overlap ok] (Functor f, DeNameable a) => DeNameable (f a)
-- Defined at src/FrontEnd/Rename.hs:815:10
instance [overlap ok] OptionMonad RM
-- Defined at src/FrontEnd/Rename.hs:809:10
instance [overlap ok] MonadSetSrcLoc RM
-- Defined at src/FrontEnd/Rename.hs:807:10
instance [overlap ok] MonadSrcLoc RM
-- Defined at src/FrontEnd/Rename.hs:805:10
instance [overlap ok] UniqueProducer RM
-- Defined at src/FrontEnd/Rename.hs:796:10
instance [overlap ok] MonadWarn RM
-- Defined at src/FrontEnd/Rename.hs:793:10
instance [overlap ok] Applicative RM
-- Defined at src/FrontEnd/Rename.hs:789:10
instance [overlap ok] UpdateTable HsType
-- Defined at src/FrontEnd/Rename.hs:711:10
instance [overlap ok] UpdateTable HsQualType
-- Defined at src/FrontEnd/Rename.hs:709:10
instance [overlap ok] UpdateTable HsStmt
-- Defined at src/FrontEnd/Rename.hs:707:10
instance [overlap ok] UpdateTable HsPat
-- Defined at src/FrontEnd/Rename.hs:705:10
instance [overlap ok] UpdateTable HsDecl
-- Defined at src/FrontEnd/Rename.hs:703:10
instance [overlap ok] UpdateTable Name
-- Defined at src/FrontEnd/Rename.hs:699:10
instance [overlap ok] (UpdateTable a, UpdateTable b) =>
UpdateTable (a, b)
-- Defined at src/FrontEnd/Rename.hs:696:10
instance [overlap ok] UpdateTable a => UpdateTable [a]
-- Defined at src/FrontEnd/Rename.hs:694:10
instance [overlap ok] Rename HsFieldUpdate
-- Defined at src/FrontEnd/Rename.hs:620:10
instance [overlap ok] Rename HsStmt
-- Defined at src/FrontEnd/Rename.hs:607:10
instance [overlap ok] Rename HsAlt
-- Defined at src/FrontEnd/Rename.hs:582:10
instance [overlap ok] Rename HsExp
-- Defined at src/FrontEnd/Rename.hs:482:10
instance [overlap ok] Rename HsGuardedRhs
-- Defined at src/FrontEnd/Rename.hs:466:10
instance [overlap ok] Rename HsRhs
-- Defined at src/FrontEnd/Rename.hs:462:10
instance [overlap ok] Rename HsPatField
-- Defined at src/FrontEnd/Rename.hs:455:10
instance [overlap ok] Rename HsPat
-- Defined at src/FrontEnd/Rename.hs:425:10
instance [overlap ok] Rename HsMatch
-- Defined at src/FrontEnd/Rename.hs:413:10
instance [overlap ok] Rename HsTyVarBind
-- Defined at src/FrontEnd/Rename.hs:406:10
instance [overlap ok] Rename a => Rename (Maybe a)
-- Defined at src/FrontEnd/Rename.hs:402:10
instance [overlap ok] (Rename a, Rename b) => Rename (a, b)
-- Defined at src/FrontEnd/Rename.hs:399:10
instance [overlap ok] Rename a => Rename [a]
-- Defined at src/FrontEnd/Rename.hs:396:10
instance [overlap ok] Rename SrcLoc
-- Defined at src/FrontEnd/Rename.hs:394:10
instance [overlap ok] Rename x => Rename (Located x)
-- Defined at src/FrontEnd/Rename.hs:391:10
instance [overlap ok] Rename HsType
-- Defined at src/FrontEnd/Rename.hs:358:10
instance [overlap ok] Rename HsBangType
-- Defined at src/FrontEnd/Rename.hs:354:10
instance [overlap ok] Rename HsConDecl
-- Defined at src/FrontEnd/Rename.hs:322:10
instance [overlap ok] Rename HsAsst
-- Defined at src/FrontEnd/Rename.hs:315:10
instance [overlap ok] Rename HsQualType
-- Defined at src/FrontEnd/Rename.hs:311:10
instance [overlap ok] Rename HsRule
-- Defined at src/FrontEnd/Rename.hs:299:10
instance [overlap ok] Rename HsClassHead
-- Defined at src/FrontEnd/Rename.hs:295:10
instance [overlap ok] Rename HsDecl
-- Defined at src/FrontEnd/Rename.hs:191:10
instance [overlap ok] Monoid FieldMap
-- Defined at src/FrontEnd/Rename.hs:44:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.Desugar, False), (FrontEnd.HsErrors, False),
(FrontEnd.HsParser, False), (FrontEnd.HsSyn, False),
(FrontEnd.KindInfer, False), (FrontEnd.Lexer, False),
(FrontEnd.ParseMonad, False), (FrontEnd.ParseUtils, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.ContextMonad, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Inst, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[117 of 182] Compiling FrontEnd.HsPretty ( src/FrontEnd/HsPretty.hs, src/FrontEnd/HsPretty.o )
TYPE SIGNATURES
$$ :: Doc -> Doc -> Doc
$$$ :: Doc -> Doc -> Doc
FrontEnd.HsPretty.$con2tag_PPLayout :: PPLayout
-> ghc-prim:GHC.Prim.Int#
body :: (PPHsMode -> Int) -> [Doc] -> Doc
braceList :: [Doc] -> Doc
braces :: Doc -> Doc
bracketList :: [Doc] -> Doc
brackets :: Doc -> Doc
caseIndent :: PPHsMode -> Indent
classIndent :: PPHsMode -> Indent
comma :: Doc
comments :: PPHsMode -> Bool
defaultMode :: PPHsMode
doIndent :: PPHsMode -> Indent
double :: Double -> Doc
dropAs :: HsExp -> HsExp
equals :: Doc
float :: Float -> Doc
fsep :: [Doc] -> Doc
getPPEnv :: forall s. DocM s s
int :: Int -> Doc
integer :: Integer -> Doc
isSymbolName :: HsName -> Bool
layout :: PPHsMode -> PPLayout
layoutChoice :: forall b t.
(t -> DocM PPHsMode b)
-> (t -> DocM PPHsMode b) -> t -> DocM PPHsMode b
letIndent :: PPHsMode -> Indent
maybePP :: forall a. (a -> Doc) -> Maybe a -> Doc
mprintExists :: HsConDecl -> Doc
myFsep :: [Doc] -> Doc
myFsepSimple :: [Doc] -> Doc
mySep :: [Doc] -> Doc
myVcat :: [Doc] -> Doc
nest :: Int -> Doc -> Doc
onsideIndent :: PPHsMode -> Indent
parenList :: [Doc] -> Doc
parenListzh :: [Doc] -> Doc
parens :: Doc -> Doc
parensIf :: Bool -> Doc -> Doc
parenszh :: forall (m :: * -> *). Monad m => m P.Doc -> m P.Doc
ppClassHead :: HsClassHead -> Doc
ppField :: ([HsName], HsBangType) -> Doc
ppGAlt :: HsGuardedRhs -> Doc
ppGAlts :: HsRhs -> Doc
ppHsAlt :: HsAlt -> Doc
ppHsAsst :: HsAsst -> Doc
ppHsBangType :: HsBangType -> Doc
ppHsConstr :: HsConDecl -> Doc
ppHsContext :: HsContext -> Doc
ppHsDecl :: HsDecl -> Doc
ppHsDecls :: [HsDecl] -> Doc
ppHsDeriving :: [HsName] -> Doc
ppHsExp :: HsExp -> Doc
ppHsExportSpec :: HsExportSpec -> Doc
ppHsFieldUpdate :: HsFieldUpdate -> Doc
ppHsGuardedRhs :: HsGuardedRhs -> Doc
ppHsImportDecl :: HsImportDecl -> Doc
ppHsLit :: HsLiteral -> Doc
ppHsModule :: HsModule -> Doc
ppHsModuleHeader :: Module -> Maybe [HsExportSpec] -> Doc
ppHsName :: HsName -> Doc
ppHsNameInfix :: HsName -> Doc
ppHsNameParen :: HsName -> Doc
ppHsPat :: HsPat -> Doc
ppHsPatField :: HsPatField -> Doc
ppHsQName :: HsName -> Doc
ppHsQNameInfix :: HsName -> Doc
ppHsQNameParen :: HsName -> Doc
ppHsQualType :: HsQualType -> Doc
ppHsRhs :: HsRhs -> Doc
ppHsRule :: HsRule -> Doc
ppHsStmt :: HsStmt -> Doc
ppHsTName :: (HsName, Maybe HsType) -> Doc
ppHsType :: HsType -> Doc
ppHsTypeArg :: HsType -> Doc
ppHsTypePrec :: Int -> HsType -> Doc
ppMatch :: HsMatch -> Doc
ppWhere :: [HsDecl] -> Doc
punctuate :: Doc -> [Doc] -> [Doc]
render :: Doc -> String
renderWithMode :: PPHsMode -> Doc -> String
retDocM :: forall s a. a -> DocM s a
semi :: Doc
spacing :: PPHsMode -> Bool
thenDocM :: forall a a1 s.
DocM s a1 -> (a1 -> DocM s a) -> DocM s a
then_DocM :: forall a a1 s. DocM s a1 -> DocM s a -> DocM s a
topLevel :: Doc -> [Doc] -> Doc
tshow :: NameType -> Doc
unDocM :: forall s a. DocM s a -> s -> a
whereIndent :: PPHsMode -> Indent
TYPE CONSTRUCTORS
type Doc
= DocM PPHsMode P.Doc
FamilyInstance: none
newtype DocM s a
RecFlag NonRecursive
= DocM :: forall s a. (s -> a) -> DocM s a Stricts: _
FamilyInstance: none
type Indent
= Int
FamilyInstance: none
data PPHsMode
RecFlag NonRecursive
= PPHsMode :: Indent -> Indent -> Indent -> Indent -> Indent
-> Indent -> Bool -> PPLayout -> Bool -> PPHsMode
Stricts: _ _ _ _ _ _ _ _ _
Fields: classIndent doIndent caseIndent letIndent whereIndent onsideIndent spacing layout comments
FamilyInstance: none
data PPLayout
RecFlag NonRecursive
= PPOffsideRule :: PPLayout |
PPSemiColon :: PPLayout |
PPInLine :: PPLayout |
PPNoLayout :: PPLayout
FamilyInstance: none
COERCION AXIOMS
axiom FrontEnd.HsPretty.NTCo:DocM [] :: DocM ~# (->)
INSTANCES
instance [overlap ok] Eq PPLayout
-- Defined at src/FrontEnd/HsPretty.hs:47:24
instance [overlap ok] P.PPrint P.Doc HsPat
-- Defined at src/FrontEnd/HsPretty.hs:706:10
instance [overlap ok] P.PPrint P.Doc HsTyVarBind
-- Defined at src/FrontEnd/HsPretty.hs:703:10
instance [overlap ok] P.PPrint P.Doc HsQualType
-- Defined at src/FrontEnd/HsPretty.hs:700:10
instance [overlap ok] P.PPrint P.Doc HsType
-- Defined at src/FrontEnd/HsPretty.hs:697:10
instance [overlap ok] P.PPrint P.Doc HsExp
-- Defined at src/FrontEnd/HsPretty.hs:694:10
instance [overlap ok] P.PPrint P.Doc HsDecl
-- Defined at src/FrontEnd/HsPretty.hs:691:10
instance [overlap ok] DocLike d => P.PPrint d HsKind
-- Defined at src/FrontEnd/HsPretty.hs:410:10
instance [overlap ok] P.PPrint Doc HsType
-- Defined at src/FrontEnd/HsPretty.hs:369:10
instance [overlap ok] DocLike Doc
-- Defined at src/FrontEnd/HsPretty.hs:148:10
instance [overlap ok] TextLike Doc
-- Defined at src/FrontEnd/HsPretty.hs:113:10
instance [overlap ok] Monad (DocM s)
-- Defined at src/FrontEnd/HsPretty.hs:80:10
instance [overlap ok] Functor (DocM s)
-- Defined at src/FrontEnd/HsPretty.hs:77:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.Desugar, False), (FrontEnd.HsErrors, False),
(FrontEnd.HsParser, False), (FrontEnd.HsSyn, False),
(FrontEnd.KindInfer, False), (FrontEnd.Lexer, False),
(FrontEnd.ParseMonad, False), (FrontEnd.ParseUtils, False),
(FrontEnd.Rename, False), (FrontEnd.Representation, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Syn.Traverse, False),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Type, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (Ratio, False), (RawFiles, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Unparse, False), (System, False),
(Time, False), (Util.ContextMonad, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Inst, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[118 of 182] Compiling FrontEnd.Tc.Monad ( drift_processed/FrontEnd/Tc/Monad.hs, src/FrontEnd/Tc/Monad.o )
TYPE SIGNATURES
addCoerce :: Name -> CoerceTerm -> Tc ()
addPreds :: Preds -> Tc ()
addRule :: Rule -> Tc ()
addToCollectedEnv :: TypeEnv -> Tc ()
askCurrentEnv :: Tc (Map.Map Name Sigma)
boxyInstantiate :: Sigma -> Tc ([Type], Rho')
boxySpec :: Sigma -> Tc ([(BoundTV, [Sigma'])], Rho')
checkedRules :: Output -> Seq.Seq Rule
collectedPreds :: Output -> Preds
constraints :: Output -> Seq.Seq Constraint
deconstructorInstantiate :: Sigma -> Tc Rho'
evalArrowApp :: forall (m :: * -> *). Monad m => Type -> m Type
evalFullType :: forall (m :: * -> *).
(MonadIO m, MonadReader TcEnv m) =>
Type -> m Type
evalTAssoc :: forall (m :: * -> *).
(MonadIO m, MonadReader TcEnv m) =>
Type -> m Type
evalType :: forall (m :: * -> *).
(MonadIO m, MonadReader TcEnv m) =>
Type -> m Type
existentialPreds :: Output -> Preds
existentialVars :: Output -> [Tyvar]
fixKind :: Kind -> Kind
freeMetaVarsEnv :: Tc (Set.Set MetaVar)
freshInstance :: MetaVarType -> Sigma -> Tc ([Type], Rho)
freshSigma :: Sigma -> Tc Sigma
getClassHierarchy :: Tc ClassHierarchy
getCollectedCoerce :: Tc (Map.Map Name CoerceTerm)
getCollectedEnv :: Tc TypeEnv
getDeName :: forall n. DeNameable n => Tc (n -> n)
getErrorContext :: Tc [Diagnostic]
getKindEnv :: Tc KindEnv
getSigEnv :: Tc TypeEnv
groundKind :: MetaVar -> Tc MetaVar
listenCPreds :: forall a. Tc a -> Tc (a, (Preds, [Constraint]))
listenCheckedRules :: forall a. Tc a -> Tc (a, [Rule])
listenPreds :: forall a. Tc a -> Tc (a, Preds)
localEnv :: forall a. TypeEnv -> Tc a -> Tc a
lookupName :: Name -> Tc Sigma
newBox :: Kind -> Tc Type
newMetaVar :: MetaVarType -> Kind -> Tc Type
newVar :: Kind -> Tc Tyvar
outKnots :: Output -> [(Name, Name)]
quantify :: [MetaVar] -> [Pred] -> Rho -> Tc Sigma
quantify_n :: [MetaVar] -> [Pred] -> [Rho] -> Tc [Sigma]
readFilledBox :: MetaVar -> Tc Type
runTc :: forall (m :: * -> *) a.
(MonadIO m, OptionMonad m) =>
TcInfo -> Tc a -> m a
skolomize :: Sigma -> Tc ([Tyvar], [Pred], Type)
tcCollectedCoerce :: TcEnv -> IORef (Map.Map Name CoerceTerm)
tcCollectedEnv :: TcEnv -> IORef (Map.Map Name Sigma)
tcConcreteEnv :: TcEnv -> Map.Map Name Sigma
tcConcreteEnv_u :: (Map.Map Name Sigma -> Map.Map Name Sigma)
-> TcEnv -> TcEnv
tcCurrentScope :: TcEnv -> Set.Set MetaVar
tcDiagnostics :: TcEnv -> [Diagnostic]
tcDiagnostics_u :: ([Diagnostic] -> [Diagnostic]) -> TcEnv -> TcEnv
tcInfo :: TcEnv -> TcInfo
tcInfoClassHierarchy :: TcInfo -> ClassHierarchy
tcInfoEmpty :: TcInfo
tcInfoEnv :: TcInfo -> TypeEnv
tcInfoKindInfo :: TcInfo -> KindEnv
tcInfoModName :: TcInfo -> Module
tcInfoSigEnv :: TcInfo -> TypeEnv
tcInstanceEnv :: TcEnv -> InstanceEnv
tcMutableEnv :: TcEnv -> Map.Map Name Sigma
tcMutableEnv_u :: (Map.Map Name Sigma -> Map.Map Name Sigma)
-> TcEnv -> TcEnv
tcOptions :: TcEnv -> Opt
tcRecursiveCalls :: TcEnv -> Set.Set Name
tcRecursiveCalls_u :: (Set.Set Name -> Set.Set Name)
-> TcEnv -> TcEnv
tcVarnum :: TcEnv -> IORef Int
tcWarnings :: Output -> Seq.Seq Warning
toSigma :: Sigma -> Sigma
unBox :: Type -> Tc Type
unificationError :: forall b. Type -> Type -> Tc b
varBind :: MetaVar -> Type -> Tc ()
withContext :: forall a. Diagnostic -> Tc a -> Tc a
withMetaVars :: forall a.
MetaVar
-> [Kind] -> ([Sigma] -> Sigma) -> ([Sigma'] -> Tc a) -> Tc a
zonkBox :: MetaVar -> Tc Type
zonkKind :: Kind -> MetaVar -> Tc MetaVar
TYPE CONSTRUCTORS
class Instantiate a
RecFlag NonRecursive
inst :: Map.Map Int Type -> Map.Map Name Type -> a -> a
data Output
RecFlag NonRecursive
= Output :: Preds -> Preds -> (Seq.Seq Constraint)
-> (Seq.Seq Rule) -> [Tyvar] -> (Seq.Seq Warning) -> [(Name, Name)]
-> Output
HasWrapper
Stricts: ! ! ! ! _ ! _
Fields: collectedPreds existentialPreds constraints checkedRules existentialVars tcWarnings outKnots
FamilyInstance: none
newtype Tc a
RecFlag NonRecursive
= Tc :: forall a. (ReaderT TcEnv (WriterT Output IO) a) -> Tc a
Stricts: _
FamilyInstance: none
data TcEnv
RecFlag NonRecursive
= TcEnv :: TcInfo -> [Diagnostic] -> (IORef Int)
-> (IORef (Map.Map Name Sigma))
-> (IORef (Map.Map Name CoerceTerm)) -> (Map.Map Name Sigma)
-> (Map.Map Name Sigma) -> (Set.Set MetaVar) -> (Set.Set Name)
-> InstanceEnv -> Opt -> TcEnv
HasWrapper
Stricts: _ _ {-# UNPACK #-} ! {-# UNPACK #-} ! {-# UNPACK #-} ! _ _ _ _ _ _
Fields: tcInfo tcDiagnostics tcVarnum tcCollectedEnv tcCollectedCoerce tcConcreteEnv tcMutableEnv tcCurrentScope tcRecursiveCalls tcInstanceEnv tcOptions
FamilyInstance: none
data TcInfo
RecFlag NonRecursive
= TcInfo :: TypeEnv -> TypeEnv -> Module -> KindEnv
-> ClassHierarchy -> TcInfo
Stricts: _ _ _ _ _
Fields: tcInfoEnv tcInfoSigEnv tcInfoModName tcInfoKindInfo tcInfoClassHierarchy
FamilyInstance: none
type TypeEnv
= Map.Map Name Sigma
FamilyInstance: none
COERCION AXIOMS
axiom FrontEnd.Tc.Monad.NTCo:Tc []
:: Tc ~# ReaderT TcEnv (WriterT Output IO)
axiom FrontEnd.Tc.Monad.NTCo:Instantiate [a]
:: Instantiate a
~#
(Map.Map Int Type -> Map.Map Name Type -> a -> a)
INSTANCES
instance [overlap ok] MonadFix Tc
-- Defined at src/FrontEnd/Tc/Monad.hs:120:14
instance [overlap ok] MonadIO Tc
-- Defined at src/FrontEnd/Tc/Monad.hs:120:23
instance [overlap ok] MonadReader TcEnv Tc
-- Defined at src/FrontEnd/Tc/Monad.hs:120:31
instance [overlap ok] MonadWriter Output Tc
-- Defined at src/FrontEnd/Tc/Monad.hs:120:49
instance [overlap ok] Functor Tc
-- Defined at src/FrontEnd/Tc/Monad.hs:120:68
instance [overlap ok] Monoid Output
-- Defined at src/FrontEnd/Tc/Monad.hs:566:10
instance [overlap ok] UniqueProducer Tc
-- Defined at src/FrontEnd/Tc/Monad.hs:537:10
instance [overlap ok] MonadSrcLoc Tc
-- Defined at src/FrontEnd/Tc/Monad.hs:530:10
instance [overlap ok] MonadWarn Tc
-- Defined at src/FrontEnd/Tc/Monad.hs:527:10
instance [overlap ok] Monad Tc
-- Defined at src/FrontEnd/Tc/Monad.hs:517:10
instance [overlap ok] Instantiate Pred
-- Defined at src/FrontEnd/Tc/Monad.hs:297:10
instance [overlap ok] Instantiate t => Instantiate (Qual t)
-- Defined at src/FrontEnd/Tc/Monad.hs:294:10
instance [overlap ok] Instantiate a => Instantiate [a]
-- Defined at src/FrontEnd/Tc/Monad.hs:291:10
instance [overlap ok] Instantiate Type
-- Defined at src/FrontEnd/Tc/Monad.hs:277:10
instance [overlap ok] OptionMonad Tc
-- Defined at src/FrontEnd/Tc/Monad.hs:198:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.Desugar, False), (FrontEnd.Diagnostic, False),
(FrontEnd.HsErrors, False), (FrontEnd.HsParser, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Lexer, False), (FrontEnd.ParseMonad, False),
(FrontEnd.ParseUtils, False), (FrontEnd.Rename, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Class, True),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Type, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (Ratio, False), (RawFiles, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Unparse, False), (System, False),
(Time, False), (Util.ContextMonad, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Inst, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[119 of 182] Compiling FrontEnd.Tc.Class ( src/FrontEnd/Tc/Class.hs, src/FrontEnd/Tc/Class.o )
TYPE SIGNATURES
ambig :: ClassHierarchy
-> Set.Set MetaVar -> [Pred] -> [(MetaVar, [Pred], [Type])]
assertEntailment :: Preds -> Preds -> Tc ()
assertEquivalant :: Preds -> Preds -> Tc ()
byInst :: forall (m :: * -> *). Monad m => Pred -> Inst -> m [Pred]
bySuper :: ClassHierarchy -> Pred -> [Pred]
defaults :: [Type]
defs :: ClassHierarchy -> MetaVar -> [Pred] -> [Type]
entails :: ClassHierarchy -> [Pred] -> Pred -> Bool
freeMetaVarsPred :: Pred -> Set.Set MetaVar
freeMetaVarsPreds :: Preds -> Set.Set MetaVar
genDefaults :: ClassHierarchy
-> Set.Set MetaVar -> [Pred] -> ([Pred], [(MetaVar, Type)])
generalize :: [Pred] -> Rho -> Tc Sigma
inHnf :: Pred -> Bool
instsOf :: ClassHierarchy -> Class -> [Inst]
match :: forall (m :: * -> *).
Monad m =>
Type -> Type -> m [(Tyvar, Type)]
match' :: forall (m :: * -> *).
Monad m =>
Type -> Type -> m [(Tyvar, Type)]
matchPred :: forall (m :: * -> *).
Monad m =>
Pred -> Pred -> m [(Tyvar, Type)]
numClasses :: [Name]
reducePred :: forall (m :: * -> *).
Monad m =>
ClassHierarchy -> Pred -> m [Pred]
simplify :: ClassHierarchy -> [Pred] -> [Pred]
splitPreds :: forall (m :: * -> *).
Monad m =>
ClassHierarchy -> Set.Set MetaVar -> Preds -> m (Preds, Preds)
splitReduce :: Set.Set MetaVar
-> Set.Set MetaVar -> [Pred] -> Tc ([MetaVar], [Pred], [Pred])
stdClasses :: [Name]
supersOf :: ClassHierarchy -> Class -> [Class]
toHnf :: forall (m :: * -> *).
Monad m =>
ClassHierarchy -> Pred -> m [Pred]
toHnfs :: forall (m :: * -> *).
Monad m =>
ClassHierarchy -> [Pred] -> m [Pred]
topDefaults :: [Pred] -> Tc ()
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.Desugar, False), (FrontEnd.Diagnostic, False),
(FrontEnd.HsErrors, False), (FrontEnd.HsParser, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Lexer, False), (FrontEnd.ParseMonad, False),
(FrontEnd.ParseUtils, False), (FrontEnd.Rename, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Class, True),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Monad, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.ContextMonad, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Inst, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[120 of 182] Compiling FrontEnd.Tc.Unify ( src/FrontEnd/Tc/Unify.hs, src/FrontEnd/Tc/Unify.o )
TYPE SIGNATURES
boxyMatch :: Sigma' -> Sigma' -> Tc ()
listenSolvePreds :: forall a. Tc a -> Tc (a, [Pred])
mgu :: Type -> Type -> Tc ()
occursCheck :: MetaVar -> Type -> Tc Type
ppretty :: forall a. DocLike a => Type -> a
pretty :: forall d. DocLike d => Type -> d
printRule :: String -> Tc ()
solveConstraints :: [Constraint] -> Tc ()
subsumes :: Sigma' -> Sigma' -> Tc CoerceTerm
unify :: Tau -> Tau -> Tc ()
var_meets_var :: MetaVar -> MetaVar -> Tc ()
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.Desugar, False), (FrontEnd.Diagnostic, False),
(FrontEnd.HsErrors, False), (FrontEnd.HsParser, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Lexer, False), (FrontEnd.ParseMonad, False),
(FrontEnd.ParseUtils, False), (FrontEnd.Rename, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Class, False),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Monad, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.ContextMonad, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Inst, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[121 of 182] Compiling FrontEnd.DeclsDepends ( src/FrontEnd/DeclsDepends.hs, src/FrontEnd/DeclsDepends.o )
TYPE SIGNATURES
debugDeclBindGroups :: [[HsDecl]] -> String
expDeps :: forall (m :: * -> *).
(MonadWriter [HsName] m, FrontEnd.SrcLoc.MonadSetSrcLoc m) =>
HsExp -> m ()
getAltDeps :: HsAlt -> [HsName]
getDeclDeps :: HsDecl -> [HsName]
getExpDeps :: HsExp -> [HsName]
getGAltsDeps :: HsGuardedRhs -> [HsName]
getGuardedAltsDeps :: HsRhs -> [HsName]
getGuardedRhsDeps :: HsGuardedRhs -> [HsName]
getLocalDeclDeps :: HsDecl -> [HsName]
getMatchDeps :: HsMatch -> [HsName]
getRhsDeps :: HsRhs -> [HsName]
getStmtDeps :: HsStmt -> [HsName]
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.DependAnalysis, False), (FrontEnd.Desugar, False),
(FrontEnd.HsErrors, False), (FrontEnd.HsParser, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Lexer, False), (FrontEnd.ParseMonad, False),
(FrontEnd.ParseUtils, False), (FrontEnd.Rename, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.ContextMonad, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Inst, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[122 of 182] Compiling FrontEnd.Tc.Main ( src/FrontEnd/Tc/Main.hs, src/FrontEnd/Tc/Main.o )
TYPE SIGNATURES
collectBindDecls :: [HsDecl] -> [HsDecl]
deNameContext :: forall a.
Maybe SrcLoc -> String -> HsExp -> Tc a -> Tc a
declDiagnostic :: HsDecl -> Diagnostic
delistPats :: [HsPat] -> HsPat
doCoerce :: CoerceTerm -> HsExp -> Tc HsExp
getBindGroups :: forall name node.
Ord name =>
[node] -> (node -> name) -> (node -> [name]) -> [[node]]
getFunDeclsBg :: TypeEnv -> [HsDecl] -> [BindGroup]
isTypePlaceholder :: HsName -> Bool
listenPreds :: forall a. Tc a -> Tc (a, [Pred])
makeBindGroup :: TypeEnv -> [HsDecl] -> BindGroup
makeBindGroup' :: forall t.
Map.Map Name t -> [HsDecl] -> ([(t, HsDecl)], [HsDecl])
makeProgram :: TypeEnv -> [[HsDecl]] -> [BindGroup]
nameOfMainFunc :: Tc Name
newHsVar :: forall (m :: * -> *).
UniqueProducer m =>
[Char] -> m Name
restricted :: Bool -> [HsDecl] -> Bool
tcAlt :: Sigma -> Sigma -> HsAlt -> Tc HsAlt
tcApp :: HsExp -> HsExp -> Type -> Tc (HsExp, HsExp)
tcApps :: HsExp -> [HsExp] -> Type -> Tc (HsExp, [HsExp])
tcApps' :: HsExp -> [HsExp] -> Type -> Tc (HsExp, [HsExp])
tcBindGroup :: BindGroup -> Tc ([HsDecl], TypeEnv)
tcDecl :: HsDecl -> Sigma -> Tc (HsDecl, TypeEnv)
tcExpr :: HsExp -> Type -> Tc HsExp
tcExprPoly :: HsExp -> Type -> Tc HsExp
tcGuardedAlt :: Type -> HsGuardedRhs -> Tc HsGuardedRhs
tcGuardedRhs :: Type -> HsGuardedRhs -> Tc HsGuardedRhs
tcKnownApp :: HsExp
-> Bool -> Name -> [HsExp] -> Type -> Tc (HsExp, [HsExp])
tcMatch :: HsMatch -> Sigma -> Tc HsMatch
tcMiscDecl :: HsDecl -> Tc [HsDecl]
tcPat :: HsPat -> Type -> Tc (HsPat, Map.Map Name Sigma)
tcRhs :: HsRhs -> Sigma -> Tc HsRhs
tcRule :: HsRule -> Tc HsRule
tcWheres :: [HsDecl] -> Tc ([HsDecl], TypeEnv)
tiExpl :: Expl -> Tc (HsDecl, TypeEnv)
tiExpr :: HsExp -> Type -> Tc HsExp
tiExprPoly :: HsExp -> Type -> Tc HsExp
tiImplGroups :: [Either HsDecl [HsDecl]] -> Tc ([HsDecl], TypeEnv)
tiImpls :: [HsDecl] -> Tc ([HsDecl], TypeEnv)
tiLit :: HsLiteral -> Tc Tau
tiNonRecImpl :: HsDecl -> Tc (HsDecl, TypeEnv)
tiPat :: HsPat -> Type -> Tc (HsPat, Map.Map Name Sigma)
tiProgram :: [BindGroup] -> [HsDecl] -> Tc [HsDecl]
tppretty :: forall a. DocLike a => Type -> a
tpretty :: forall d. DocLike d => Type -> d
typeOfMainFunc :: Tc Type
wrapInAsPat :: HsExp -> Tc (HsExp, Name)
wrapInAsPatEnv :: HsExp -> Type -> Tc HsExp
TYPE CONSTRUCTORS
type BindGroup
= ([Expl], [Either HsDecl [HsDecl]])
FamilyInstance: none
type Expl
= (Sigma, HsDecl)
FamilyInstance: none
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.DeclsDepends, False), (FrontEnd.DependAnalysis, False),
(FrontEnd.Desugar, False), (FrontEnd.Diagnostic, False),
(FrontEnd.HsErrors, False), (FrontEnd.HsParser, False),
(FrontEnd.HsPretty, False), (FrontEnd.HsSyn, False),
(FrontEnd.KindInfer, False), (FrontEnd.Lexer, False),
(FrontEnd.ParseMonad, False), (FrontEnd.ParseUtils, False),
(FrontEnd.Rename, False), (FrontEnd.Representation, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Syn.Traverse, False),
(FrontEnd.Tc.Class, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Monad, False), (FrontEnd.Tc.Type, False),
(FrontEnd.Tc.Unify, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.ContextMonad, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.Inst, False), (Util.Progress, False), (Util.Seq, False),
(Util.SetLike, False), (Util.VarName, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[123 of 182] Compiling E.E ( src/E/E.hs, src/E/E.o )
TYPE SIGNATURES
caseBodiesMap :: (E -> E) -> E -> E
caseBodiesMapM :: forall (m :: * -> *).
Monad m =>
(E -> m E) -> E -> m E
discardArgs :: Int -> E -> E
eLam :: TVr -> E -> E
ePi :: TVr -> E -> E
eToList :: forall (m :: * -> *). Monad m => E -> m [E]
fromConjured :: forall (m :: * -> *).
Monad m =>
Module -> Name -> m E
fromUnboxedTuple :: forall (m :: * -> *). Monad m => E -> m [E]
isBottom :: E -> Bool
isUnboxedTuple :: E -> Bool
isWHNF :: E -> Bool
lFalsezh :: forall e. Lit e E
lTruezh :: forall e. Lit e E
ltTuple :: [E] -> E
ltTuple' :: [E] -> E
modAbsurd :: Module
modBox :: Module
nameConjured :: Module -> E -> Name
p_dependingOn :: Prim
p_fromTag :: Prim
p_toTag :: Prim
p_unsafeCoerce :: Prim
tBits32zh :: E
tBoolzh :: E
tFunc :: E -> E -> E
tIntegerzh :: E
toString :: forall (m :: * -> *). Monad m => E -> m [Char]
tvrName :: forall (m :: * -> *). Monad m => TVr -> m Name
tvrShowName :: TVr -> String
tvrSilly :: TVr' E
TYPE CONSTRUCTORS
COERCION AXIOMS
INSTANCES
instance [overlap ok] Show e => Show (Alt e)
-- Defined at src/E/E.hs:203:10
instance [overlap ok] Show E -- Defined at src/E/E.hs:154:10
instance [overlap ok] ConNames (Lit E E)
-- Defined at src/E/E.hs:58:10
instance [overlap ok] ConNames E -- Defined at src/E/E.hs:53:10
instance [overlap ok] TypeNames E -- Defined at src/E/E.hs:36:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.DocLike, False),
(Doc.PPrint, False), (E.FreeVars, False), (E.Type, False),
(GenUtil, False), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Id, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (PackedString, False),
(Random, False), (Ratio, False), (StringTable.Atom, False),
(Support.FreeVars, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.NameMonad, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[124 of 182] Compiling DataConstructors[boot] ( drift_processed/DataConstructors.hs-boot, src/DataConstructors.o-boot )
TYPE SIGNATURES
TYPE CONSTRUCTORS
abstract(False) DataTable
RecFlag NonRecursive
FamilyInstance: none
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.DocLike, False),
(Doc.PPrint, False), (E.E, False), (E.FreeVars, False),
(E.Type, False), (GenUtil, False), (Info.Info, False),
(Info.Properties, False), (Info.Types, False), (List, False),
(Maybe, False), (Monad, False), (Name.Id, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (PackedString, False), (Random, False),
(Ratio, False), (StringTable.Atom, False),
(Support.FreeVars, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.NameMonad, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[125 of 182] Compiling E.Subst ( src/E/Subst.hs, src/E/Subst.o )
TYPE SIGNATURES
doSubst :: Bool -> Bool -> IdMap (Maybe E) -> E -> E
doSubst' :: Bool -> Bool -> IdMap E -> (Id -> Bool) -> E -> E
eAp :: E -> E -> E
litSMapM :: forall (m :: * -> *) a t.
Monad m =>
(a -> m t) -> Lit a a -> m (Lit t t)
mnv :: forall a.
Bool
-> Set.Set Id -> Id -> (Id -> Bool) -> Set.Set Id -> IdMap a -> Id
subst :: TVr -> E -> E -> E
subst' :: TVr -> E -> E -> E
substMap :: IdMap E -> E -> E
substMap' :: IdMap E -> E -> E
substMap'' :: IdMap (Maybe E) -> E -> E
typeSubst :: IdMap (Maybe E) -> IdMap E -> E -> E
typeSubst' :: IdMap E -> IdMap E -> E -> E
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.DocLike, False),
(Doc.PPrint, False), (E.E, False), (E.FreeVars, False),
(E.Type, False), (GenUtil, False), (Info.Info, False),
(Info.Properties, False), (Info.Types, False), (List, False),
(Maybe, False), (Monad, False), (Name.Id, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (PackedString, False), (Random, False),
(Ratio, False), (StringTable.Atom, False),
(Support.FreeVars, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.NameMonad, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[126 of 182] Compiling E.Show[boot] ( src/E/Show.hs-boot, src/E/Show.o-boot )
TYPE SIGNATURES
TYPE CONSTRUCTORS
COERCION AXIOMS
INSTANCES
instance [overlap ok] PPrint String (Lit E E)
-- Defined at src/E/Show.hs-boot:17:10
instance [overlap ok] PPrint String E
-- Defined at src/E/Show.hs-boot:16:10
instance [overlap ok] PPrint Doc E
-- Defined at src/E/Show.hs-boot:15:10
instance [overlap ok] DocLike d => PPrint d TVr
-- Defined at src/E/Show.hs-boot:14:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.DocLike, False),
(Doc.PPrint, False), (Doc.Pretty, False), (E.E, False),
(E.FreeVars, False), (E.Type, False), (GenUtil, False),
(IO, False), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Id, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (PackedString, False),
(Random, False), (Ratio, False), (StringTable.Atom, False),
(Support.FreeVars, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.NameMonad, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[127 of 182] Compiling E.Eval ( src/E/Eval.hs, src/E/Eval.o )
TYPE SIGNATURES
eval :: E -> E
strong :: forall (m :: * -> *). Monad m => [(TVr, E)] -> E -> m E
trace :: forall t t1. t -> t1 -> t1
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.DocLike, False),
(Doc.PPrint, False), (Doc.Pretty, False), (E.E, False),
(E.FreeVars, False), (E.Show, True), (E.Subst, False),
(E.Type, False), (GenUtil, False), (IO, False), (Info.Info, False),
(Info.Properties, False), (Info.Types, False), (List, False),
(Maybe, False), (Monad, False), (Name.Id, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (PackedString, False), (Random, False),
(Ratio, False), (StringTable.Atom, False),
(Support.FreeVars, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.NameMonad, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[128 of 182] Compiling E.TypeCheck ( drift_processed/E/TypeCheck.hs, src/E/TypeCheck.o )
TYPE SIGNATURES
canBeBox :: forall a.
(CanType a, CanType (TypeOf a), TypeOf (TypeOf a) ~ E) =>
a -> Bool
inferType :: forall (m :: * -> *).
(ContextMonad m, ContextOf m ~ String) =>
DataTable -> [(TVr, E)] -> E -> m E
infertype :: forall a. CanTypeCheck a => DataTable -> a -> E
match :: forall (m :: * -> *).
Monad m =>
(Id -> Maybe E) -> [TVr] -> E -> E -> m [(TVr, E)]
monadicLookup :: forall k (m :: * -> *) a.
(Monad m, Ord k) =>
k -> Map.Map k a -> m a
ptsAxioms :: Map.Map ESort ESort
ptsRulesMap :: Map.Map (ESort, ESort) ESort
sortKindLike :: E -> Bool
sortSortLike :: E -> Bool
sortTermLike :: E -> Bool
sortTypeLike :: E -> Bool
tBox :: E
tcContext :: TcEnv -> [String]
tcContext_u :: ([String] -> [String]) -> TcEnv -> TcEnv
typeInfer :: DataTable -> E -> E
typeInfer' :: DataTable -> [(TVr, E)] -> E -> E
typeInfer'' :: forall (m :: * -> *).
(ContextMonad m, ContextOf m ~ String) =>
DataTable -> [(TVr, E)] -> E -> m E
withContextDoc :: forall (m :: * -> *) a.
(ContextMonad m, ContextOf m ~ [Char]) =>
Doc -> m a -> m a
TYPE CONSTRUCTORS
class CanTypeCheck a
RecFlag NonRecursive
typecheck :: forall (m::* -> *). Monad m -> DataTable -> a -> m E
newtype Tc a
RecFlag NonRecursive
= Tc :: forall a. (Reader TcEnv a) -> Tc a Stricts: _
FamilyInstance: none
data TcEnv
RecFlag NonRecursive
= TcEnv :: [String] -> TcEnv Stricts: _ Fields: tcContext
FamilyInstance: none
COERCION AXIOMS
axiom E.TypeCheck.NTCo:CanTypeCheck [a]
:: CanTypeCheck a
~#
(forall (m :: * -> *). Monad m => DataTable -> a -> m E)
axiom E.TypeCheck.NTCo:Tc []
:: Tc
~#
ReaderT TcEnv transformers-0.3.0.0:Data.Functor.Identity.Identity
axiom E.TypeCheck.TFCo:R:ContextOfTc []
:: ContextOf Tc ~# E.TypeCheck.R:ContextOfTc
axiom E.TypeCheck.TFCo:R:TypeOfAlt [e]
:: TypeOf (Alt e) ~# E.TypeCheck.R:TypeOfAlt e
axiom E.TypeCheck.TFCo:R:TypeOfLit [x, t]
:: TypeOf (Lit x t) ~# E.TypeCheck.R:TypeOfLit x t
axiom E.TypeCheck.TFCo:R:TypeOfTVr' []
:: TypeOf TVr ~# E.TypeCheck.R:TypeOfTVr'
axiom E.TypeCheck.TFCo:R:TypeOfESort []
:: TypeOf ESort ~# E.TypeCheck.R:TypeOfESort
axiom E.TypeCheck.TFCo:R:TypeOfE []
:: TypeOf E ~# E.TypeCheck.R:TypeOfE
INSTANCES
instance [overlap ok] Monad Tc
-- Defined at src/E/TypeCheck.hs:431:14
instance [overlap ok] Functor Tc
-- Defined at src/E/TypeCheck.hs:431:20
instance [overlap ok] MonadReader TcEnv Tc
-- Defined at src/E/TypeCheck.hs:431:28
instance [overlap ok] ContextMonad Tc
-- Defined at src/E/TypeCheck.hs:433:10
instance [overlap ok] CanTypeCheck (Alt E)
-- Defined at src/E/TypeCheck.hs:405:10
instance [overlap ok] CanTypeCheck (Lit a E)
-- Defined at src/E/TypeCheck.hs:400:10
instance [overlap ok] CanTypeCheck TVr
-- Defined at src/E/TypeCheck.hs:395:10
instance [overlap ok] CanTypeCheck E
-- Defined at src/E/TypeCheck.hs:390:10
instance [overlap ok] CanType e => CanType (Alt e)
-- Defined at src/E/TypeCheck.hs:228:10
instance [overlap ok] CanType (Lit x t)
-- Defined at src/E/TypeCheck.hs:225:10
instance [overlap ok] CanType TVr
-- Defined at src/E/TypeCheck.hs:222:10
instance [overlap ok] CanType ESort
-- Defined at src/E/TypeCheck.hs:216:10
instance [overlap ok] CanType E
-- Defined at src/E/TypeCheck.hs:189:10
FAMILY INSTANCES
type ContextOf Tc -- Defined at src/E/TypeCheck.hs:434:10
type TypeOf (Alt e) -- Defined at src/E/TypeCheck.hs:229:10
type TypeOf (Lit x t) -- Defined at src/E/TypeCheck.hs:226:10
type TypeOf TVr -- Defined at src/E/TypeCheck.hs:223:10
type TypeOf ESort -- Defined at src/E/TypeCheck.hs:217:10
type TypeOf E -- Defined at src/E/TypeCheck.hs:190:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, True), (Directory, False),
(Doc.DocLike, False), (Doc.PPrint, False), (Doc.Pretty, False),
(E.E, False), (E.Eval, False), (E.FreeVars, False), (E.Show, True),
(E.Subst, False), (E.Type, False), (GenUtil, False), (IO, False),
(Info.Info, False), (Info.Properties, False), (Info.Types, False),
(List, False), (Maybe, False), (Monad, False), (Name.Id, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (PackedString, False), (Random, False),
(Ratio, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(System, False), (Time, False), (Util.BitSet, False),
(Util.ContextMonad, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.NameMonad, False), (Util.Seq, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[129 of 182] Compiling E.Traverse ( src/E/Traverse.hs, src/E/Traverse.o )
TYPE SIGNATURES
eSize :: E -> Int
emapE :: forall (m :: * -> *). Monad m => (E -> m E) -> E -> m E
emapE' :: forall (m :: * -> *). Monad m => (E -> m E) -> E -> m E
emapEG :: forall (m :: * -> *).
Monad m =>
(E -> m E) -> (E -> m E) -> E -> m E
emapEGH :: forall (m :: * -> *).
Monad m =>
(E -> m E) -> (E -> m E) -> (E -> m E) -> E -> m E
emapE_ :: forall (m :: * -> *) a.
Monad m =>
(E -> m a) -> E -> m ()
renameE :: IdSet -> IdMap E -> E -> (E, IdSet)
runRename :: IdSet -> E -> (E, IdSet)
scopeCheck :: forall (m :: * -> *).
Monad m =>
Bool -> IdMap TVr -> E -> m ()
TYPE CONSTRUCTORS
newtype MInt
RecFlag NonRecursive
= MInt :: Int -> MInt Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom E.Traverse.NTCo:MInt [] :: MInt ~# Int
INSTANCES
instance [overlap ok] HasSize E
-- Defined at src/E/Traverse.hs:80:10
instance [overlap ok] Monoid MInt
-- Defined at src/E/Traverse.hs:29:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.DocLike, False),
(Doc.PPrint, False), (E.E, False), (E.FreeVars, False),
(E.Type, False), (GenUtil, False), (Info.Info, False),
(Info.Properties, False), (Info.Types, False), (List, False),
(Maybe, False), (Monad, False), (Name.Id, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (PackedString, False), (Random, False),
(Ratio, False), (StringTable.Atom, False),
(Support.FreeVars, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.NameMonad, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[130 of 182] Compiling E.Values ( src/E/Values.hs, src/E/Values.o )
TYPE SIGNATURES
eCase :: E -> [Alt E] -> E -> E
eCaseTup :: E -> [TVr] -> E -> E
eCaseTup' :: E -> [TVr] -> E -> E
eCons :: E -> E -> E
eJustIO :: E -> E -> E
eLet :: TVr -> E -> E -> E
eLetRec :: [(TVr, E)] -> E -> E
eNil :: E -> E
eStrictLet :: TVr' E -> E -> E -> E
eToPat :: forall (m :: * -> *). Monad m => E -> m (Lit TVr E)
eTuple :: [E] -> E
eTuple' :: [E] -> E
emptyCase :: E
from_unsafeCoerce :: forall (m :: * -> *). Monad m => E -> m (E, E)
isAtomic :: E -> Bool
isCheap :: E -> Bool
isFullyConst :: E -> Bool
isLifted :: E -> Bool
isManifestAtomic :: E -> Bool
isSmall :: E -> Bool
isState_ :: E -> Bool
isUnboxed :: E -> Bool
patToE :: forall (m :: * -> *). Monad m => Lit TVr E -> m E
prim_seq :: E -> E -> E
prim_unsafeCoerce :: E -> E -> E
safeToDup :: E -> Bool
substLet :: [(TVr, E)] -> E -> E
substLet' :: [(TVr, E)] -> E -> E
unboxedTuple :: forall e.
(CanType e, TypeOf e ~ E) =>
[e] -> Lit e E
unboxedTyUnit :: E
unboxedUnit :: E
unsafeCoerceOpt :: E -> (Int, E, E -> E)
whnfOrBot :: E -> Bool
TYPE CONSTRUCTORS
class ToE a
RecFlag NonRecursive
toE :: a -> E typeE :: a -> E
class ToEzh a
RecFlag NonRecursive
toEzh :: a -> E typeEzh :: a -> E
COERCION AXIOMS
INSTANCES
instance [overlap ok] HasInfo TVr
-- Defined at src/E/Values.hs:178:10
instance [overlap ok] ToE a => ToE [a]
-- Defined at src/E/Values.hs:89:10
instance [overlap ok] ToE Int -- Defined at src/E/Values.hs:85:10
instance [overlap ok] ToE Integer
-- Defined at src/E/Values.hs:81:10
instance [overlap ok] ToE Rational
-- Defined at src/E/Values.hs:77:10
instance [overlap ok] ToE Char -- Defined at src/E/Values.hs:73:10
instance [overlap ok] ToE Bool -- Defined at src/E/Values.hs:68:10
instance [overlap ok] ToE () -- Defined at src/E/Values.hs:64:10
instance [overlap ok] ToEzh Integer
-- Defined at src/E/Values.hs:60:10
instance [overlap ok] ToEzh Int -- Defined at src/E/Values.hs:56:10
instance [overlap ok] ToEzh Char
-- Defined at src/E/Values.hs:52:10
instance [overlap ok] Tuple E -- Defined at src/E/Values.hs:25:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, True), (Directory, False),
(Doc.DocLike, False), (Doc.PPrint, False), (Doc.Pretty, False),
(E.E, False), (E.Eval, False), (E.FreeVars, False), (E.Show, True),
(E.Subst, False), (E.Type, False), (E.TypeCheck, False),
(GenUtil, False), (IO, False), (Info.Info, False),
(Info.Properties, False), (Info.Types, False), (List, False),
(Maybe, False), (Monad, False), (Name.Id, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (PackedString, False), (Random, False),
(Ratio, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.Tuple, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.GMap, False), (Util.Gen, False), (Util.Graph, False),
(Util.HasSize, False), (Util.Inst, False), (Util.NameMonad, False),
(Util.Seq, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[131 of 182] Compiling Doc.Chars ( src/Doc/Chars.hs, src/Doc/Chars.o )
TYPE SIGNATURES
alpha :: forall a. TextLike a => a
Doc.Chars.and :: forall a. TextLike a => a
bTee :: forall a. TextLike a => a
beta :: forall a. TextLike a => a
block :: forall a. TextLike a => a
board :: forall a. TextLike a => a
bot :: forall a. TextLike a => a
bottom :: forall a. TextLike a => a
box :: forall a. TextLike a => a
bullet :: forall a. TextLike a => a
ckBoard :: forall a. TextLike a => a
coloncolon :: forall a. TextLike a => a
dArrow :: forall a. TextLike a => a
degree :: forall a. TextLike a => a
diamond :: forall a. TextLike a => a
Doc.Chars.elem :: forall a. TextLike a => a
exists :: forall a. TextLike a => a
forall :: forall a. TextLike a => a
gEqual :: forall a. TextLike a => a
hLine :: forall a. TextLike a => a
lAmbda :: forall a. TextLike a => a
lArrow :: forall a. TextLike a => a
lEqual :: forall a. TextLike a => a
lTee :: forall a. TextLike a => a
lambda :: forall a. TextLike a => a
lantern :: forall a. TextLike a => a
llCorner :: forall a. TextLike a => a
lrCorner :: forall a. TextLike a => a
nEqual :: forall a. TextLike a => a
Doc.Chars.notElem :: forall a. TextLike a => a
Doc.Chars.or :: forall a. TextLike a => a
pI :: forall a. TextLike a => a
Doc.Chars.pi :: forall a. TextLike a => a
plMinus :: forall a. TextLike a => a
plus :: forall a. TextLike a => a
rArrow :: forall a. TextLike a => a
rTee :: forall a. TextLike a => a
s1 :: forall a. TextLike a => a
s3 :: forall a. TextLike a => a
s7 :: forall a. TextLike a => a
s9 :: forall a. TextLike a => a
sqcparen :: forall a. TextLike a => a
sqoparen :: forall a. TextLike a => a
star :: forall a. TextLike a => a
sterling :: forall a. TextLike a => a
tTee :: forall a. TextLike a => a
top :: forall a. TextLike a => a
uArrow :: forall a. TextLike a => a
ulCorner :: forall a. TextLike a => a
urCorner :: forall a. TextLike a => a
vLine :: forall a. TextLike a => a
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(Char, False), (Doc.DocLike, False)]
Dependent packages: [base, ghc-prim, integer-gmp, mtl-2.1.1,
pretty-1.1.1.0, transformers-0.3.0.0]
[132 of 182] Compiling E.Show ( src/E/Show.hs, src/E/Show.o )
TYPE SIGNATURES
E.Show.$fxPPrintDocE :: PPrint Doc E
E.Show.$fxPPrint[]E :: PPrint String E
E.Show.$fxPPrint[]Lit :: PPrint String (Lit E E)
E.Show.$fxPPrintdTVr' :: forall d. DocLike d => PPrint d TVr
_unSEM :: forall a. SEM a -> VarNameT E Id String Identity a
allocTVr :: forall a. TVr -> SEM a -> SEM a
app :: Unparse Doc -> Unparse Doc -> Unparse Doc
appCon :: Unparse Doc -> Unparse Doc -> Unparse Doc
collectAbstractions :: forall t.
TextLike t =>
E -> ([(t, TVr, Bool)], E)
ePretty :: E -> Doc
enumList :: [(Name, [[Char]])]
inhabit :: Unparse Doc -> Unparse Doc -> Unparse Doc
prettyE :: E -> String
render :: Doc -> String
shortName :: Map.Map Name Name
short_names :: [Name]
showE :: E -> SEM (Unparse Doc)
showI :: forall b. DocLike b => Id -> SEM b
showLit :: forall a.
(a -> SEM (Unparse Doc)) -> Lit a E -> SEM (Unparse Doc)
showTVr :: TVr -> SEM (Unparse Doc)
showTVr' :: forall t a. DocLike a => TVr' t -> SEM (Unparse a)
skipToNest :: Doc
subSEM :: forall a. SEM a -> SEM a
TYPE CONSTRUCTORS
newtype SEM a
RecFlag NonRecursive
= SEM :: forall a. (VarNameT E Id String Identity a) -> SEM a
Stricts: _
Fields: _unSEM
FamilyInstance: none
COERCION AXIOMS
axiom E.Show.NTCo:SEM [] :: SEM ~# VarNameT E Id String Identity
INSTANCES
instance [overlap ok] Monad SEM -- Defined at src/E/Show.hs:49:14
instance [overlap ok] Functor SEM -- Defined at src/E/Show.hs:49:20
instance [overlap ok] PPrint String (Lit E E)
-- Defined at src/E/Show.hs:44:10
instance [overlap ok] PPrint String E
-- Defined at src/E/Show.hs:41:10
instance [overlap ok] PPrint Doc E
-- Defined at src/E/Show.hs:38:10
instance [overlap ok] DocLike d => PPrint d TVr
-- Defined at src/E/Show.hs:35:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, True), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.E, False), (E.Eval, False),
(E.FreeVars, False), (E.Show, True), (E.Subst, False),
(E.Type, False), (E.TypeCheck, False), (FlagDump, False),
(FlagOpts, False), (GenUtil, False), (IO, False),
(Info.Info, False), (Info.Properties, False), (Info.Types, False),
(List, False), (Maybe, False), (Monad, False), (Name.Id, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (Ratio, False), (RawFiles, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.TempDir, False), (Support.Unparse, False),
(System, False), (Time, False), (Util.BitSet, False),
(Util.ContextMonad, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.Graph, False),
(Util.HasSize, False), (Util.Inst, False), (Util.NameMonad, False),
(Util.Seq, False), (Util.SetLike, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[133 of 182] Compiling DataConstructors ( drift_processed/DataConstructors.hs, src/DataConstructors.o )
TYPE SIGNATURES
DataConstructors.$con2tag_AliasType :: AliasType
-> ghc-prim:GHC.Prim.Int#
DataConstructors.$con2tag_DataFamily :: DataFamily
-> ghc-prim:GHC.Prim.Int#
DataConstructors.$con2tag_Slot :: Slot -> ghc-prim:GHC.Prim.Int#
DataConstructors.$dmgetDataTable :: forall (m :: * -> *).
DataTableMonad m =>
m DataTable
boxPrimitive :: forall (m :: * -> *).
Monad m =>
DataTable -> E -> E -> m (E, (ExtType, E))
collectDeriving :: [HsDecl] -> [(SrcLoc, Name, Name)]
conCTYPE :: Constructor -> Maybe ExtType
conChildren :: Constructor -> DataFamily
conExpr :: Constructor -> E
conInhabits :: Constructor -> Name
conName :: Constructor -> Name
conOrigSlots :: Constructor -> [Slot]
conSlots :: Constructor -> [E]
conType :: Constructor -> E
conVirtual :: Constructor -> Maybe [Name]
constructionExpression :: DataTable -> Name -> E -> E
create_integralCast :: Op.ConvOp
-> Name -> E -> Name -> E -> E -> E -> E
create_uintegralCast_toInt :: Name -> E -> E -> E
dataTablePrims :: DataTable
deconstructionExpression :: forall (m :: * -> *).
UniqueProducer m =>
DataTable -> Name -> E -> [TVr] -> E -> m (Alt E)
deriveClasses :: IdMap Comb
-> DataTable -> [(SrcLoc, Name, Name)] -> [(TVr, E)]
emptyConstructor :: Constructor
expandAlias :: forall (m :: * -> *). Monad m => E -> m E
extTypeInfoExtType :: ExtTypeInfo -> ExtType
extractIO :: forall (m :: * -> *). Monad m => E -> m E
extractIO' :: E -> ([E], Bool, E)
extractPrimitive :: forall (m :: * -> *).
Monad m =>
DataTable -> E -> m (E, (ExtType, E))
followAlias :: forall (m :: * -> *).
Monad m =>
DataTable -> E -> m E
followAliases :: DataTable -> E -> E
getConstructor :: forall (m :: * -> *).
Monad m =>
Name -> DataTable -> m Constructor
getConstructorArities :: DataTable -> [(Name, Int)]
getHsSlots :: [Slot] -> [E]
getProduct :: forall (m :: * -> *).
Monad m =>
DataTable -> E -> m Constructor
getSiblings :: DataTable -> Name -> Maybe [Name]
getSlots :: [Slot] -> [E]
isHsBangedTy :: HsBangType -> Bool
kind :: Kind -> E
lookupExtTypeInfo :: forall (m :: * -> *).
Monad m =>
DataTable -> E -> m ExtTypeInfo
mapESlot :: (E -> E) -> Slot -> Slot
mktBox :: E -> E
nameToOpTy :: forall (m :: * -> *). Monad m => Name -> m Op.Ty
numberSiblings :: DataTable -> Name -> Maybe Int
onlyChild :: DataTable -> Name -> Bool
pprintTypeAsHs :: forall a. DocLike a => E -> a
pprintTypeOfCons :: forall (m :: * -> *) a.
(Monad m, DocLike a) =>
DataTable -> Name -> m a
primitiveAliases :: Map.Map Name Name
primitiveConstructor :: Name -> Constructor
rawExtTypeMap :: Map.Map Name ExtType
removeNewtypes :: DataTable -> E -> E
samplePrimitiveDataTable :: DataTable
showDataTable :: DataTable -> Doc
slotTypes :: DataTable -> Name -> E -> [E]
slotTypesHs :: DataTable -> Name -> E -> [E]
sortConstructor :: Name -> ESort -> Constructor
sortName :: ESort -> Name
tAbsurd :: E -> E
tarrow :: Constructor
tipe' :: forall (m :: * -> *).
Monad m =>
Type -> VarNameT () Tyvar Id m E
toDataTable :: Map.Map Name Kind
-> Map.Map Name Type -> [HsDecl] -> DataTable -> DataTable
tunboxedtuple :: Int -> (Constructor, Constructor)
typesCompatable :: forall (m :: * -> *). Monad m => E -> E -> m ()
updateLit :: forall e t. DataTable -> Lit e t -> Lit e t
TYPE CONSTRUCTORS
data AliasType
RecFlag NonRecursive
= ErasedAlias :: AliasType | RecursiveAlias :: AliasType
FamilyInstance: none
data Constructor
RecFlag NonRecursive
= Constructor :: Name -> E -> E -> [Slot] -> Name -> (Maybe [Name])
-> DataFamily -> (Maybe ExtType) -> Constructor
Stricts: _ _ _ _ _ _ _ _
Fields: conName conType conExpr conOrigSlots conInhabits conVirtual conChildren conCTYPE
FamilyInstance: none
data DataFamily
RecFlag NonRecursive
= DataAbstract :: DataFamily |
DataNone :: DataFamily |
DataPrimitive :: DataFamily |
DataEnum :: Int -> DataFamily
HasWrapper
Stricts: {-# UNPACK #-} ! |
DataNormal :: [Name] -> DataFamily Stricts: _ |
DataAlias :: AliasType -> DataFamily HasWrapper Stricts: !
FamilyInstance: none
newtype DataTable
RecFlag Recursive
= DataTable :: (Map.Map Name Constructor) -> DataTable Stricts: _
FamilyInstance: none
class Monad m => DataTableMonad (m::* -> *)
RecFlag NonRecursive
getDataTable {- Has default method -} :: m DataTable
data ExtTypeInfo
RecFlag NonRecursive
= ExtTypeVoid :: ExtTypeInfo |
ExtTypeRaw :: ExtType -> ExtTypeInfo Stricts: _ |
ExtTypeBoxed :: Name -> E -> ExtType -> ExtTypeInfo Stricts: _ _ _
FamilyInstance: none
data Slot
RecFlag NonRecursive
= SlotNormal :: E -> Slot Stricts: _ |
SlotUnpacked :: E -> Name -> [E] -> Slot
HasWrapper
Stricts: _ ! _ |
SlotExistential :: TVr -> Slot Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom DataConstructors.NTCo:DataTable []
:: DataTable ~# Map.Map Name Constructor
INSTANCES
instance [overlap ok] Eq AliasType
-- Defined at src/DataConstructors.hs:123:14
instance [overlap ok] Ord AliasType
-- Defined at src/DataConstructors.hs:123:17
instance [overlap ok] Show AliasType
-- Defined at src/DataConstructors.hs:123:21
instance [overlap ok] Monoid DataTable
-- Defined at src/DataConstructors.hs:176:14
instance [overlap ok] Show Constructor
-- Defined at src/DataConstructors.hs:149:16
instance [overlap ok] Eq Slot
-- Defined at src/DataConstructors.hs:156:14
instance [overlap ok] Ord Slot
-- Defined at src/DataConstructors.hs:156:17
instance [overlap ok] Show Slot
-- Defined at src/DataConstructors.hs:156:21
instance [overlap ok] Eq DataFamily
-- Defined at src/DataConstructors.hs:134:14
instance [overlap ok] Ord DataFamily
-- Defined at src/DataConstructors.hs:134:17
instance [overlap ok] Show DataFamily
-- Defined at src/DataConstructors.hs:134:21
instance [overlap ok] Binary Slot
-- Defined at src/DataConstructors.hs:993:10
instance [overlap ok] Binary Constructor
-- Defined at src/DataConstructors.hs:972:10
instance [overlap ok] Binary DataFamily
-- Defined at src/DataConstructors.hs:936:10
instance [overlap ok] Binary AliasType
-- Defined at src/DataConstructors.hs:922:10
instance [overlap ok] DataTableMonad Identity
-- Defined at src/DataConstructors.hs:882:10
instance [overlap ok] HasSize DataTable
-- Defined at src/DataConstructors.hs:193:10
instance [overlap ok] Binary DataTable
-- Defined at src/DataConstructors.hs:178:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, True), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.E, False),
(E.Eval, False), (E.FreeVars, False), (E.Show, False),
(E.Subst, False), (E.Traverse, False), (E.Type, False),
(E.TypeCheck, False), (E.Values, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Tuple, False), (Support.Unparse, False), (System, False),
(Time, False), (Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.NameMonad, False), (Util.SameShape, False),
(Util.Seq, False), (Util.SetLike, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[134 of 182] Compiling E.PrimDecode ( src/E/PrimDecode.hs, src/E/PrimDecode.o )
TYPE SIGNATURES
+> :: Typ -> Typ -> Typ
==> :: forall t t1. t -> t1 -> (t, t1)
array :: Typ
ashow :: forall a. Show a => a -> Atom
bang :: Typ
binOpMap :: Map.Map Atom (Op.BinOp, Typ)
boxResult :: DataTable -> T -> (Ty -> T -> E) -> Maybe E
convOpMap :: Map.Map Atom (Op.ConvOp, Typ)
ePrim :: Prim -> [E] -> E -> E
hash :: Typ
incDec :: Map.Map Atom Op.BinOp
match :: BType -> E -> Bool
matches :: [BType] -> [E] -> Bool
pairWith :: forall a b c. (a -> b -> c) -> [a] -> [b] -> Maybe [c]
plainPrimMap :: Map.Map Atom Typ
primBoundMap :: Map.Map Atom PrimTypeInfo
processPrim :: forall (m :: * -> *).
MonadWarn m =>
DataTable -> SrcLoc -> Atom -> [E] -> E -> Requires -> m E
star :: Typ
starHash :: Typ
state :: Typ
stot :: forall a. Show a => a -> Int -> ExtType -> Ty
stringToOpTy :: ExtType -> Ty
stringToOpTy' :: String -> ExtType -> Ty
unOpMap :: Map.Map Atom (Op.UnOp, Typ)
unbox :: DataTable -> E -> Id -> (TVr -> E) -> E
utup :: Typ -> Typ -> Typ
utup1 :: Typ -> Typ
TYPE CONSTRUCTORS
data BType
RecFlag NonRecursive
= BKind :: KBase -> BType Stricts: _ |
BTup :: [BType] -> BType Stricts: _ |
BState :: BType
FamilyInstance: none
type T
= E
FamilyInstance: none
data Typ
RecFlag NonRecursive
= :-> :: [BType] -> BType -> Typ Infix Stricts: _ _
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Show Typ
-- Defined at src/E/PrimDecode.hs:27:15
instance [overlap ok] Show BType
-- Defined at src/E/PrimDecode.hs:34:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.E, False),
(E.Eval, False), (E.FreeVars, False), (E.Show, False),
(E.Subst, False), (E.Traverse, False), (E.Type, False),
(E.TypeCheck, False), (E.Values, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Tuple, False), (Support.Unparse, False), (System, False),
(Time, False), (Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.NameMonad, False), (Util.SameShape, False),
(Util.Seq, False), (Util.SetLike, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[135 of 182] Compiling Stats ( src/Stats.hs, src/Stats.o )
TYPE SIGNATURES
clear :: Stats -> IO ()
combine :: Stats -> Stats -> IO ()
createForest :: forall a.
a -> [([String], a)] -> Forest (String, a)
draw :: Tree String -> [String]
isEmpty :: Stats -> IO Bool
mtick :: forall (m :: * -> *) a.
(ToAtom a, MonadStats m) =>
a -> m ()
mtick' :: forall (m :: * -> *). MonadStats m => Atom -> m ()
mticks :: forall (m :: * -> *) a.
(ToAtom a, MonadStats m) =>
Int -> a -> m ()
new :: IO Stats
null :: Stat -> Bool
prependStat :: String -> Stat -> Stat
Stats.print :: [Char] -> Stats -> IO ()
printLStat :: Int -> [Char] -> Stat -> IO ()
printStat :: [Char] -> Stat -> IO ()
printStats :: IORef Bool
readStat :: Stats -> IO Stat
runStatIO :: forall (m :: * -> *) a.
MonadIO m =>
Stats -> StatT m a -> m a
runStatM :: forall a. StatM a -> (a, Stat)
runStatT :: forall (m :: * -> *) a.
Monad m =>
StatT m a -> m (a, Stat)
setPrintStats :: Bool -> IO ()
singleStat :: forall a. ToAtom a => Int -> a -> Stat
singleton :: forall a. ToAtom a => a -> Stat
splitUp :: Int -> String -> [String]
theStats :: Stats
tick :: forall a. ToAtom a => Stats -> a -> IO ()
tickStat :: Stats -> Stat -> IO ()
ticks :: forall a. ToAtom a => Stats -> Int -> a -> IO ()
toList :: Stats -> IO [(Atom, Int)]
TYPE CONSTRUCTORS
class Monad m => MonadStats (m::* -> *)
RecFlag NonRecursive
mticks' :: Int -> Atom -> m () mtickStat :: Stat -> m ()
newtype Stat
RecFlag NonRecursive
= Stat :: IB.IntBag -> Stat Stricts: _
FamilyInstance: none
data StatM a
RecFlag NonRecursive
= StatM :: forall a. a -> Stat -> StatM a HasWrapper Stricts: _ !
FamilyInstance: none
newtype StatT (m::* -> *) a
RecFlag NonRecursive
= StatT :: forall (m::* -> *) a. (WriterT Stat m a) -> StatT m a
Stricts: _
FamilyInstance: none
newtype Stats
RecFlag NonRecursive
= Stats :: (IORef Stat) -> Stats Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom Stats.NTCo:Stat [] :: Stat ~# IB.IntBag
axiom Stats.NTCo:StatT [] :: StatT ~# WriterT Stat
axiom Stats.NTCo:Stats [] :: Stats ~# IORef Stat
INSTANCES
instance [overlap ok] Eq Stat -- Defined at src/Stats.hs:96:14
instance [overlap ok] Ord Stat -- Defined at src/Stats.hs:96:17
instance [overlap ok] Monoid Stat -- Defined at src/Stats.hs:96:21
instance [overlap ok] MonadIO m => MonadIO (StatT m)
-- Defined at src/Stats.hs:122:14
instance [overlap ok] Functor m => Functor (StatT m)
-- Defined at src/Stats.hs:122:23
instance [overlap ok] MonadFix m => MonadFix (StatT m)
-- Defined at src/Stats.hs:122:32
instance [overlap ok] MonadTrans StatT
-- Defined at src/Stats.hs:122:42
instance [overlap ok] Monad m => Monad (StatT m)
-- Defined at src/Stats.hs:122:54
instance [overlap ok] MonadStats IO
-- Defined at src/Stats.hs:177:10
instance [overlap ok] Monad m => MonadStats (StatT m)
-- Defined at src/Stats.hs:165:10
instance [overlap ok] (Monad m, Monad (t m), MonadTrans t,
MonadStats m) =>
MonadStats (t m)
-- Defined at src/Stats.hs:161:10
instance [overlap ok] MonadReader r m => MonadReader r (StatT m)
-- Defined at src/Stats.hs:157:10
instance [overlap ok] MonadStats Identity
-- Defined at src/Stats.hs:153:10
instance [overlap ok] MonadStats StatM
-- Defined at src/Stats.hs:137:10
instance [overlap ok] Monad StatM -- Defined at src/Stats.hs:132:10
instance [overlap ok] Functor StatM
-- Defined at src/Stats.hs:129:10
Dependent modules: [(CPUTime, False), (Char, False),
(Doc.Chars, False), (Doc.DocLike, False), (GenUtil, False),
(List, False), (Monad, False), (Random, False),
(StringTable.Atom, False), (System, False), (Time, False),
(Util.GMap, False), (Util.HasSize, False), (Util.IntBag, False),
(Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0, ghc-prim,
integer-gmp, mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0,
pretty-1.1.1.0, process-1.1.0.1, random-1.0.1.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[136 of 182] Compiling E.Program ( src/E/Program.hs, src/E/Program.o )
TYPE SIGNATURES
hPrintCheckName :: Handle -> DataTable -> TVr -> E -> IO ()
hPrintProgram :: Handle -> Program -> IO ()
printCheckName'' :: DataTable -> TVr -> E -> IO ()
printProgram :: Program -> IO ()
progComb :: forall (m :: * -> *).
Monad m =>
Program -> Id -> m Comb
progCombMap :: Program -> IdMap Comb
progCombinators :: Program -> [Comb]
progCombinators_s :: [Comb] -> Program -> Program
progCombinators_u :: ([Comb] -> [Comb]) -> Program -> Program
progDataTable :: Program -> DataTable
progEntry :: Program -> IdSet
progEntryPoints :: Program -> [TVr]
progExternalNames :: Program -> IdSet
progFreeIds :: Program -> IdSet
progMain :: Program -> Id
progMainEntry :: Program -> TVr
progModule :: Program -> Module
progPasses :: Program -> [String]
progSeasoning :: Program -> IdSet
progStats :: Program -> Stats.Stat
progType :: Program -> ProgramType
progUsedIds :: Program -> IdSet
program :: Program
programDs :: Program -> [(TVr, E)]
programE :: Program -> E
programEsMap :: forall (m :: * -> *).
Monad m =>
Program -> m (Map.Map Name (TVr, E))
programMapBodies :: forall (m :: * -> *).
Monad m =>
(E -> m E) -> Program -> m Program
programMapDs :: forall (m :: * -> *).
Monad m =>
((TVr, E) -> m (TVr, E)) -> Program -> m Program
programMapDs_ :: forall (m :: * -> *).
Monad m =>
((TVr, E) -> m ()) -> Program -> m ()
programSetDs :: [(TVr, E)] -> Program -> Program
programSetDs' :: [(TVr, E)] -> Program -> Program
programUpdate :: Program -> Program
TYPE CONSTRUCTORS
data Program
RecFlag NonRecursive
= Program :: IdSet -> [Comb] -> DataTable -> IdSet -> Id -> Module
-> [String] -> IdSet -> IdSet -> IdSet -> ProgramType
-> (IdMap Comb) -> Stats.Stat -> Program
HasWrapper
Stricts: _ _ _ _ _ _ _ _ _ _ _ _ !
Fields: progExternalNames progCombinators progDataTable progEntry progMain progModule progPasses progUsedIds progFreeIds progSeasoning progType progCombMap progStats
FamilyInstance: none
data ProgramType
RecFlag NonRecursive
= SubProgram :: Bool -> ProgramType Stricts: _ |
MainProgram :: ProgramType |
MainComponent :: ProgramType
FamilyInstance: none
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.E, False),
(E.Eval, False), (E.FreeVars, False), (E.Show, False),
(E.Subst, False), (E.Traverse, False), (E.Type, False),
(E.TypeCheck, False), (E.Values, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[137 of 182] Compiling E.Demand ( drift_processed/E/Demand.hs, src/E/Demand.o )
TYPE SIGNATURES
E.Demand.$con2tag_Demand :: Demand -> ghc-prim:GHC.Prim.Int#
E.Demand.$con2tag_SubDemand :: SubDemand -> ghc-prim:GHC.Prim.Int#
absSig :: DemandSignature
absType :: DemandType
allLazy :: [Demand] -> SubDemand
analyze :: E -> Demand -> IM (E, DemandType)
analyzeCase :: E -> Demand -> IM (E, DemandType)
analyzeProgram :: forall (m :: * -> *).
Monad m =>
Program -> m Program
botType :: DemandType
comb :: (Demand -> Demand -> Demand)
-> SubDemand -> SubDemand -> SubDemand
demandEnvMinus :: DemandEnv -> TVr -> DemandEnv
demandEnvSingleton :: TVr -> Demand -> DemandEnv
denvDelete :: forall e. TVr' e -> DemandEnv -> DemandEnv
determineDemandType :: TVr -> Demand -> IM (Either DemandType E)
err :: Demand
extEnv :: forall (m :: * -> *) a t t1 e a1 b.
(MonadReader (t, t1) m, MapLike t, Elem t ~ (Id, Either a1 b)) =>
TVr' e -> a1 -> m a -> m a
extEnvE :: forall (m :: * -> *) a t t1 e a1 b.
(MonadReader (t, t1) m, MapLike t, Elem t ~ (Id, Either a1 b)) =>
TVr' e -> b -> m a -> m a
extendSig :: DemandSignature -> DemandSignature -> DemandSignature
fixupDemandSignature :: DemandSignature -> DemandSignature
from_dependingOn :: forall (m :: * -> *).
Monad m =>
E -> m (E, E, E)
getEnv :: IM Env
idGlb :: Demand
l :: SubDemand -> Demand
lazify :: DemandEnv -> DemandEnv
lazy :: Demand
lenv :: Id -> DemandEnv -> Demand
lp :: [Demand] -> Demand
runIM :: forall (m :: * -> *) a.
Monad m =>
IM a -> DataTable -> m a
s :: SubDemand -> Demand
shouldBind :: E -> Bool
solveDs' :: forall a.
Maybe Bool
-> [(TVr, E)]
-> (DemandSignature -> DemandSignature)
-> ([(TVr, E)] -> IM a)
-> IM a
sp :: [Demand] -> Demand
splitSigma :: [Demand] -> (Demand, [Demand])
strict :: Demand
strictList :: forall a. [a] -> [a]
topAnalyze :: TVr -> E -> IM (E, DemandSignature)
trace :: forall t t1. t -> t1 -> t1
TYPE CONSTRUCTORS
data Demand
RecFlag NonRecursive
= Bottom :: Demand |
L :: SubDemand -> Demand HasWrapper Stricts: ! |
S :: SubDemand -> Demand HasWrapper Stricts: ! |
Error :: SubDemand -> Demand HasWrapper Stricts: ! |
Absent :: Demand
FamilyInstance: none
data DemandEnv
RecFlag NonRecursive
= DemandEnv :: (IdMap Demand) -> Demand -> DemandEnv
HasWrapper
Stricts: ! !
FamilyInstance: none
data DemandSignature
RecFlag NonRecursive
= DemandSignature :: Int -> DemandType -> DemandSignature
HasWrapper
Stricts: {-# UNPACK #-} ! !
FamilyInstance: none
data DemandType
RecFlag NonRecursive
= :=> :: DemandEnv -> [Demand] -> DemandType
HasWrapper
Stricts: ! !
FamilyInstance: none
type Env
= IdMap (Either DemandSignature E)
FamilyInstance: none
newtype IM a
RecFlag NonRecursive
= IM :: forall a. (Reader (Env, DataTable) a) -> IM a Stricts: _
FamilyInstance: none
class Lattice a
RecFlag NonRecursive
glb :: a -> a -> a lub :: a -> a -> a
data SubDemand
RecFlag NonRecursive
= None :: SubDemand |
Product :: [Demand] -> SubDemand HasWrapper Stricts: !
FamilyInstance: none
COERCION AXIOMS
axiom E.Demand.NTCo:IM []
:: IM
~#
ReaderT
(Env, DataTable)
transformers-0.3.0.0:Data.Functor.Identity.Identity
INSTANCES
instance [overlap ok] Typeable Demand
-- Defined at src/E/Demand.hs:38:21
instance [overlap ok] Typeable DemandSignature
-- Defined at src/E/Demand.hs:54:21
instance [overlap ok] Eq SubDemand
-- Defined at src/E/Demand.hs:42:14
instance [overlap ok] Ord SubDemand
-- Defined at src/E/Demand.hs:42:17
instance [overlap ok] Eq Demand -- Defined at src/E/Demand.hs:38:14
instance [overlap ok] Ord Demand
-- Defined at src/E/Demand.hs:38:17
instance [overlap ok] Eq DemandEnv
-- Defined at src/E/Demand.hs:46:14
instance [overlap ok] Ord DemandEnv
-- Defined at src/E/Demand.hs:46:17
instance [overlap ok] Eq DemandType
-- Defined at src/E/Demand.hs:50:14
instance [overlap ok] Ord DemandType
-- Defined at src/E/Demand.hs:50:17
instance [overlap ok] Eq DemandSignature
-- Defined at src/E/Demand.hs:54:14
instance [overlap ok] Ord DemandSignature
-- Defined at src/E/Demand.hs:54:17
instance [overlap ok] Monad IM -- Defined at src/E/Demand.hs:185:14
instance [overlap ok] Functor IM
-- Defined at src/E/Demand.hs:185:20
instance [overlap ok] MonadReader (Env, DataTable) IM
-- Defined at src/E/Demand.hs:185:28
instance [overlap ok] Binary DemandSignature
-- Defined at src/E/Demand.hs:475:10
instance [overlap ok] Binary DemandType
-- Defined at src/E/Demand.hs:466:10
instance [overlap ok] Binary DemandEnv
-- Defined at src/E/Demand.hs:457:10
instance [overlap ok] Binary SubDemand
-- Defined at src/E/Demand.hs:441:10
instance [overlap ok] Binary Demand
-- Defined at src/E/Demand.hs:409:10
instance [overlap ok] Show DemandSignature
-- Defined at src/E/Demand.hs:406:10
instance [overlap ok] Show DemandEnv
-- Defined at src/E/Demand.hs:401:10
instance [overlap ok] Show DemandType
-- Defined at src/E/Demand.hs:397:10
instance [overlap ok] DocLike d => PPrint d Demand
-- Defined at src/E/Demand.hs:394:10
instance [overlap ok] Show Demand
-- Defined at src/E/Demand.hs:384:10
instance [overlap ok] DataTableMonad IM
-- Defined at src/E/Demand.hs:198:10
instance [overlap ok] Lattice DemandEnv
-- Defined at src/E/Demand.hs:178:10
instance [overlap ok] Lattice Demand
-- Defined at src/E/Demand.hs:123:10
instance [overlap ok] Lattice DemandType
-- Defined at src/E/Demand.hs:104:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.E, False),
(E.Eval, False), (E.FreeVars, False), (E.Program, False),
(E.Show, False), (E.Subst, False), (E.Traverse, False),
(E.Type, False), (E.TypeCheck, False), (E.Values, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[138 of 182] Compiling E.CPR ( drift_processed/E/CPR.hs, src/E/CPR.o )
TYPE SIGNATURES
E.CPR.$con2tag_Val :: Val -> ghc-prim:GHC.Prim.Int#
cprAnalyze :: DataTable -> Env -> E -> (E, Val)
cprAnalyzeBinds :: DataTable
-> Env -> [(TVr, E)] -> ([(TVr, E)], Env)
cprAnalyzeDs :: DataTable -> [(TVr, E)] -> [(TVr, E)]
cprAnalyzeProgram :: Program -> Program
envInsert :: TVr -> Val -> Env -> Env
lub :: Val -> Val -> Val
toVal :: Constructor -> Val
trimVal :: Val -> Val
TYPE CONSTRUCTORS
newtype Env
RecFlag NonRecursive
= Env :: (Map.Map TVr Val) -> Env Stricts: _
FamilyInstance: none
data Val
RecFlag NonRecursive
= Top :: Val |
Fun :: Val -> Val Stricts: _ |
Tup :: Name -> [Val] -> Val Stricts: _ _ |
VInt :: Number -> Val Stricts: _ |
Tag :: [Name] -> Val Stricts: _ |
Bot :: Val
FamilyInstance: none
COERCION AXIOMS
axiom E.CPR.NTCo:Env [] :: Env ~# Map.Map TVr Val
INSTANCES
instance [overlap ok] Typeable Val -- Defined at src/E/CPR.hs:33:21
instance [overlap ok] Eq Val -- Defined at src/E/CPR.hs:33:14
instance [overlap ok] Ord Val -- Defined at src/E/CPR.hs:33:17
instance [overlap ok] Monoid Env -- Defined at src/E/CPR.hs:24:14
instance [overlap ok] Binary Val -- Defined at src/E/CPR.hs:140:10
instance [overlap ok] Monoid Val -- Defined at src/E/CPR.hs:75:10
instance [overlap ok] Show Val -- Defined at src/E/CPR.hs:46:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.Demand, False),
(E.E, False), (E.Eval, False), (E.FreeVars, False),
(E.Program, False), (E.Show, False), (E.Subst, False),
(E.Traverse, False), (E.Type, False), (E.TypeCheck, False),
(E.Values, False), (FlagDump, False), (FlagOpts, False),
(FrontEnd.Class, False), (FrontEnd.HsSyn, False),
(FrontEnd.KindInfer, False), (FrontEnd.Representation, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Syn.Traverse, False),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Type, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (IO, False), (Info.Binary, True),
(Info.Info, False), (Info.Properties, False), (Info.Types, False),
(List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[139 of 182] Compiling Info.Binary ( src/Info/Binary.hs, src/Info/Binary.o )
TYPE SIGNATURES
binTable :: Map.Map Word8 Binable
binTableValues :: [(Word8, Binable, TypeRep)]
cb :: forall t a.
(Show a, Typeable a, Binary a) =>
t -> a -> (t, Binable, TypeRep)
getDyn :: Get Entry
Info.Binary.getInfo :: Get Info
newEntry :: forall a. (Show a, Typeable a) => a -> Entry
putDyn :: (Word8, Dynamic, Binable) -> Put
putInfo :: Info -> Put
revBinTable :: [(TypeRep, (Word8, Binable))]
u :: forall a. (Typeable a, Binary a) => a
TYPE CONSTRUCTORS
data Binable
RecFlag NonRecursive
= Binable :: forall a.
(Typeable a, Binary a, Show a) =>
a -> Binable
Stricts: _
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Binary Info
-- Defined at src/Info/Binary.hs:57:10
instance [overlap ok] Binary Properties
-- Defined at src/Info/Binary.hs:53:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.CPR, False),
(E.Demand, False), (E.E, False), (E.Eval, False),
(E.FreeVars, False), (E.Program, False), (E.Show, False),
(E.Subst, False), (E.Traverse, False), (E.Type, False),
(E.TypeCheck, False), (E.Values, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[140 of 182] Compiling E.Annotate ( src/E/Annotate.hs, src/E/Annotate.o )
TYPE SIGNATURES
annotate :: forall (m :: * -> *).
Monad m =>
IdMap (Maybe E)
-> (Id -> Info -> m Info)
-> (E -> Info -> m Info)
-> (E -> Info -> m Info)
-> E
-> m E
annotateCombs :: forall (m :: * -> *).
Monad m =>
IdMap (Maybe E)
-> (Id -> Info -> m Info)
-> (E -> Info -> m Info)
-> (E -> Info -> m Info)
-> [Comb]
-> m [Comb]
annotateDs :: forall (m :: * -> *).
Monad m =>
IdMap (Maybe E)
-> (Id -> Info -> m Info)
-> (E -> Info -> m Info)
-> (E -> Info -> m Info)
-> [(TVr, E)]
-> m [(TVr, E)]
annotateProgram :: forall (m :: * -> *).
Monad m =>
IdMap (Maybe E)
-> (Id -> Info -> m Info)
-> (E -> Info -> m Info)
-> (E -> Info -> m Info)
-> Program
-> m Program
mnv :: forall a.
(HasSize a, SetLike a, Key a ~ Id) =>
[Id] -> Id -> a -> Id
TYPE CONSTRUCTORS
type AM (m::* -> *)
= ReaderT (IdMap (Maybe E)) m
FamilyInstance: none
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.E, False),
(E.Eval, False), (E.FreeVars, False), (E.Program, False),
(E.Show, False), (E.Subst, False), (E.Traverse, False),
(E.Type, False), (E.TypeCheck, False), (E.Values, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[141 of 182] Compiling E.Rules ( src/E/Rules.hs, src/E/Rules.o )
TYPE SIGNATURES
applyRules :: forall (m :: * -> *).
MonadStats m =>
(Id -> Maybe E) -> ARules -> [E] -> m (Maybe (E, [E]))
arules :: [Rule] -> ARules
builtinRule :: forall t (m :: * -> *).
MonadStats m =>
TVr' t -> [E] -> m (Maybe (E, [E]))
combineRules :: [Rule] -> [Rule] -> [Rule]
dropArguments :: [(Int, E)] -> [Rule] -> [Rule]
emptyRule :: Rule
fromRules :: [Rule] -> Rules
joinARules :: ARules -> ARules -> ARules
makeRule :: String
-> (Module, Int) -> RuleType -> [TVr] -> TVr -> [E] -> E -> Rule
mapBodies :: forall (m :: * -> *).
Monad m =>
(E -> m E) -> Rules -> m Rules
mapRBodyArgs :: forall (m :: * -> *).
Monad m =>
(E -> m E) -> Rule -> m Rule
match :: forall (m :: * -> *).
Monad m =>
(Id -> Maybe E) -> [TVr] -> E -> E -> m [(TVr, E)]
preludeError :: Id
printRule :: Rule -> IO ()
printRules :: RuleType -> Rules -> IO ()
putDocMLn' :: forall (m :: * -> *).
Monad m =>
(String -> m ()) -> Doc -> m ()
rsubstMap :: IdMap E -> E -> E
ruleError :: StringTable.Atom.Atom
ruleUpdate :: Rule -> Rule
rulesFromARules :: ARules -> [Rule]
TYPE CONSTRUCTORS
newtype Rules
RecFlag NonRecursive
= Rules :: (IdMap [Rule]) -> Rules Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom E.Rules.NTCo:Rules [] :: Rules ~# IdMap [Rule]
INSTANCES
instance [overlap ok] HasSize Rules
-- Defined at src/E/Rules.hs:66:14
instance [overlap ok] IsEmpty Rules
-- Defined at src/E/Rules.hs:66:22
instance [overlap ok] Monoid ARules
-- Defined at src/E/Rules.hs:161:10
instance [overlap ok] Show ARules
-- Defined at src/E/Rules.hs:147:10
instance [overlap ok] Monoid Rules
-- Defined at src/E/Rules.hs:109:10
instance [overlap ok] FreeVars Rule [Id]
-- Defined at src/E/Rules.hs:87:10
instance [overlap ok] Binary Rules
-- Defined at src/E/Rules.hs:71:10
instance [overlap ok] Eq Rule -- Defined at src/E/Rules.hs:68:10
instance [overlap ok] Show Rule -- Defined at src/E/Rules.hs:48:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, True), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.E, False),
(E.Eval, False), (E.FreeVars, False), (E.Show, False),
(E.Subst, False), (E.Type, False), (E.TypeCheck, False),
(E.Values, False), (FlagDump, False), (FlagOpts, False),
(FrontEnd.HsSyn, False), (FrontEnd.SrcLoc, False),
(GenUtil, False), (IO, False), (Info.Binary, True),
(Info.Info, False), (Info.Properties, False), (Info.Types, False),
(List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tuple, False), (Support.Unparse, False), (System, False),
(Time, False), (Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False), (Util.Seq, False),
(Util.SetLike, False), (Util.VarName, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[142 of 182] Compiling Ho.Type ( drift_processed/Ho/Type.hs, src/Ho/Type.o )
TYPE SIGNATURES
cff_core :: ChunkType
cff_defs :: ChunkType
cff_file :: ChunkType
cff_idep :: ChunkType
cff_jhdr :: ChunkType
cff_lcor :: ChunkType
cff_ldef :: ChunkType
cff_libr :: ChunkType
cff_link :: ChunkType
cff_magic :: ChunkType
choCombinators :: CollectedHo -> IdMap Comb
choCombinators_s :: IdMap Comb -> CollectedHo -> CollectedHo
choCombinators_u :: (IdMap Comb -> IdMap Comb)
-> CollectedHo -> CollectedHo
choExternalNames :: CollectedHo -> IdSet
choExternalNames_s :: IdSet -> CollectedHo -> CollectedHo
choExternalNames_u :: (IdSet -> IdSet)
-> CollectedHo -> CollectedHo
choHo :: CollectedHo -> Ho
choHoMap :: CollectedHo -> Map.Map ModuleGroup Ho
choHoMap_s :: Map.Map ModuleGroup Ho -> CollectedHo -> CollectedHo
choHoMap_u :: (Map.Map ModuleGroup Ho -> Map.Map ModuleGroup Ho)
-> CollectedHo -> CollectedHo
choHo_s :: Ho -> CollectedHo -> CollectedHo
choHo_u :: (Ho -> Ho) -> CollectedHo -> CollectedHo
choLibDeps :: CollectedHo -> Map.Map PackedString HoHash
choLibDeps_s :: Map.Map PackedString HoHash
-> CollectedHo -> CollectedHo
choLibDeps_u :: (Map.Map PackedString HoHash
-> Map.Map PackedString HoHash)
-> CollectedHo -> CollectedHo
choOrphanRules :: CollectedHo -> Rules
choOrphanRules_s :: Rules -> CollectedHo -> CollectedHo
choOrphanRules_u :: (Rules -> Rules) -> CollectedHo -> CollectedHo
choVarMap :: CollectedHo -> IdMap (Maybe E)
choVarMap_s :: IdMap (Maybe E) -> CollectedHo -> CollectedHo
choVarMap_u :: (IdMap (Maybe E) -> IdMap (Maybe E))
-> CollectedHo -> CollectedHo
extraFileData :: ExtraFile -> BS.ByteString
extraFileName :: ExtraFile -> PackedString
hoAssumps :: HoTcInfo -> Map.Map Name Type
hoAssumps_s :: Map.Map Name Type -> HoTcInfo -> HoTcInfo
hoAssumps_u :: (Map.Map Name Type -> Map.Map Name Type)
-> HoTcInfo -> HoTcInfo
hoBuild :: Ho -> HoBuild
hoBuild_s :: HoBuild -> Ho -> Ho
hoBuild_u :: (HoBuild -> HoBuild) -> Ho -> Ho
hoClassHierarchy :: HoTcInfo -> ClassHierarchy
hoClassHierarchy_s :: ClassHierarchy -> HoTcInfo -> HoTcInfo
hoClassHierarchy_u :: (ClassHierarchy -> ClassHierarchy)
-> HoTcInfo -> HoTcInfo
hoDataTable :: HoBuild -> DataTable
hoDataTable_s :: DataTable -> HoBuild -> HoBuild
hoDataTable_u :: (DataTable -> DataTable) -> HoBuild -> HoBuild
hoDefs :: HoTcInfo -> Map.Map Name (SrcLoc, [Name])
hoDefs_s :: Map.Map Name (SrcLoc, [Name]) -> HoTcInfo -> HoTcInfo
hoDefs_u :: (Map.Map Name (SrcLoc, [Name])
-> Map.Map Name (SrcLoc, [Name]))
-> HoTcInfo -> HoTcInfo
hoDepends :: HoIDeps -> [(Module, SourceHash)]
hoEs :: HoBuild -> [(TVr, E)]
hoEs_s :: [(TVr, E)] -> HoBuild -> HoBuild
hoEs_u :: ([(TVr, E)] -> [(TVr, E)]) -> HoBuild -> HoBuild
hoExports :: HoTcInfo -> Map.Map Module [Name]
hoExports_s :: Map.Map Module [Name] -> HoTcInfo -> HoTcInfo
hoExports_u :: (Map.Map Module [Name] -> Map.Map Module [Name])
-> HoTcInfo -> HoTcInfo
hoFieldMap :: HoTcInfo -> FieldMap
hoFieldMap_s :: FieldMap -> HoTcInfo -> HoTcInfo
hoFieldMap_u :: (FieldMap -> FieldMap) -> HoTcInfo -> HoTcInfo
hoFixities :: HoTcInfo -> FixityMap
hoFixities_s :: FixityMap -> HoTcInfo -> HoTcInfo
hoFixities_u :: (FixityMap -> FixityMap) -> HoTcInfo -> HoTcInfo
hoIDeps :: HoIDeps
-> Map.Map SourceHash (Module, [(Module, SrcLoc)])
hoKinds :: HoTcInfo -> KindEnv
hoKinds_s :: KindEnv -> HoTcInfo -> HoTcInfo
hoKinds_u :: (KindEnv -> KindEnv) -> HoTcInfo -> HoTcInfo
hoMetaInfo :: HoLib -> [(PackedString, PackedString)]
hoModDepends :: HoIDeps -> [HoHash]
hoModuleDeps :: HoLib -> Map.Map ModuleGroup [ModuleGroup]
hoModuleGroup :: Ho -> ModuleGroup
hoModuleGroupNeeds :: HoIDeps -> [ModuleGroup]
hoModuleGroup_s :: ModuleGroup -> Ho -> Ho
hoModuleGroup_u :: (ModuleGroup -> ModuleGroup) -> Ho -> Ho
hoModuleMap :: HoLib -> Map.Map Module ModuleGroup
hoReexports :: HoLib -> Map.Map Module Module
hoRules :: HoBuild -> Rules
hoRules_s :: Rules -> HoBuild -> HoBuild
hoRules_u :: (Rules -> Rules) -> HoBuild -> HoBuild
hoTcInfo :: Ho -> HoTcInfo
hoTcInfo_s :: HoTcInfo -> Ho -> Ho
hoTcInfo_u :: (HoTcInfo -> HoTcInfo) -> Ho -> Ho
hoTypeSynonyms :: HoTcInfo -> TypeSynonyms
hoTypeSynonyms_s :: TypeSynonyms -> HoTcInfo -> HoTcInfo
hoTypeSynonyms_u :: (TypeSynonyms -> TypeSynonyms)
-> HoTcInfo -> HoTcInfo
hohArchDeps :: HoHeader -> [(PackedString, PackedString)]
hohHash :: HoHeader -> HoHash
hohLibDeps :: HoHeader -> [(PackedString, HoHash)]
hohName :: HoHeader -> Either ModuleGroup (PackedString, Version)
hohVersion :: HoHeader -> Int
libBuildMap :: Library -> Map.Map ModuleGroup HoBuild
libExtraFiles :: Library -> [ExtraFile]
libFileName :: Library -> FilePath
libHoHeader :: Library -> HoHeader
libHoLib :: Library -> HoLib
libTcMap :: Library -> Map.Map ModuleGroup HoTcInfo
TYPE CONSTRUCTORS
data CollectedHo
RecFlag NonRecursive
= CollectedHo :: IdSet -> (IdMap Comb) -> Rules
-> (Map.Map ModuleGroup Ho) -> (Map.Map PackedString HoHash) -> Ho
-> (IdMap (Maybe E)) -> CollectedHo
Stricts: _ _ _ _ _ _ _
Fields: choExternalNames choCombinators choOrphanRules choHoMap choLibDeps choHo choVarMap
FamilyInstance: none
data ExtraFile
RecFlag NonRecursive
= ExtraFile :: PackedString -> BS.ByteString -> ExtraFile
Stricts: _ _
Fields: extraFileName extraFileData
FamilyInstance: none
data Ho
RecFlag NonRecursive
= Ho :: ModuleGroup -> HoTcInfo -> HoBuild -> Ho
Stricts: _ _ _
Fields: hoModuleGroup hoTcInfo hoBuild
FamilyInstance: none
data HoBuild
RecFlag NonRecursive
= HoBuild :: DataTable -> [(TVr, E)] -> Rules -> HoBuild
Stricts: _ _ _
Fields: hoDataTable hoEs hoRules
FamilyInstance: none
type HoHash
= MD5.Hash
FamilyInstance: none
data HoHeader
RecFlag NonRecursive
= HoHeader :: Int -> HoHash
-> (Either ModuleGroup (PackedString, Version))
-> [(PackedString, HoHash)] -> [(PackedString, PackedString)]
-> HoHeader
Stricts: _ _ _ _ _
Fields: hohVersion hohHash hohName hohLibDeps hohArchDeps
FamilyInstance: none
data HoIDeps
RecFlag NonRecursive
= HoIDeps :: (Map.Map SourceHash (Module, [(Module, SrcLoc)]))
-> [(Module, SourceHash)] -> [HoHash] -> [ModuleGroup] -> HoIDeps
Stricts: _ _ _ _
Fields: hoIDeps hoDepends hoModDepends hoModuleGroupNeeds
FamilyInstance: none
data HoLib
RecFlag NonRecursive
= HoLib :: (Map.Map Module ModuleGroup) -> (Map.Map Module Module)
-> (Map.Map ModuleGroup [ModuleGroup])
-> [(PackedString, PackedString)] -> HoLib
Stricts: _ _ _ _
Fields: hoModuleMap hoReexports hoModuleDeps hoMetaInfo
FamilyInstance: none
data HoTcInfo
RecFlag NonRecursive
= HoTcInfo :: (Map.Map Module [Name])
-> (Map.Map Name (SrcLoc, [Name])) -> (Map.Map Name Type)
-> FixityMap -> KindEnv -> TypeSynonyms -> ClassHierarchy
-> FieldMap -> HoTcInfo
Stricts: _ _ _ _ _ _ _ _
Fields: hoExports hoDefs hoAssumps hoFixities hoKinds hoTypeSynonyms hoClassHierarchy hoFieldMap
FamilyInstance: none
data Library
RecFlag NonRecursive
= Library :: HoHeader -> HoLib -> (Map.Map ModuleGroup HoTcInfo)
-> (Map.Map ModuleGroup HoBuild) -> [ExtraFile] -> FilePath
-> Library
Stricts: _ _ _ _ _ _
Fields: libHoHeader libHoLib libTcMap libBuildMap libExtraFiles libFileName
FamilyInstance: none
type ModuleGroup
= Module
FamilyInstance: none
type SourceHash
= MD5.Hash
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Monoid HoBuild
-- Defined at src/Ho/Type.hs:232:10
instance [overlap ok] Monoid HoTcInfo
-- Defined at src/Ho/Type.hs:221:10
instance [overlap ok] Monoid Ho -- Defined at src/Ho/Type.hs:150:10
instance [overlap ok] Show Library
-- Defined at src/Ho/Type.hs:119:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.E, False),
(E.Eval, False), (E.FreeVars, False), (E.Rules, False),
(E.Show, False), (E.Subst, False), (E.Traverse, False),
(E.Type, False), (E.TypeCheck, False), (E.Values, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.Desugar, False), (FrontEnd.HsErrors, False),
(FrontEnd.HsParser, False), (FrontEnd.HsSyn, False),
(FrontEnd.Infix, False), (FrontEnd.KindInfer, False),
(FrontEnd.Lexer, False), (FrontEnd.ParseMonad, False),
(FrontEnd.ParseUtils, False), (FrontEnd.Rename, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.TypeSynonyms, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (IO, False), (Info.Binary, True),
(Info.Info, False), (Info.Properties, False), (Info.Types, False),
(List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CFF, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MD5, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.UniqueMonad, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[143 of 182] Compiling Ho.Collected ( src/Ho/Collected.hs, src/Ho/Collected.o )
TYPE SIGNATURES
choAssumps :: CollectedHo
-> Map.Map Name FrontEnd.Representation.Type
choClassHierarchy :: CollectedHo -> FrontEnd.Class.ClassHierarchy
choDataTable :: CollectedHo -> DataTable
choEs :: CollectedHo -> [(TVr, E)]
choFixities :: CollectedHo -> FrontEnd.Infix.FixityMap
choRules :: CollectedHo -> E.Rules.Rules
choTypeSynonyms :: CollectedHo
-> FrontEnd.TypeSynonyms.TypeSynonyms
mergeChoCombinators :: IdMap Comb -> IdMap Comb -> IdMap Comb
updateChoHo :: CollectedHo -> CollectedHo
TYPE CONSTRUCTORS
COERCION AXIOMS
INSTANCES
instance [overlap ok] Monoid CollectedHo
-- Defined at src/Ho/Collected.hs:35:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Annotate, False), (E.Binary, False),
(E.E, False), (E.Eval, False), (E.FreeVars, False),
(E.Program, False), (E.Rules, False), (E.Show, False),
(E.Subst, False), (E.Traverse, False), (E.Type, False),
(E.TypeCheck, False), (E.Values, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.Desugar, False), (FrontEnd.HsErrors, False),
(FrontEnd.HsParser, False), (FrontEnd.HsSyn, False),
(FrontEnd.Infix, False), (FrontEnd.KindInfer, False),
(FrontEnd.Lexer, False), (FrontEnd.ParseMonad, False),
(FrontEnd.ParseUtils, False), (FrontEnd.Rename, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.TypeSynonyms, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (Ho.Type, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CFF, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MD5, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.UniqueMonad, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[144 of 182] Compiling Interactive ( src/Interactive.hs, src/Interactive.o )
TYPE SIGNATURES
calcImports :: forall (m :: * -> *).
Monad m =>
HoTcInfo -> Bool -> Module -> m [(Name, [Name])]
executeStatement :: HsStmt -> In ()
grep_opts :: [[Char]]
Interactive.interact :: CollectedHo -> IO ()
isInitial :: InteractiveState
isInteractive :: IO Bool
kindShow :: forall d. DocLike d => Kind -> d
nameTag :: NameType -> Char
parseStmt :: forall (m :: * -> *). Monad m => String -> m HsStmt
printDoc :: Doc -> IO ()
printStatement :: forall (m :: * -> *). MonadIO m => HsStmt -> m ()
procErrors :: forall a. In a -> In ()
runIn :: forall a. InteractiveState -> In a -> IO a
stateHo :: InteractiveState -> HoTcInfo
stateImports :: InteractiveState -> [(Name, [Name])]
stateInteract :: InteractiveState -> Interact
stateModule :: InteractiveState -> Module
stateOptions :: InteractiveState -> Opt
tcStatementTc :: HsStmt -> In ()
TYPE CONSTRUCTORS
newtype In a
RecFlag NonRecursive
= MkIn :: forall a. (ReaderT InteractiveState IO a) -> In a
Stricts: _
FamilyInstance: none
data InteractiveState
RecFlag NonRecursive
= IS :: HoTcInfo -> Interact -> Module -> [(Name, [Name])] -> Opt
-> InteractiveState
Stricts: _ _ _ _ _
Fields: stateHo stateInteract stateModule stateImports stateOptions
FamilyInstance: none
COERCION AXIOMS
axiom Interactive.NTCo:In [] :: In ~# ReaderT InteractiveState IO
INSTANCES
instance [overlap ok] MonadIO In
-- Defined at src/Interactive.hs:79:14
instance [overlap ok] Monad In
-- Defined at src/Interactive.hs:79:22
instance [overlap ok] Functor In
-- Defined at src/Interactive.hs:79:28
instance [overlap ok] MonadReader InteractiveState In
-- Defined at src/Interactive.hs:79:36
instance [overlap ok] MonadWarn In
-- Defined at src/Interactive.hs:87:10
instance [overlap ok] OptionMonad In
-- Defined at src/Interactive.hs:84:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.E, False),
(E.Eval, False), (E.FreeVars, False), (E.Rules, False),
(E.Show, False), (E.Subst, False), (E.Traverse, False),
(E.Type, False), (E.TypeCheck, False), (E.Values, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.DeclsDepends, False), (FrontEnd.DependAnalysis, False),
(FrontEnd.Desugar, False), (FrontEnd.Diagnostic, False),
(FrontEnd.HsErrors, False), (FrontEnd.HsParser, False),
(FrontEnd.HsPretty, False), (FrontEnd.HsSyn, False),
(FrontEnd.Infix, False), (FrontEnd.KindInfer, False),
(FrontEnd.Lexer, False), (FrontEnd.ParseMonad, False),
(FrontEnd.ParseUtils, False), (FrontEnd.Rename, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Class, False),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Main, False),
(FrontEnd.Tc.Monad, False), (FrontEnd.Tc.Type, False),
(FrontEnd.Tc.Unify, False), (FrontEnd.TypeSigs, False),
(FrontEnd.TypeSynonyms, False), (FrontEnd.TypeSyns, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (Ho.Type, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CFF, False),
(Support.CanType, False), (Support.Compat, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MD5, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Tuple, False), (Support.Unparse, False), (System, False),
(Time, False), (Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.Interact, False),
(Util.NameMonad, False), (Util.Progress, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.UniqueMonad, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, readline-1.0.1.0,
regex-base-0.93.2, regex-compat-0.95.1, regex-posix-0.95.1,
syb-0.3.6.1, time-1.4, transformers-0.3.0.0, unix-2.5.1.0,
utf8-string-0.3.7]
[145 of 182] Compiling Ho.Binary ( src/Ho/Binary.hs, src/Ho/Binary.o )
TYPE SIGNATURES
current_version :: Int
readHFile :: FilePath
-> IO (FilePath, HoHeader, forall a. Binary a => ChunkType -> a)
readHlFile :: FilePath -> IO Library
readHoFile :: FilePath -> IO (HoHeader, HoIDeps, Ho)
recordHlFile :: Library -> IO ()
recordHoFile :: Ho -> HoIDeps -> [FilePath] -> HoHeader -> IO ()
TYPE CONSTRUCTORS
COERCION AXIOMS
INSTANCES
instance [overlap ok] Binary HoBuild
-- Defined at src/Ho/Binary.hs:191:10
instance [overlap ok] Binary HoTcInfo
-- Defined at src/Ho/Binary.hs:170:10
instance [overlap ok] Binary Data.Version.Version
-- Defined at src/Ho/Binary.hs:166:10
instance [overlap ok] Binary HoLib
-- Defined at src/Ho/Binary.hs:153:10
instance [overlap ok] Binary HoIDeps
-- Defined at src/Ho/Binary.hs:140:10
instance [overlap ok] Binary HoHeader
-- Defined at src/Ho/Binary.hs:125:10
instance [overlap ok] Binary FieldMap
-- Defined at src/Ho/Binary.hs:116:10
instance [overlap ok] Binary ExtraFile
-- Defined at src/Ho/Binary.hs:110:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.E, False),
(E.Eval, False), (E.FreeVars, False), (E.Rules, False),
(E.Show, False), (E.Subst, False), (E.Traverse, False),
(E.Type, False), (E.TypeCheck, False), (E.Values, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.Desugar, False), (FrontEnd.HsErrors, False),
(FrontEnd.HsParser, False), (FrontEnd.HsSyn, False),
(FrontEnd.Infix, False), (FrontEnd.KindInfer, False),
(FrontEnd.Lexer, False), (FrontEnd.ParseMonad, False),
(FrontEnd.ParseUtils, False), (FrontEnd.Rename, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.TypeSynonyms, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (Ho.Type, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CFF, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MD5, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.UniqueMonad, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7,
zlib-0.5.3.3]
[146 of 182] Compiling FrontEnd.Tc.Module ( src/FrontEnd/Tc/Module.hs, src/FrontEnd/Tc/Module.o )
TYPE SIGNATURES
buildFieldMap :: [ModInfo] -> FieldMap
getDataDesc :: forall (m :: * -> *).
Monad m =>
HsDecl -> m (Name, DatDesc)
getDeclNames :: HsDecl -> [Name]
isGlobal :: Name -> Bool
or' :: forall a. [a -> Bool] -> a -> Bool
processModule :: FieldMap -> ModInfo -> IO (ModInfo, [Warning])
tiAllAssumptions :: TiData -> Map.Map Name Type
tiCheckedRules :: TiData -> [Rule]
tiCoerce :: TiData -> Map.Map Name CoerceTerm
tiDataDecls :: TiData -> [HsDecl]
tiDataModules :: TiData -> [(Module, HsModule)]
tiModuleOptions :: TiData -> [(Module, Opt)]
tiModules :: HoTcInfo -> [ModInfo] -> IO (HoTcInfo, TiData)
tiProps :: TiData -> Map.Map Name Properties
trimEnv :: forall a. Map.Map Name a -> Map.Map Name a
TYPE CONSTRUCTORS
data DatDesc
RecFlag NonRecursive
= DatEnum :: [Name] -> DatDesc Stricts: _ |
DatMany :: [(Name, Int)] -> DatDesc Stricts: _ |
DatNewT :: Name -> DatDesc Stricts: _
FamilyInstance: none
data TiData
RecFlag NonRecursive
= TiData :: [HsDecl] -> [(Module, HsModule)] -> [(Module, Opt)]
-> [Rule] -> (Map.Map Name CoerceTerm) -> (Map.Map Name Properties)
-> (Map.Map Name Type) -> TiData
Stricts: _ _ _ _ _ _ _
Fields: tiDataDecls tiDataModules tiModuleOptions tiCheckedRules tiCoerce tiProps tiAllAssumptions
FamilyInstance: none
COERCION AXIOMS
Dependent modules: [(Array, False), (C.FFI, False),
(C.Prims, False), (CPUTime, False), (Char, False),
(Cmm.Number, False), (Cmm.Op, False), (DataConstructors, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.E, False),
(E.Eval, False), (E.FreeVars, False), (E.Rules, False),
(E.Show, False), (E.Subst, False), (E.Traverse, False),
(E.Type, False), (E.TypeCheck, False), (E.Values, False),
(FindFixpoint, False), (FlagDump, False), (FlagOpts, False),
(FrontEnd.Class, False), (FrontEnd.DataConsAssump, False),
(FrontEnd.DeclsDepends, False), (FrontEnd.DependAnalysis, False),
(FrontEnd.Desugar, False), (FrontEnd.Diagnostic, False),
(FrontEnd.Exports, False), (FrontEnd.HsErrors, False),
(FrontEnd.HsParser, False), (FrontEnd.HsPretty, False),
(FrontEnd.HsSyn, False), (FrontEnd.Infix, False),
(FrontEnd.KindInfer, False), (FrontEnd.Lexer, False),
(FrontEnd.ParseMonad, False), (FrontEnd.ParseUtils, False),
(FrontEnd.Rename, False), (FrontEnd.Representation, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Syn.Traverse, False),
(FrontEnd.Tc.Class, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Main, False), (FrontEnd.Tc.Monad, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Tc.Unify, False),
(FrontEnd.TypeSigs, False), (FrontEnd.TypeSynonyms, False),
(FrontEnd.TypeSyns, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (Ho.Type, False),
(IO, False), (Info.Binary, True), (Info.Info, False),
(Info.Properties, False), (Info.Types, False), (Ix, False),
(List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CFF, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MD5, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.Progress, False), (Util.Relation, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.UniqueMonad, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[147 of 182] Compiling FrontEnd.FrontEnd ( src/FrontEnd/FrontEnd.hs, src/FrontEnd/FrontEnd.o )
TYPE SIGNATURES
doModules :: HoTcInfo -> [HsModule] -> IO (HoTcInfo, Tc.TiData)
modInfo :: forall (m :: * -> *). Monad m => HsModule -> m ModInfo
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(Array, False), (C.FFI, False),
(C.Prims, False), (CPUTime, False), (Char, False),
(Cmm.Number, False), (Cmm.Op, False), (DataConstructors, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.E, False),
(E.Eval, False), (E.FreeVars, False), (E.Rules, False),
(E.Show, False), (E.Subst, False), (E.Traverse, False),
(E.Type, False), (E.TypeCheck, False), (E.Values, False),
(FindFixpoint, False), (FlagDump, False), (FlagOpts, False),
(FrontEnd.Class, False), (FrontEnd.DataConsAssump, False),
(FrontEnd.DeclsDepends, False), (FrontEnd.DependAnalysis, False),
(FrontEnd.Desugar, False), (FrontEnd.Diagnostic, False),
(FrontEnd.Exports, False), (FrontEnd.HsErrors, False),
(FrontEnd.HsParser, False), (FrontEnd.HsPretty, False),
(FrontEnd.HsSyn, False), (FrontEnd.Infix, False),
(FrontEnd.KindInfer, False), (FrontEnd.Lexer, False),
(FrontEnd.ParseMonad, False), (FrontEnd.ParseUtils, False),
(FrontEnd.Rename, False), (FrontEnd.Representation, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Syn.Traverse, False),
(FrontEnd.Tc.Class, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Main, False), (FrontEnd.Tc.Module, False),
(FrontEnd.Tc.Monad, False), (FrontEnd.Tc.Type, False),
(FrontEnd.Tc.Unify, False), (FrontEnd.TypeSigs, False),
(FrontEnd.TypeSynonyms, False), (FrontEnd.TypeSyns, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (Ho.Type, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (Ix, False), (List, False), (Maybe, False),
(Monad, False), (Name.Binary, False), (Name.Id, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CFF, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MD5, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.Progress, False), (Util.Relation, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.UniqueMonad, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[148 of 182] Compiling Grin.Grin ( src/Grin/Grin.hs, src/Grin/Grin.o )
TYPE SIGNATURES
Grin.Grin.$con2tag_BaseOp :: BaseOp -> ghc-prim:GHC.Prim.Int#
Grin.Grin.$con2tag_Callable :: Callable -> ghc-prim:GHC.Prim.Int#
Grin.Grin.$con2tag_Exp :: Exp -> ghc-prim:GHC.Prim.Int#
Grin.Grin.$con2tag_Phase :: Phase -> ghc-prim:GHC.Prim.Int#
Grin.Grin.$con2tag_Ty :: Ty -> ghc-prim:GHC.Prim.Int#
Grin.Grin.$con2tag_TyThunk :: TyThunk -> ghc-prim:GHC.Prim.Int#
Grin.Grin.$con2tag_Val :: Val -> ghc-prim:GHC.Prim.Int#
Grin.Grin.$maxtag_Phase :: Int
Grin.Grin.$tag2con_Phase :: Int -> Phase
createFuncDef :: Bool -> Atom -> Lam -> FuncDef
emptyGrin :: Grin
expAlts :: Exp -> [Lam]
expArgs :: Exp -> [Val]
expBaseOp :: Exp -> BaseOp
expBody :: Exp -> Exp
expCont :: Exp -> Lam
expCount :: Exp -> Val
expDefs :: Exp -> [FuncDef]
expError :: Exp -> String
expFuncCalls :: Exp -> (Set.Set Atom, Set.Set Atom)
expFuncProps :: Exp -> FuncProps
expFunction :: Exp -> Atom
expInfo :: Exp -> Info.Info
expIsNormal :: Exp -> Bool
expJump :: Exp -> Bool
expLam :: Exp -> Lam
expNonNormal :: Exp -> Set.Set Atom
expPrimitive :: Exp -> Prim
expRegion :: Exp -> Val
expType :: Exp -> [Ty]
expValue :: Exp -> Val
expValues :: Exp -> [Val]
extendTyEnv :: [FuncDef] -> TyEnv -> TyEnv
findArgs :: forall (m :: * -> *).
Monad m =>
TyEnv -> Atom -> m [Ty]
findArgsType :: forall (m :: * -> *).
Monad m =>
TyEnv -> Atom -> m ([Ty], [Ty])
findTyTy :: forall (m :: * -> *).
Monad m =>
TyEnv -> Atom -> m TyTy
funcAllocs :: FuncProps -> Perhaps
funcCreates :: FuncProps -> Perhaps
funcCuts :: FuncProps -> Perhaps
funcDefBody :: FuncDef -> Lam
funcDefCall :: FuncDef -> Val
funcDefName :: FuncDef -> Atom
funcDefProps :: FuncDef -> FuncProps
funcExits :: FuncProps -> Perhaps
funcFreeVars :: FuncProps -> Set.Set Var
funcInfo :: FuncProps -> Info.Info
funcLoops :: FuncProps -> Perhaps
funcProps :: FuncProps
funcTags :: FuncProps -> Set.Set Tag
funcType :: FuncProps -> ([Ty], [Ty])
gEval :: Val -> Exp
grinCafs :: Grin -> [(Var, Val)]
grinEntryPointNames :: Grin -> [Atom]
grinEntryPoints :: Grin -> GMap Atom FfiExport
grinFuncs :: Grin -> [(Atom, Lam)]
grinFunctions :: Grin -> [FuncDef]
grinPartFunctions :: Grin -> Set.Set Atom
grinPhase :: Grin -> Phase
grinStats :: Grin -> Stats.Stat
grinSuspFunctions :: Grin -> Set.Set Atom
grinTypeEnv :: Grin -> TyEnv
isHole :: Val -> Bool
isValUnknown :: Val -> Bool
isVar :: Val -> Bool
lamBind :: Lam -> [Val]
lamExp :: Lam -> Exp
n0 :: Val
n1 :: Val
n2 :: Val
n3 :: Val
p0 :: Val
p1 :: Val
p2 :: Val
p3 :: Val
partialTag :: Tag -> Int -> Tag
phaseEvalInlined :: Phase -> Bool
properHole :: Ty -> Val
setGrinFunctions :: [(Atom, Lam)] -> Grin -> Grin
tagFlipFunction :: Atom -> Atom
tagHole :: Atom
tagInfo :: Atom -> TagInfo
tagIsFunction :: Atom -> Bool
tagIsPartialAp :: Atom -> Bool
tagIsSuspFunction :: Atom -> Bool
tagIsTag :: Atom -> Bool
tagIsWHNF :: Atom -> Bool
tagToFunction :: forall (m :: * -> *). Monad m => Atom -> m Atom
tagUnfunction :: forall (m :: * -> *).
Monad m =>
Tag -> m (Int, Tag)
tyDNode :: Ty
tyINode :: Ty
tyReturn :: TyTy -> [Ty]
tySiblings :: TyTy -> Maybe [Atom]
tySlots :: TyTy -> [Ty]
tyThunk :: TyTy -> TyThunk
tyTy :: TyTy
updateFuncDefProps :: FuncDef -> FuncDef
v0 :: Var
v1 :: Var
v2 :: Var
v3 :: Var
valIsNF :: Val -> Bool
TYPE CONSTRUCTORS
data BaseOp
RecFlag NonRecursive
= Demote :: BaseOp |
Promote :: BaseOp |
Eval :: BaseOp |
Apply :: [Ty] -> BaseOp Stricts: _ |
StoreNode :: Bool -> BaseOp HasWrapper Stricts: ! |
Redirect :: BaseOp |
Overwrite :: BaseOp |
PeekVal :: BaseOp |
PokeVal :: BaseOp |
Consume :: BaseOp |
GcTouch :: BaseOp |
Coerce :: Ty -> BaseOp Stricts: _ |
GcPush :: BaseOp |
NewRegister :: BaseOp |
ReadRegister :: BaseOp |
WriteRegister :: BaseOp
FamilyInstance: none
data Callable
RecFlag NonRecursive
= Continuation :: Callable |
Function :: Callable |
Closure :: Callable |
LocalFunction :: Callable |
Primitive' :: Callable
FamilyInstance: none
data Exp
RecFlag NonRecursive
= :>>= :: Exp -> Lam -> Exp Infix Stricts: _ _ |
BaseOp :: BaseOp -> [Val] -> Exp
Stricts: _ _
Fields: expBaseOp expArgs |
App :: Atom -> [Val] -> [Ty] -> Exp
Stricts: _ _ _
Fields: expFunction expArgs expType |
Prim :: Prim -> [Val] -> [Ty] -> Exp
Stricts: _ _ _
Fields: expPrimitive expArgs expType |
Case :: Val -> [Lam] -> Exp Stricts: _ _ Fields: expValue expAlts |
Return :: [Val] -> Exp Stricts: _ Fields: expValues |
Error :: String -> [Ty] -> Exp
Stricts: _ _
Fields: expError expType |
Call :: Val -> [Val] -> [Ty] -> Bool -> FuncProps -> Info.Info
-> Exp
Stricts: _ _ _ _ _ _
Fields: expValue expArgs expType expJump expFuncProps expInfo |
NewRegion :: Lam -> Info.Info -> Exp
Stricts: _ _
Fields: expLam expInfo |
Alloc :: Val -> Val -> Val -> Info.Info -> Exp
Stricts: _ _ _ _
Fields: expValue expCount expRegion expInfo |
Let :: [FuncDef] -> Exp -> (Set.Set Atom, Set.Set Atom) -> Bool
-> (Set.Set Atom) -> Info.Info -> Exp
Stricts: _ _ _ _ _ _
Fields: expDefs expBody expFuncCalls expIsNormal expNonNormal expInfo |
MkClosure :: Val -> [Val] -> Val -> [Ty] -> Info.Info -> Exp
Stricts: _ _ _ _ _
Fields: expValue expArgs expRegion expType expInfo |
MkCont :: Lam -> Lam -> Info.Info -> Exp
Stricts: _ _ _
Fields: expCont expLam expInfo |
GcRoots :: [Val] -> Exp -> Exp
Stricts: _ _
Fields: expValues expBody
FamilyInstance: none
data FuncDef
RecFlag NonRecursive
= FuncDef :: Atom -> Lam -> Val -> FuncProps -> FuncDef
Stricts: _ _ _ _
Fields: funcDefName funcDefBody funcDefCall funcDefProps
FamilyInstance: none
data FuncProps
RecFlag NonRecursive
= FuncProps :: Info.Info -> (Set.Set Var) -> (Set.Set Tag)
-> ([Ty], [Ty]) -> Perhaps -> Perhaps -> Perhaps -> Perhaps
-> Perhaps -> FuncProps
Stricts: _ _ _ _ _ _ _ _ _
Fields: funcInfo funcFreeVars funcTags funcType funcExits funcCuts funcAllocs funcCreates funcLoops
FamilyInstance: none
data Grin
RecFlag NonRecursive
= Grin :: (GMap Atom FfiExport) -> Phase -> TyEnv -> [FuncDef]
-> (Set.Set Atom) -> (Set.Set Atom) -> Stats.Stat -> [(Var, Val)]
-> Grin
HasWrapper
Stricts: _ ! _ _ _ _ ! _
Fields: grinEntryPoints grinPhase grinTypeEnv grinFunctions grinSuspFunctions grinPartFunctions grinStats grinCafs
FamilyInstance: none
data Lam
RecFlag NonRecursive
= :-> :: [Val] -> Exp -> Lam Infix Stricts: _ _
FamilyInstance: none
data Phase
RecFlag NonRecursive
= PhaseInit :: Phase |
PostInlineEval :: Phase |
PostAeOptimize :: Phase |
PostDevolve :: Phase
FamilyInstance: none
type Tag
= Atom
FamilyInstance: none
data TagInfo
RecFlag NonRecursive
= TagPApp :: Int -> Atom -> TagInfo
HasWrapper
Stricts: {-# UNPACK #-} ! {-# UNPACK #-} ! |
TagSusp :: Bool -> Atom -> TagInfo
HasWrapper
Stricts: ! {-# UNPACK #-} ! |
TagDataCons :: TagInfo |
TagTypeCons :: TagInfo |
TagTypePApp :: Int -> Tag -> TagInfo
HasWrapper
Stricts: {-# UNPACK #-} ! _ |
TagFunc :: TagInfo
FamilyInstance: none
data Ty
RecFlag NonRecursive
= TyPtr :: Ty -> Ty Stricts: _ |
TyNode :: Ty |
TyINode :: Ty |
TyAttr :: Ty -> Ty -> Ty Stricts: _ _ |
TyAnd :: Ty -> Ty -> Ty Stricts: _ _ |
TyOr :: Ty -> Ty -> Ty Stricts: _ _ |
TyPrim :: Op.Ty -> Ty Stricts: _ |
TyUnit :: Ty |
TyCall :: Callable -> [Ty] -> [Ty] -> Ty Stricts: _ _ _ |
TyRegion :: Ty |
TyGcContext :: Ty |
TyRegister :: Ty -> Ty Stricts: _ |
TyUnknown :: Ty
FamilyInstance: none
newtype TyEnv
RecFlag NonRecursive
= TyEnv :: (GMap Atom TyTy) -> TyEnv Stricts: _
FamilyInstance: none
data TyThunk
RecFlag NonRecursive
= TyNotThunk :: TyThunk |
TyPApp :: (Maybe Ty) -> Atom -> TyThunk Stricts: _ _ |
TySusp :: Atom -> TyThunk Stricts: _
FamilyInstance: none
data TyTy
RecFlag NonRecursive
= TyTy :: [Ty] -> [Ty] -> TyThunk -> (Maybe [Atom]) -> TyTy
Stricts: _ _ _ _
Fields: tySlots tyReturn tyThunk tySiblings
FamilyInstance: none
data Val
RecFlag NonRecursive
= NodeC :: Tag -> [Val] -> Val
HasWrapper
Stricts: {-# UNPACK #-} ! _ |
Const :: Val -> Val Stricts: _ |
Lit :: Number -> Ty -> Val HasWrapper Stricts: {-# UNPACK #-} ! _ |
Var :: Var -> Ty -> Val HasWrapper Stricts: {-# UNPACK #-} ! _ |
Unit :: Val |
ValPrim :: Prim -> [Val] -> Ty -> Val Stricts: _ _ _ |
Index :: Val -> Val -> Val Stricts: _ _ |
Item :: Atom -> Ty -> Val Stricts: _ _ |
ValUnknown :: Ty -> Val Stricts: _
FamilyInstance: none
newtype Var
RecFlag NonRecursive
= V :: Int -> Var Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom Grin.Grin.NTCo:Var [] :: Var ~# Int
axiom Grin.Grin.NTCo:TyEnv [] :: TyEnv ~# GMap Atom TyTy
axiom Grin.Grin.NTCo:R:GMapVarv []
:: Grin.Grin.R:GMapVarv ~# IntjectionMap Var
axiom Grin.Grin.TFCo:R:GMapVarv [v]
:: GMap Var v ~# Grin.Grin.R:GMapVarv v
axiom Grin.Grin.NTCo:R:GSetVar []
:: Grin.Grin.R:GSetVar ~# IntjectionSet Var
axiom Grin.Grin.TFCo:R:GSetVar []
:: GSet Var ~# Grin.Grin.R:GSetVar
axiom Grin.Grin.TFCo:R:TypeOfVal []
:: TypeOf Val ~# Grin.Grin.R:TypeOfVal
axiom Grin.Grin.TFCo:R:TypeOfExp []
:: TypeOf Exp ~# Grin.Grin.R:TypeOfExp
INSTANCES
instance [overlap ok] Eq Callable
-- Defined at src/Grin/Grin.hs:189:14
instance [overlap ok] Ord Callable
-- Defined at src/Grin/Grin.hs:189:17
instance [overlap ok] Show Callable
-- Defined at src/Grin/Grin.hs:189:21
instance [overlap ok] Eq Ty -- Defined at src/Grin/Grin.hs:186:14
instance [overlap ok] Ord Ty -- Defined at src/Grin/Grin.hs:186:17
instance [overlap ok] Eq BaseOp
-- Defined at src/Grin/Grin.hs:111:14
instance [overlap ok] Ord BaseOp
-- Defined at src/Grin/Grin.hs:111:17
instance [overlap ok] Show BaseOp
-- Defined at src/Grin/Grin.hs:111:21
instance [overlap ok] Eq Var -- Defined at src/Grin/Grin.hs:194:14
instance [overlap ok] Ord Var -- Defined at src/Grin/Grin.hs:194:17
instance [overlap ok] Enum Var
-- Defined at src/Grin/Grin.hs:194:21
instance [overlap ok] Eq Val -- Defined at src/Grin/Grin.hs:169:14
instance [overlap ok] Ord Val -- Defined at src/Grin/Grin.hs:169:17
instance [overlap ok] Eq TyThunk
-- Defined at src/Grin/Grin.hs:209:14
instance [overlap ok] Show TyThunk
-- Defined at src/Grin/Grin.hs:209:17
instance [overlap ok] Eq FuncProps
-- Defined at src/Grin/Grin.hs:265:14
instance [overlap ok] Ord FuncProps
-- Defined at src/Grin/Grin.hs:265:17
instance [overlap ok] Show FuncProps
-- Defined at src/Grin/Grin.hs:265:21
instance [overlap ok] Eq Exp -- Defined at src/Grin/Grin.hs:157:14
instance [overlap ok] Show Exp
-- Defined at src/Grin/Grin.hs:157:17
instance [overlap ok] Ord Exp -- Defined at src/Grin/Grin.hs:157:22
instance [overlap ok] Eq FuncDef
-- Defined at src/Grin/Grin.hs:201:16
instance [overlap ok] Ord FuncDef
-- Defined at src/Grin/Grin.hs:201:19
instance [overlap ok] Show FuncDef
-- Defined at src/Grin/Grin.hs:201:23
instance [overlap ok] Eq Lam -- Defined at src/Grin/Grin.hs:114:14
instance [overlap ok] Ord Lam -- Defined at src/Grin/Grin.hs:114:17
instance [overlap ok] Show Lam
-- Defined at src/Grin/Grin.hs:114:21
instance [overlap ok] Show Phase
-- Defined at src/Grin/Grin.hs:280:14
instance [overlap ok] Eq Phase
-- Defined at src/Grin/Grin.hs:280:19
instance [overlap ok] Ord Phase
-- Defined at src/Grin/Grin.hs:280:22
instance [overlap ok] Enum Phase
-- Defined at src/Grin/Grin.hs:280:26
instance [overlap ok] Monoid (GMap Var v)
-- Defined at src/Grin/Grin.hs:725:14
instance [overlap ok] IsEmpty (GMap Var v)
-- Defined at src/Grin/Grin.hs:725:21
instance [overlap ok] HasSize (GMap Var v)
-- Defined at src/Grin/Grin.hs:725:29
instance [overlap ok] Collection (GMap Var v)
-- Defined at src/Grin/Grin.hs:725:37
instance [overlap ok] Unionize (GMap Var v)
-- Defined at src/Grin/Grin.hs:725:48
instance [overlap ok] SetLike (GMap Var v)
-- Defined at src/Grin/Grin.hs:725:57
instance [overlap ok] MapLike (GMap Var v)
-- Defined at src/Grin/Grin.hs:725:65
instance [overlap ok] Eq v => Eq (GMap Var v)
-- Defined at src/Grin/Grin.hs:725:73
instance [overlap ok] Ord v => Ord (GMap Var v)
-- Defined at src/Grin/Grin.hs:725:76
instance [overlap ok] Monoid TyEnv
-- Defined at src/Grin/Grin.hs:221:14
instance [overlap ok] Monoid (GSet Var)
-- Defined at src/Grin/Grin.hs:723:14
instance [overlap ok] IsEmpty (GSet Var)
-- Defined at src/Grin/Grin.hs:723:21
instance [overlap ok] HasSize (GSet Var)
-- Defined at src/Grin/Grin.hs:723:29
instance [overlap ok] Collection (GSet Var)
-- Defined at src/Grin/Grin.hs:723:37
instance [overlap ok] Unionize (GSet Var)
-- Defined at src/Grin/Grin.hs:723:48
instance [overlap ok] SetLike (GSet Var)
-- Defined at src/Grin/Grin.hs:723:57
instance [overlap ok] Eq (GSet Var)
-- Defined at src/Grin/Grin.hs:723:65
instance [overlap ok] Ord (GSet Var)
-- Defined at src/Grin/Grin.hs:723:68
instance [overlap ok] Intjection Var
-- Defined at src/Grin/Grin.hs:718:10
instance [overlap ok] TypeNames Ty
-- Defined at src/Grin/Grin.hs:713:10
instance [overlap ok] Show Val
-- Defined at src/Grin/Grin.hs:680:10
instance [overlap ok] Show Ty -- Defined at src/Grin/Grin.hs:667:10
instance [overlap ok] Show Var
-- Defined at src/Grin/Grin.hs:664:10
instance [overlap ok] FreeVars Exp (GSet Tag)
-- Defined at src/Grin/Grin.hs:645:10
instance [overlap ok] FreeVars Lam (GSet Tag)
-- Defined at src/Grin/Grin.hs:642:10
instance [overlap ok] FreeVars Val (GSet Tag)
-- Defined at src/Grin/Grin.hs:636:10
instance [overlap ok] FreeVars Lam [Var]
-- Defined at src/Grin/Grin.hs:633:10
instance [overlap ok] FreeVars Val [Var]
-- Defined at src/Grin/Grin.hs:631:10
instance [overlap ok] FreeVars Exp [Var]
-- Defined at src/Grin/Grin.hs:629:10
instance [overlap ok] FreeVars Exp (GSet Var)
-- Defined at src/Grin/Grin.hs:612:10
instance [overlap ok] FreeVars FuncProps (GSet Tag)
-- Defined at src/Grin/Grin.hs:609:10
instance [overlap ok] FreeVars FuncProps (GSet Var)
-- Defined at src/Grin/Grin.hs:606:10
instance [overlap ok] FreeVars Val (GSet Var)
-- Defined at src/Grin/Grin.hs:599:10
instance [overlap ok] FreeVars Exp (GSet Var, GSet Tag)
-- Defined at src/Grin/Grin.hs:596:11
instance [overlap ok] FreeVars Lam (GSet Var)
-- Defined at src/Grin/Grin.hs:593:10
instance [overlap ok] FreeVars Exp (Set.Set Tag)
-- Defined at src/Grin/Grin.hs:576:10
instance [overlap ok] FreeVars Lam (Set.Set Tag)
-- Defined at src/Grin/Grin.hs:573:10
instance [overlap ok] FreeVars Exp [Tag]
-- Defined at src/Grin/Grin.hs:570:10
instance [overlap ok] FreeVars Val [Tag]
-- Defined at src/Grin/Grin.hs:567:10
instance [overlap ok] FreeVars Val (Set.Set Tag)
-- Defined at src/Grin/Grin.hs:561:10
instance [overlap ok] FreeVars Exp (Set.Set (Var, Ty))
-- Defined at src/Grin/Grin.hs:544:10
instance [overlap ok] FreeVars Exp (Set.Set Var)
-- Defined at src/Grin/Grin.hs:527:10
instance [overlap ok] FreeVars FuncProps a => FreeVars FuncDef a
-- Defined at src/Grin/Grin.hs:524:10
instance [overlap ok] FreeVars FuncProps (Set.Set Tag)
-- Defined at src/Grin/Grin.hs:521:10
instance [overlap ok] FreeVars FuncProps (Set.Set Var)
-- Defined at src/Grin/Grin.hs:518:10
instance [overlap ok] FreeVars Val (Set.Set (Var, Ty))
-- Defined at src/Grin/Grin.hs:511:10
instance [overlap ok] FreeVars Val (Set.Set Var)
-- Defined at src/Grin/Grin.hs:504:10
instance [overlap ok] FreeVars Exp (Set.Set Var, Set.Set Tag)
-- Defined at src/Grin/Grin.hs:501:11
instance [overlap ok] FreeVars Lam (Set.Set (Var, Ty))
-- Defined at src/Grin/Grin.hs:498:10
instance [overlap ok] FreeVars Lam (Set.Set Var)
-- Defined at src/Grin/Grin.hs:496:10
instance [overlap ok] CanType Val
-- Defined at src/Grin/Grin.hs:480:10
instance [overlap ok] CanType Exp
-- Defined at src/Grin/Grin.hs:445:10
FAMILY INSTANCES
type TypeOf Val -- Defined at src/Grin/Grin.hs:481:10
type TypeOf Exp -- Defined at src/Grin/Grin.hs:446:10
newtype instance GMap Var v -- Defined at src/Grin/Grin.hs:724:18
newtype instance GSet Var -- Defined at src/Grin/Grin.hs:722:18
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.Chars, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (GenUtil, False), (Info.Info, False),
(List, False), (Monad, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.TempDir, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.IntBag, False), (Util.Perhaps, False),
(Util.SetLike, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[149 of 182] Compiling Grin.Noodle ( src/Grin/Noodle.hs, src/Grin/Noodle.o )
TYPE SIGNATURES
Grin.Noodle.$con2tag_ReturnInfo :: ReturnInfo
-> ghc-prim:GHC.Prim.Int#
collectFuncs :: Exp -> (Set.Set Atom, Set.Set Atom)
funcDefBody_uM :: forall (m :: * -> *).
Monad m =>
(Lam -> m Lam) -> FuncDef -> m FuncDef
getReturnInfo :: Exp -> [ReturnInfo]
grinFunctions_s :: [FuncDef] -> Grin -> Grin
grinLet :: [FuncDef] -> Exp -> Exp
isErrOmittable :: Exp -> Bool
isManifestNode :: forall (m :: * -> *). Monad m => Exp -> m [Atom]
isNop :: Exp -> Bool
isOmittable :: Exp -> Bool
mapBodyM :: forall (m :: * -> *).
Monad m =>
(Exp -> m Exp) -> Lam -> m Lam
mapExpExp :: forall (m :: * -> *).
Monad m =>
(Exp -> m Exp) -> Exp -> m Exp
mapExpLam :: forall (m :: * -> *).
Monad m =>
(Lam -> m Lam) -> Exp -> m Exp
mapExpVal :: forall (m :: * -> *).
Monad m =>
(Val -> m Val) -> Exp -> m Exp
mapFBodies :: forall (m :: * -> *).
Monad m =>
(Exp -> m Exp) -> [FuncDef] -> m [FuncDef]
mapGrinFuncsM :: forall (m :: * -> *).
Monad m =>
(Atom -> Lam -> m Lam) -> Grin -> m Grin
mapValVal :: forall (m :: * -> *).
Monad m =>
(Val -> m Val) -> Val -> m Val
mapValVal_ :: forall (m :: * -> *) b.
Monad m =>
(Val -> m b) -> Val -> m ()
modifyTail :: Lam -> Exp -> Exp
updateLetProps :: Exp -> Exp
valIsConstant :: Val -> Bool
TYPE CONSTRUCTORS
data ReturnInfo
RecFlag NonRecursive
= ReturnNode :: (Maybe Atom, [Ty]) -> ReturnInfo Stricts: _ |
ReturnConst :: Val -> ReturnInfo Stricts: _ |
ReturnCalls :: Atom -> ReturnInfo Stricts: _ |
ReturnOther :: ReturnInfo |
ReturnError :: ReturnInfo
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Eq ReturnInfo
-- Defined at src/Grin/Noodle.hs:237:14
instance [overlap ok] Ord ReturnInfo
-- Defined at src/Grin/Noodle.hs:237:17
instance [overlap ok] Tickleable (Atom, Lam) FuncDef
-- Defined at src/Grin/Noodle.hs:51:10
instance [overlap ok] Tickleable Lam FuncDef
-- Defined at src/Grin/Noodle.hs:49:10
instance [overlap ok] Tickleable Lam Grin
-- Defined at src/Grin/Noodle.hs:47:10
instance [overlap ok] Tickleable Val Val
-- Defined at src/Grin/Noodle.hs:44:10
instance [overlap ok] Tickleable Val Exp
-- Defined at src/Grin/Noodle.hs:42:10
instance [overlap ok] Tickleable Exp Exp
-- Defined at src/Grin/Noodle.hs:40:10
instance [overlap ok] Tickleable Exp Lam
-- Defined at src/Grin/Noodle.hs:38:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.Chars, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (GenUtil, False), (Grin.Grin, False),
(Info.Info, False), (List, False), (Monad, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.TempDir, False), (Support.Tickle, False), (System, False),
(Time, False), (Util.ExitCodes, False), (Util.GMap, False),
(Util.Gen, False), (Util.HasSize, False), (Util.IntBag, False),
(Util.Perhaps, False), (Util.SetLike, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[150 of 182] Compiling Grin.Devolve ( src/Grin/Devolve.hs, src/Grin/Devolve.o )
TYPE SIGNATURES
Grin.Devolve.$dmtwiddle :: forall a. Twiddle a => a -> R a
devolveGrin :: Grin -> IO Grin
devolveTransform :: TransformParms Grin
envMap :: Env -> Map.Map Var Var
envRoots :: Env -> Set.Set Val
envVar :: Env -> Var
runR :: forall a. R a -> a
twiddleExp :: Exp -> R Exp
twiddleGrin :: Grin -> Grin
twiddleVal :: forall (m :: * -> *).
(MonadReader Env m, MonadWriter (Set.Set Var) m) =>
Val -> m Val
TYPE CONSTRUCTORS
data Env
RecFlag NonRecursive
= Env :: (Map.Map Var Var) -> (Set.Set Val) -> Var -> Env
Stricts: _ _ _
Fields: envMap envRoots envVar
FamilyInstance: none
newtype R a
RecFlag NonRecursive
= R :: forall a. (RWS Env (Set.Set Var) () a) -> R a Stricts: _
FamilyInstance: none
class Twiddle a
RecFlag NonRecursive
twiddle {- Has default method -} :: a -> R a
COERCION AXIOMS
axiom Grin.Devolve.NTCo:R []
:: R ~# RWST Env (Set.Set Var) () Identity
axiom Grin.Devolve.NTCo:Twiddle [a] :: Twiddle a ~# (a -> R a)
INSTANCES
instance [overlap ok] Monad R
-- Defined at src/Grin/Devolve.hs:77:14
instance [overlap ok] Functor R
-- Defined at src/Grin/Devolve.hs:77:20
instance [overlap ok] MonadReader Env R
-- Defined at src/Grin/Devolve.hs:77:28
instance [overlap ok] MonadWriter (Set.Set Var) R
-- Defined at src/Grin/Devolve.hs:77:44
instance [overlap ok] Twiddle FuncDef
-- Defined at src/Grin/Devolve.hs:162:10
instance [overlap ok] Twiddle Lam
-- Defined at src/Grin/Devolve.hs:142:10
instance [overlap ok] Twiddle a => Twiddle [a]
-- Defined at src/Grin/Devolve.hs:91:10
instance [overlap ok] Twiddle Val
-- Defined at src/Grin/Devolve.hs:88:10
instance [overlap ok] Twiddle Exp
-- Defined at src/Grin/Devolve.hs:85:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.Chars, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (GenUtil, False), (Grin.Grin, False),
(Grin.Noodle, False), (Info.Info, False), (List, False),
(Monad, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (Stats, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Transform, False),
(System, False), (Time, False), (Util.ExitCodes, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.IntBag, False), (Util.Perhaps, False), (Util.SetLike, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[151 of 182] Compiling Grin.EvalInline ( src/Grin/EvalInline.hs, src/Grin/EvalInline.o )
TYPE SIGNATURES
createApply :: Ty -> [Ty] -> TyEnv -> [Tag] -> Lam
createEvalApply :: Grin -> IO Grin
dstore :: Val -> Exp
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.Chars, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (GenUtil, False), (Grin.Grin, False),
(Grin.Noodle, False), (Info.Info, False), (List, False),
(Monad, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (Stats, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.TempDir, False),
(Support.Tickle, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.IntBag, False), (Util.Once, False),
(Util.Perhaps, False), (Util.SetLike, False),
(Util.UniqueMonad, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[152 of 182] Compiling Grin.HashConst ( src/Grin/HashConst.hs, src/Grin/HashConst.o )
TYPE SIGNATURES
emptyHcHash :: HcHash
newConst :: forall (m :: * -> *).
MonadState HcHash m =>
Set.Set Atom -> Val -> m (Bool, Int)
toList :: HcHash -> [(HcNode, Int)]
TYPE CONSTRUCTORS
data HcHash
RecFlag NonRecursive
= HcHash :: Int -> (Map.Map HcNode Int) -> HcHash
HasWrapper
Stricts: ! _
FamilyInstance: none
data HcNode
RecFlag NonRecursive
= HcNode :: Atom -> [Either Val Int] -> HcNode
HasWrapper
Stricts: {-# UNPACK #-} ! _
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Show HcNode
-- Defined at src/Grin/HashConst.hs:14:14
instance [overlap ok] Ord HcNode
-- Defined at src/Grin/HashConst.hs:14:19
instance [overlap ok] Eq HcNode
-- Defined at src/Grin/HashConst.hs:14:23
instance [overlap ok] Show HcHash
-- Defined at src/Grin/HashConst.hs:17:14
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.Chars, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (GenUtil, False), (Grin.Grin, False),
(Info.Info, False), (List, False), (Monad, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.TempDir, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.IntBag, False),
(Util.Perhaps, False), (Util.SetLike, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[153 of 182] Compiling Grin.Whiz ( src/Grin/Whiz.hs, src/Grin/Whiz.o )
TYPE SIGNATURES
applySubst :: forall m (m1 :: * -> *).
(Monad m1, MapLike m, Key m ~ Var, Value m ~ Val) =>
m -> Val -> m1 Val
applySubstE :: forall (m :: * -> *) m1.
(Monad m, MapLike m1, Key m1 ~ Var, Value m1 ~ Val) =>
m1 -> Exp -> m Exp
fizz :: forall (m :: * -> *).
Monad m =>
(forall a. [Val] -> m a -> m a)
-> (([Val], Exp) -> m (Maybe ([Val], Exp)))
-> (Exp -> m Exp)
-> WhizState
-> Lam
-> m (Lam, WhizState)
newVarName :: forall (m :: * -> *).
MonadState WhizState m =>
Var -> m Var
normalizeGrin :: Grin -> Grin
normalizeGrin' :: Grin -> Grin
renamePattern :: forall (m :: * -> *).
MonadState WhizState m =>
[Val] -> m ([Val], WhizEnv)
whiz :: forall (m :: * -> *).
Monad m =>
(forall a. [Val] -> m a -> m a)
-> (([Val], Exp) -> m (Maybe ([Val], Exp)))
-> (Exp -> m Exp)
-> WhizState
-> Lam
-> m (Lam, WhizState)
whizExps :: forall (m :: * -> *).
Monad m =>
(Exp -> m Exp) -> Lam -> m Lam
whizState :: WhizState
TYPE CONSTRUCTORS
type WhizEnv
= GMap Var Val
FamilyInstance: none
type WhizState
= Either (Set.Set Int) Int
FamilyInstance: none
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.Chars, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (GenUtil, False), (Grin.Grin, False),
(Grin.Noodle, False), (Info.Info, False), (List, False),
(Monad, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (Stats, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.TempDir, False),
(Support.Tickle, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.IntBag, False), (Util.Perhaps, False),
(Util.SetLike, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[154 of 182] Compiling Grin.DeadCode ( src/Grin/DeadCode.hs, src/Grin/DeadCode.o )
TYPE SIGNATURES
combineArgs :: forall t t1. t1 -> [t] -> [((t1, Int), t)]
deadCode :: Stats -> [Atom] -> Grin -> IO Grin
go :: forall (m :: * -> *) a a1.
(MonadIO m, Collection a1, Collection a, Fixable a1, Fixable a,
Elem a1 ~ Atom, Elem a ~ Atom) =>
Fixer
-> Value a
-> Value a1
-> Supply Tag Bool
-> Supply (Tag, Int) Bool
-> Supply Var Bool
-> Bool
-> (Tag, Lam)
-> m Lam
implies :: Value Bool -> Value Bool -> Rule
removeDeadArgs :: forall (m :: * -> *).
MonadStats m =>
Bool
-> Set.Set Atom
-> Set.Set Atom
-> Set.Set Var
-> Set.Set (Atom, Int)
-> (Atom, Lam)
-> WhizState
-> m (WhizState, (Atom, Lam))
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.Chars, False),
(Doc.DocLike, False), (Doc.PPrint, False), (Fixer.Fixer, False),
(Fixer.Supply, False), (FlagDump, False), (FlagOpts, False),
(GenUtil, False), (Grin.Grin, False), (Grin.Noodle, False),
(Grin.Whiz, False), (IO, False), (Info.Info, False), (List, False),
(Monad, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (Stats, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.TempDir, False),
(Support.Tickle, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.IntBag, False), (Util.Perhaps, False),
(Util.SetLike, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
src/Grin/DeadCode.hs:5:1:
Warning: The import of `Control.Monad.Trans' is redundant
except perhaps to import instances from `Control.Monad.Trans'
To import instances alone, use: import Control.Monad.Trans()
[155 of 182] Compiling Grin.NodeAnalyze ( src/Grin/NodeAnalyze.hs, src/Grin/NodeAnalyze.o )
TYPE SIGNATURES
Grin.NodeAnalyze.$con2tag_NodeType :: NodeType
-> ghc-prim:GHC.Prim.Int#
Grin.NodeAnalyze.$con2tag_V :: V -> ghc-prim:GHC.Prim.Int#
Grin.NodeAnalyze.$con2tag_Va :: Va -> ghc-prim:GHC.Prim.Int#
bool :: forall t. t -> t -> Bool -> t
bottom :: N
doFunc :: (Atom, Lam) -> M ()
dstore :: Val -> Exp
fa :: Atom -> Int -> Ty -> V
fixupFuncs :: forall t.
Set.Set Atom
-> Set.Set Atom
-> Map.Map V (Result N t)
-> Atom
-> [Ty]
-> Maybe [Ty]
-> (Maybe [WhatToDo], Maybe [WhatToDo])
fixupfs :: forall t (m :: * -> *).
(MonadIO m, Stats.MonadStats m) =>
Map.Map V (Result N t) -> TyEnv -> Lam -> m Lam
fr :: Atom -> Int -> Ty -> V
initCafs :: Grin -> Exp
nodeAnalyze :: Grin -> IO Grin
renameUniqueGrin :: Grin -> Grin
runM :: forall a. Grin -> M a -> C N V
top :: N
transformFuncs :: (Atom
-> [Ty] -> Maybe [Ty] -> (Maybe [WhatToDo], Maybe [WhatToDo]))
-> Grin -> Grin
vr :: Var -> Ty -> V
TYPE CONSTRUCTORS
newtype M a
RecFlag NonRecursive
= M :: forall a. (RWS TyEnv (C N V) Int a) -> M a Stricts: _
FamilyInstance: none
data N
RecFlag NonRecursive
= N :: NodeType -> (Topped (Set.Set Atom)) -> N
HasWrapper
Stricts: ! _
FamilyInstance: none
class NodeLike a
RecFlag NonRecursive
isGood :: a -> Bool
data NodeType
RecFlag NonRecursive
= WHNF :: NodeType | Lazy :: NodeType
FamilyInstance: none
data Todo
RecFlag NonRecursive
= Todo :: Bool -> [V] -> Todo HasWrapper Stricts: ! _ |
TodoNothing :: Todo
FamilyInstance: none
data V
RecFlag NonRecursive
= V :: Va -> Ty -> V Stricts: _ _ | VIgnore :: V
FamilyInstance: none
data Va
RecFlag NonRecursive
= Vr :: Var -> Va HasWrapper Stricts: ! |
Fa :: Atom -> Int -> Va HasWrapper Stricts: ! ! |
Fr :: Atom -> Int -> Va HasWrapper Stricts: ! !
FamilyInstance: none
data WhatToDo
RecFlag NonRecursive
= WhatDelete :: WhatToDo |
WhatUnchanged :: WhatToDo |
WhatConstant :: Val -> WhatToDo Stricts: _ |
WhatSubs :: Ty -> (Val -> Exp) -> (Val -> Exp) -> WhatToDo
Stricts: _ _ _
FamilyInstance: none
COERCION AXIOMS
axiom Grin.NodeAnalyze.NTCo:NodeLike [a]
:: NodeLike a ~# (a -> Bool)
axiom Grin.NodeAnalyze.NTCo:M []
:: M ~# RWST TyEnv (C N V) Int Identity
INSTANCES
instance [overlap ok] Eq NodeType
-- Defined at src/Grin/NodeAnalyze.hs:31:14
instance [overlap ok] Ord NodeType
-- Defined at src/Grin/NodeAnalyze.hs:31:17
instance [overlap ok] Show NodeType
-- Defined at src/Grin/NodeAnalyze.hs:31:21
instance [overlap ok] Eq N
-- Defined at src/Grin/NodeAnalyze.hs:34:14
instance [overlap ok] Eq Va
-- Defined at src/Grin/NodeAnalyze.hs:65:14
instance [overlap ok] Ord Va
-- Defined at src/Grin/NodeAnalyze.hs:65:17
instance [overlap ok] Eq V
-- Defined at src/Grin/NodeAnalyze.hs:59:14
instance [overlap ok] Ord V
-- Defined at src/Grin/NodeAnalyze.hs:59:17
instance [overlap ok] Monad M
-- Defined at src/Grin/NodeAnalyze.hs:97:14
instance [overlap ok] Functor M
-- Defined at src/Grin/NodeAnalyze.hs:97:20
instance [overlap ok] MonadWriter (C N V) M
-- Defined at src/Grin/NodeAnalyze.hs:97:28
instance [overlap ok] Show V
-- Defined at src/Grin/NodeAnalyze.hs:90:10
instance [overlap ok] NodeLike (Either V b)
-- Defined at src/Grin/NodeAnalyze.hs:86:10
instance [overlap ok] NodeLike V
-- Defined at src/Grin/NodeAnalyze.hs:82:10
instance [overlap ok] NodeLike Val
-- Defined at src/Grin/NodeAnalyze.hs:79:10
instance [overlap ok] NodeLike Ty
-- Defined at src/Grin/NodeAnalyze.hs:74:10
instance [overlap ok] Fixable N
-- Defined at src/Grin/NodeAnalyze.hs:49:10
instance [overlap ok] Fixable NodeType
-- Defined at src/Grin/NodeAnalyze.hs:41:10
instance [overlap ok] Show N
-- Defined at src/Grin/NodeAnalyze.hs:36:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.Chars, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (GenUtil, False), (Grin.Grin, False),
(Grin.Noodle, False), (Info.Info, False), (List, False),
(Monad, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (Stats, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.TempDir, False),
(Support.Tickle, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.IntBag, False), (Util.Perhaps, False),
(Util.SetLike, False), (Util.UnionFind, False),
(Util.UnionSolve, False), (Util.UniqueMonad, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[156 of 182] Compiling Grin.Optimize ( src/Grin/Optimize.hs, src/Grin/Optimize.o )
TYPE SIGNATURES
demote :: Val -> Exp
findSpeculatable :: Grin -> [Atom]
grinPush :: Stats -> Lam -> IO Lam
grinSpeculate :: Grin -> IO Grin
justDeps :: [PExp] -> [Var] -> [Int]
makeDeps :: [PExp] -> PExp -> PExp
performSpeculate :: forall (m :: * -> *).
MonadStats m =>
[Atom] -> Grin -> m Grin
pexpBind :: PExp -> [Val]
pexpDeps :: PExp -> [Int]
pexpExp :: PExp -> Exp
pexpProvides :: PExp -> [Var]
pexpUniq :: PExp -> Int
TYPE CONSTRUCTORS
data PExp
RecFlag NonRecursive
= PExp :: Int -> [Val] -> Exp -> [Var] -> [Int] -> PExp
Stricts: _ _ _ _ _
Fields: pexpUniq pexpBind pexpExp pexpProvides pexpDeps
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Show PExp
-- Defined at src/Grin/Optimize.hs:26:16
instance [overlap ok] Eq PExp
-- Defined at src/Grin/Optimize.hs:28:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.Chars, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (GenUtil, False), (Grin.Grin, False),
(Grin.Noodle, False), (Info.Info, False), (List, False),
(Monad, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (Stats, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.TempDir, False),
(Support.Tickle, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.IntBag, False),
(Util.Perhaps, False), (Util.SetLike, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[157 of 182] Compiling Grin.SSimplify ( drift_processed/Grin/SSimplify.hs, src/Grin/SSimplify.o )
TYPE SIGNATURES
Grin.SSimplify.$con2tag_Unbox :: Unbox -> ghc-prim:GHC.Prim.Int#
applySubst :: forall (m :: * -> *).
(MonadReader SEnv m, MonadWriter SCol m) =>
Val -> m Val
applySubstE :: Exp -> S Exp
bool :: forall t. Bool -> t -> t -> t
colFreeVars :: SCol -> GSet Var
colStats :: SCol -> Stats.Stat
combineUnboxing :: UnboxingResult
-> UnboxingResult -> UnboxingResult
dstore :: Val -> Exp
editTail :: forall (m :: * -> *).
Monad m =>
[Ty] -> (Exp -> m Exp) -> Exp -> m Exp
envCSE :: SEnv -> Map.Map Exp (Atom, Exp)
envPapp :: SEnv -> IM.IntMap (Atom, [Val])
envSubst :: SEnv -> IM.IntMap Val
explicitRecurse :: Grin -> IO Grin
extEnv :: Var -> Val -> SEnv -> SEnv
getUnboxing :: Exp -> UnboxingResult
isHoly :: Val -> Bool
isUnUnknown :: Unbox -> Bool
newVarName :: Var -> S Var
renamePattern :: [Val] -> S ([Val], SEnv)
simpBind :: [Val] -> Exp -> S Exp -> S Exp
simpDone :: Exp -> S Exp
simpExp :: Exp -> S Exp
simpFuncs :: [FuncDef] -> S [FuncDef]
simpLam :: Lam -> S Lam
simplify :: Grin -> IO Grin
tellFV :: forall (m :: * -> *) a.
(MonadWriter SCol m, FreeVars a (GSet Var)) =>
a -> m ()
unboxModify :: UnboxingResult -> Exp -> Exp
unboxRet :: UnboxingResult -> [Val] -> Exp
unboxTypes :: UnboxingResult -> Maybe [Ty]
usedVars :: SState -> IS.IntSet
zeroVars :: forall (m :: * -> *).
Stats.MonadStats m =>
(Var -> Bool) -> Val -> m Val
TYPE CONSTRUCTORS
newtype S a
RecFlag NonRecursive
= S :: forall a. (RWS SEnv SCol SState a) -> S a Stricts: _
FamilyInstance: none
data SCol
RecFlag NonRecursive
= SCol :: Stats.Stat -> (GSet Var) -> SCol
Stricts: _ _
Fields: colStats colFreeVars
FamilyInstance: none
data SEnv
RecFlag NonRecursive
= SEnv :: (IM.IntMap Val) -> (Map.Map Exp (Atom, Exp))
-> (IM.IntMap (Atom, [Val])) -> SEnv
Stricts: _ _ _
Fields: envSubst envCSE envPapp
FamilyInstance: none
newtype SState
RecFlag NonRecursive
= SState :: IS.IntSet -> SState Stricts: _ Fields: usedVars
FamilyInstance: none
data Unbox
RecFlag NonRecursive
= UnConst :: Val -> Unbox Stricts: _ |
UnUnknown :: Ty -> Unbox Stricts: _ |
UnBaseOp :: BaseOp -> [Unbox] -> Unbox Stricts: _ _
FamilyInstance: none
data UnboxingResult
RecFlag NonRecursive
= UnErr :: [Ty] -> UnboxingResult Stricts: _ |
UnStore :: Bool -> Atom -> [Unbox] -> UnboxingResult
HasWrapper
Stricts: ! ! _ |
UnDemote :: Unbox -> UnboxingResult Stricts: _ |
UnReturn :: [Unbox] -> UnboxingResult Stricts: _ |
UnTail :: (Set.Set Atom) -> [Ty] -> [Ty] -> UnboxingResult
Stricts: _ _ _
FamilyInstance: none
COERCION AXIOMS
axiom Grin.SSimplify.NTCo:SState [] :: SState ~# IS.IntSet
axiom Grin.SSimplify.NTCo:S [] :: S ~# RWS SEnv SCol SState
axiom Grin.SSimplify.TFCo:R:TypeOfUnbox []
:: TypeOf Unbox ~# Grin.SSimplify.R:TypeOfUnbox
axiom Grin.SSimplify.TFCo:R:TypeOfUnboxingResult []
:: TypeOf UnboxingResult ~# Grin.SSimplify.R:TypeOfUnboxingResult
INSTANCES
instance [overlap ok] Monad S
-- Defined at src/Grin/SSimplify.hs:62:14
instance [overlap ok] Functor S
-- Defined at src/Grin/SSimplify.hs:62:20
instance [overlap ok] MonadWriter SCol S
-- Defined at src/Grin/SSimplify.hs:62:28
instance [overlap ok] MonadReader SEnv S
-- Defined at src/Grin/SSimplify.hs:62:46
instance [overlap ok] MonadState SState S
-- Defined at src/Grin/SSimplify.hs:62:63
instance [overlap ok] Eq Unbox
-- Defined at src/Grin/SSimplify.hs:295:14
instance [overlap ok] Ord Unbox
-- Defined at src/Grin/SSimplify.hs:295:17
instance [overlap ok] Monoid SCol
-- Defined at src/Grin/SSimplify.hs:437:10
instance [overlap ok] Monoid SEnv
-- Defined at src/Grin/SSimplify.hs:433:10
instance [overlap ok] CanType Unbox
-- Defined at src/Grin/SSimplify.hs:308:10
instance [overlap ok] CanType UnboxingResult
-- Defined at src/Grin/SSimplify.hs:300:10
instance [overlap ok] Stats.MonadStats S
-- Defined at src/Grin/SSimplify.hs:64:10
FAMILY INSTANCES
type TypeOf Unbox -- Defined at src/Grin/SSimplify.hs:309:10
type TypeOf UnboxingResult
-- Defined at src/Grin/SSimplify.hs:301:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.Chars, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (GenUtil, False), (Grin.Grin, False),
(Grin.Noodle, False), (Info.Info, False), (List, False),
(Monad, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (Stats, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.TempDir, False),
(Support.Tickle, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.IntBag, False), (Util.Perhaps, False),
(Util.RWS, False), (Util.SetLike, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[158 of 182] Compiling E.Inline ( src/E/Inline.hs, src/E/Inline.o )
TYPE SIGNATURES
app :: forall (m :: * -> *). MonadStats m => (E, [E]) -> m E
app' :: forall (m :: * -> *). MonadStats m => E -> [E] -> m E
baseInlinability :: forall a a1.
(Num a, HasProperties a1) =>
a1 -> E -> a
forceInline :: forall a. HasProperties a => a -> Bool
forceNoinline :: forall a. HasProperties a => a -> Bool
forceSuperInline :: forall a. HasProperties a => a -> Bool
programDecomposedCombs :: Program -> [(Bool, [Comb])]
programDecomposedDs :: Program -> [Either (TVr, E) [(TVr, E)]]
programMapProgGroups :: forall (m :: * -> *).
Monad m =>
IdMap (Maybe E) -> (Program -> m Program) -> Program -> m Program
programMapRecGroups :: forall (m :: * -> *).
Monad m =>
IdMap (Maybe E)
-> (Id -> Info -> m Info)
-> (E -> Info -> m Info)
-> (E -> Info -> m Info)
-> ((Bool, [Comb]) -> m [Comb])
-> Program
-> m Program
programSubProgram :: Program -> Bool -> [Comb] -> Program
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Annotate, False), (E.Binary, False),
(E.E, False), (E.Eval, False), (E.FreeVars, False),
(E.Program, False), (E.Show, False), (E.Subst, False),
(E.Traverse, False), (E.Type, False), (E.TypeCheck, False),
(E.Values, False), (FlagDump, False), (FlagOpts, False),
(FrontEnd.Class, False), (FrontEnd.HsSyn, False),
(FrontEnd.KindInfer, False), (FrontEnd.Representation, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Syn.Traverse, False),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Type, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (IO, False), (Info.Binary, True),
(Info.Info, False), (Info.Properties, False), (Info.Types, False),
(List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[159 of 182] Compiling E.Eta ( src/E/Eta.hs, src/E/Eta.o )
TYPE SIGNATURES
E.Eta.$con2tag_ArityType :: ArityType -> ghc-prim:GHC.Prim.Int#
andArityType :: ArityType -> ArityType -> ArityType
annotateArity :: E -> Info.Info -> Info.Info
annotateArity' :: ArityType -> Info.Info -> Info.Info
arity :: forall t. Num t => ArityType -> (ArityType, t)
arityType :: E -> ArityType
deleteArity :: Info.Info -> Info.Info
etaAnnotateProgram :: Program -> Program
etaExpandAp :: forall (m :: * -> *).
(NameMonad Id m, Stats.MonadStats m) =>
DataTable -> TVr -> [E] -> m (Maybe E)
etaExpandDef :: forall (m :: * -> *).
(NameMonad Id m, Stats.MonadStats m) =>
DataTable -> Int -> TVr -> E -> m (Maybe (TVr, E))
etaExpandDef' :: forall (m :: * -> *).
(NameMonad Id m, Stats.MonadStats m) =>
DataTable -> Int -> TVr -> E -> m (TVr' E, E)
etaExpandProgram :: forall (m :: * -> *).
Stats.MonadStats m =>
Program -> m Program
etaReduce :: E -> E
expandPis :: DataTable -> E -> E
getArityInfo :: forall e t. Num t => TVr' e -> (ArityType, t)
isOneShot :: forall a. HasProperties a => a -> Bool
TYPE CONSTRUCTORS
data ArityType
RecFlag NonRecursive
= AFun :: Bool -> ArityType -> ArityType Stricts: _ _ |
ABottom :: ArityType |
ATop :: ArityType
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Typeable ArityType
-- Defined at src/E/Eta.hs:37:21
instance [overlap ok] Eq ArityType -- Defined at src/E/Eta.hs:37:14
instance [overlap ok] Ord ArityType
-- Defined at src/E/Eta.hs:37:17
instance [overlap ok] Show ArityType
-- Defined at src/E/Eta.hs:39:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Annotate, False), (E.Binary, False),
(E.E, False), (E.Eval, False), (E.FreeVars, False),
(E.Inline, False), (E.Program, False), (E.Show, False),
(E.Subst, False), (E.Traverse, False), (E.Type, False),
(E.TypeCheck, False), (E.Values, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[160 of 182] Compiling E.LambdaLift ( drift_processed/E/LambdaLift.hs, src/E/LambdaLift.o )
TYPE SIGNATURES
annotateId :: forall t. ToName (t, [Char]) => t -> Id -> Id
assert :: Value Bool -> IO ()
calculateLiftees :: Program -> IO IdSet
declEnv :: S -> [(TVr, E)]
funcName :: S -> Name
implies :: Value Bool -> Value Bool -> IO ()
isStrict :: S -> Bool
isStrict_s :: Bool -> S -> S
isStrict_u :: (Bool -> Bool) -> S -> S
lambdaLift :: Program -> IO Program
removeType :: TVr -> E -> E -> E
staticArgumentTransform :: Program -> Program
topVars :: S -> IdSet
topVars_u :: (IdSet -> IdSet) -> S -> S
typeLift :: E -> [Char]
TYPE CONSTRUCTORS
data S
RecFlag NonRecursive
= S :: Name -> IdSet -> Bool -> [(TVr, E)] -> S
Stricts: _ _ _ _
Fields: funcName topVars isStrict declEnv
FamilyInstance: none
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Annotate, False), (E.Binary, False),
(E.E, False), (E.Eval, False), (E.FreeVars, False),
(E.Inline, False), (E.Program, False), (E.Show, False),
(E.Subst, False), (E.Traverse, False), (E.Type, False),
(E.TypeCheck, False), (E.Values, False), (Fixer.Fixer, False),
(Fixer.Supply, False), (FlagDump, False), (FlagOpts, False),
(FrontEnd.Class, False), (FrontEnd.HsSyn, False),
(FrontEnd.KindInfer, False), (FrontEnd.Representation, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Syn.Traverse, False),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Type, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (IO, False), (Info.Binary, True),
(Info.Info, False), (Info.Properties, False), (Info.Types, False),
(List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.UniqueMonad, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[161 of 182] Compiling E.LetFloat ( src/E/LetFloat.hs, src/E/LetFloat.o )
TYPE SIGNATURES
atomizeAp :: IdSet -> Bool -> DataTable -> E -> E
atomizeApps :: Bool -> Program -> Program
canFloatPast :: forall a.
(CanType a, HasProperties a, TypeOf a ~ E) =>
a -> Bool
dsBinds :: forall a t b. [Either (a, t) [(a, b)]] -> [a]
floatInward :: E -> E
floatInwardE :: E -> Binds -> E
floatInwardE' :: E -> Binds -> E
floatOutward :: Program -> IO Program
fvBind :: forall t t1 a.
Unionize t1 =>
Either (t, t1) [(a, t1)] -> t1
letBindAll :: DataTable -> Module -> E -> IO E
letRec :: [(TVr' E, E)] -> E -> E
lfName :: forall a a1.
(Show a1, Show a) =>
a1 -> a -> NameType -> Id -> Name
mapMSnd :: forall (m :: * -> *) t a1 a.
Monad m =>
(t -> m a1) -> [(a, t)] -> m [(a, a1)]
maybeShowName :: TVr -> [Char]
notFloatOut :: forall t. t -> Bool
programFloatInward :: Program -> IO Program
sepByDropPoint :: [FVarSet] -> Binds -> (Binds, [Binds])
sepDupableBinds :: [Id] -> Binds -> (Binds, Binds)
top_level :: Level
TYPE CONSTRUCTORS
type Binds
= [Either (Comb, FVarSet) [(Comb, FVarSet)]]
FamilyInstance: none
newtype CLevel
RecFlag NonRecursive
= CLevel :: Level -> CLevel Stricts: _
FamilyInstance: none
type FVarSet
= IdSet
FamilyInstance: none
newtype Level
RecFlag NonRecursive
= Level :: Int -> Level Stricts: _
FamilyInstance: none
COERCION AXIOMS
axiom E.LetFloat.NTCo:Level [] :: Level ~# Int
axiom E.LetFloat.NTCo:CLevel [] :: CLevel ~# Level
INSTANCES
instance [overlap ok] Typeable Level
-- Defined at src/E/LetFloat.hs:193:31
instance [overlap ok] Typeable CLevel
-- Defined at src/E/LetFloat.hs:196:31
instance [overlap ok] Eq Level
-- Defined at src/E/LetFloat.hs:193:14
instance [overlap ok] Ord Level
-- Defined at src/E/LetFloat.hs:193:17
instance [overlap ok] Enum Level
-- Defined at src/E/LetFloat.hs:193:21
instance [overlap ok] Show Level
-- Defined at src/E/LetFloat.hs:193:26
instance [overlap ok] Eq CLevel
-- Defined at src/E/LetFloat.hs:196:14
instance [overlap ok] Ord CLevel
-- Defined at src/E/LetFloat.hs:196:17
instance [overlap ok] Enum CLevel
-- Defined at src/E/LetFloat.hs:196:21
instance [overlap ok] Show CLevel
-- Defined at src/E/LetFloat.hs:196:26
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Annotate, False), (E.Binary, False),
(E.E, False), (E.Eval, False), (E.FreeVars, False),
(E.Inline, False), (E.Program, False), (E.Show, False),
(E.Subst, False), (E.Traverse, False), (E.Type, False),
(E.TypeCheck, False), (E.Values, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.UniqueMonad, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[162 of 182] Compiling E.Lint ( src/E/Lint.hs, src/E/Lint.o )
TYPE SIGNATURES
dumpCore :: [Char] -> Program -> IO ()
dumpCoreExtra :: [Char] -> Program -> String -> IO ()
lintCheckE :: forall a a1.
PPrint Doc a1 =>
IO a -> DataConstructors.DataTable -> a1 -> E -> IO ()
lintCheckProgram :: forall a. IO a -> Program -> IO ()
maybeDie :: IO ()
onerrNone :: IO ()
printESize :: String -> Program -> IO ()
programFreeVars :: forall b. FreeVars E b => Program -> b
transformProgram :: forall (m :: * -> *).
MonadIO m =>
TransformParms Program -> Program -> m Program
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.E, False),
(E.Eval, False), (E.FreeVars, False), (E.Program, False),
(E.Show, False), (E.Subst, False), (E.Traverse, False),
(E.Type, False), (E.TypeCheck, False), (E.Values, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.Compat, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Transform, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[163 of 182] Compiling E.TypeAnalysis ( src/E/TypeAnalysis.hs, src/E/TypeAnalysis.o )
TYPE SIGNATURES
assert :: Value Bool -> Fixer.Fixer.Rule
calcAlt :: forall (m :: * -> *) p.
(Ord p, Show p, Data.Typeable.Internal.Typeable p, MonadIO m) =>
Env -> Value (VMap p Name) -> Alt E -> m ()
calcComb :: Env -> Comb -> IO ()
calcCombs :: Env -> [Comb] -> IO ()
calcDef :: Env -> (TVr, E) -> IO ()
calcDs :: Env -> [(TVr, E)] -> IO ()
calcE :: Env -> E -> IO ()
calcTE :: Env -> (TVr, E) -> IO ()
caseCast :: TVr -> E -> E -> E
eToPatM :: forall (m :: * -> *).
Monad m =>
(E -> m TVr) -> E -> m (Lit TVr E)
envEnv :: Env -> IdMap [Value Typ]
envRuleSupply :: Env -> Supply (Module, Int) Bool
envValSupply :: Env -> Supply TVr Bool
evalErrorT :: forall (m :: * -> *) a.
Monad m =>
a -> ErrorT () m a -> m a
expandPlaceholder :: forall (m :: * -> *).
Monad m =>
Comb -> m Comb
extractValMap :: [(TVr, E)] -> IdMap [Value Typ]
fuzzyConstant :: E -> Typ
getTyp :: forall (m :: * -> *).
Monad m =>
E -> DataTable -> Typ -> m E
getValue :: forall (m :: * -> *).
Monad m =>
E -> m (Value (VMap () Name))
isUnused :: SpecEnv -> TVr' E -> Bool
lookupArgs :: forall e. TVr' e -> Env -> [Value (VMap () Name)]
repi :: E -> E
senvArgs :: SpecEnv -> Map.Map TVr [Int]
senvDataTable :: SpecEnv -> DataTable
senvUnusedRules :: SpecEnv -> Set.Set (Module, Int)
senvUnusedVars :: SpecEnv -> Set.Set TVr
sillyEntry :: Env -> TVr -> IO ()
specAlt :: forall (m :: * -> *).
Stats.MonadStats m =>
SpecEnv -> Alt E -> m (Alt E)
specBody :: forall (m :: * -> *).
Stats.MonadStats m =>
Bool -> SpecEnv -> E -> m E
specializeComb :: forall (m :: * -> *) t.
(MapLike t, Stats.MonadStats m, Elem t ~ (TVr, [Int])) =>
Bool -> SpecEnv -> Comb -> m (Comb, t)
specializeCombs :: forall (m :: * -> *).
Stats.MonadStats m =>
Bool -> SpecEnv -> [Comb] -> m ([Comb], SpecEnv)
specializeDs :: forall (m :: * -> *).
Stats.MonadStats m =>
Bool -> SpecEnv -> [(TVr, E)] -> m ([(TVr, E)], SpecEnv)
specializeProgram :: forall (m :: * -> *).
Stats.MonadStats m =>
Bool
-> Set.Set (Module, Int) -> Set.Set TVr -> Program -> m Program
tagE :: forall (m :: * -> *). MonadIO m => Env -> E -> m ()
toLit :: forall (m :: * -> *). Monad m => E -> m (Name, [E])
typConstant :: forall (m :: * -> *). Monad m => E -> m Typ
typeAnalyze :: Bool -> Program -> IO Program
TYPE CONSTRUCTORS
data Env
RecFlag NonRecursive
= Env :: (Supply (Module, Int) Bool) -> (Supply TVr Bool)
-> (IdMap [Value Typ]) -> Env
Stricts: _ _ _
Fields: envRuleSupply envValSupply envEnv
FamilyInstance: none
data SpecEnv
RecFlag NonRecursive
= SpecEnv :: (Set.Set (Module, Int)) -> (Set.Set TVr) -> DataTable
-> (Map.Map TVr [Int]) -> SpecEnv
Stricts: _ _ _ _
Fields: senvUnusedRules senvUnusedVars senvDataTable senvArgs
FamilyInstance: none
type Typ
= VMap () Name
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Error ()
-- Defined at src/E/TypeAnalysis.hs:283:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Annotate, False), (E.Binary, False),
(E.E, False), (E.Eta, False), (E.Eval, False), (E.FreeVars, False),
(E.Inline, False), (E.Program, False), (E.Rules, False),
(E.Show, False), (E.Subst, False), (E.Traverse, False),
(E.Type, False), (E.TypeCheck, False), (E.Values, False),
(Fixer.Fixer, False), (Fixer.Supply, False), (Fixer.VMap, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[164 of 182] Compiling E.WorkerWrapper ( src/E/WorkerWrapper.hs, src/E/WorkerWrapper.o )
TYPE SIGNATURES
fsubs :: Demand.SubDemand -> [Demand.Demand]
isPlain :: Arg -> Bool
performWorkWrap :: DataTable -> [(TVr, E)] -> ([(TVr, E)], Stat)
tmpNames :: NameType -> Id -> [Id]
workWrap' :: forall (m :: * -> *).
MonadStats m =>
DataTable -> TVr -> E -> m ((TVr, E), (TVr, E))
workWrapProgram :: Program -> Program
workerName :: Id -> Id
wrappable :: forall (m :: * -> *).
Monad m =>
DataTable -> TVr -> E -> m (Maybe Name, E, [(Arg, TVr)])
TYPE CONSTRUCTORS
data Arg
RecFlag NonRecursive
= Absent :: Arg |
Cons :: Constructor -> [(Arg, TVr)] -> Arg Stricts: _ _ |
Plain :: Arg
FamilyInstance: none
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.CPR, False),
(E.Demand, False), (E.E, False), (E.Eval, False),
(E.FreeVars, False), (E.Program, False), (E.Show, False),
(E.Subst, False), (E.Traverse, False), (E.Type, False),
(E.TypeCheck, False), (E.Values, False), (FlagDump, False),
(FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[165 of 182] Compiling E.PrimOpt ( src/E/PrimOpt.hs, src/E/PrimOpt.o )
TYPE SIGNATURES
cextra :: Prim -> [E] -> [Char]
performPrimOpt :: forall (m :: * -> *). MonadStats m => E -> m E
primConv :: Op.ConvOp -> Op.Ty -> Op.Ty -> E -> E -> E
primOpt' :: forall (m :: * -> *). MonadStats m => E -> m E
TYPE CONSTRUCTORS
COERCION AXIOMS
INSTANCES
instance [overlap ok] Expression E E
-- Defined at src/E/PrimOpt.hs:116:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Cmm.OpEval, False), (DataConstructors, True),
(Directory, False), (Doc.Chars, False), (Doc.DocLike, False),
(Doc.PPrint, False), (Doc.Pretty, False), (E.E, False),
(E.Eval, False), (E.FreeVars, False), (E.Show, True),
(E.Subst, False), (E.Type, False), (E.TypeCheck, False),
(E.Values, False), (GenUtil, False), (IO, False),
(Info.Info, False), (Info.Properties, False), (Info.Types, False),
(List, False), (Maybe, False), (Monad, False), (Name.Id, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (PackedString, False), (Random, False),
(Ratio, False), (Stats, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.Tuple, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.GMap, False), (Util.Gen, False), (Util.Graph, False),
(Util.HasSize, False), (Util.Inst, False), (Util.IntBag, False),
(Util.NameMonad, False), (Util.Seq, False), (Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[166 of 182] Compiling E.SSimplify ( drift_processed/E/SSimplify.hs, src/E/SSimplify.o )
TYPE SIGNATURES
E.SSimplify.$con2tag_Binding :: Binding -> ghc-prim:GHC.Prim.Int#
E.SSimplify.$con2tag_Forced :: Forced -> ghc-prim:GHC.Prim.Int#
E.SSimplify.$con2tag_KnowSomething :: KnowSomething
-> ghc-prim:GHC.Prim.Int#
E.SSimplify.$con2tag_Occurance :: Occurance
-> ghc-prim:GHC.Prim.Int#
E.SSimplify.$con2tag_Range :: Range -> ghc-prim:GHC.Prim.Int#
andOM :: forall m. (MapLike m, Value m ~ UseInfo) => m -> m -> m
andOcc :: UseInfo -> UseInfo -> UseInfo
annb :: forall e a. (Show a, Typeable a) => a -> TVr' e -> TVr' e
annb' :: forall e. TVr' e -> TVr' e
annbind :: forall m e.
(Show (Value m), Typeable (Value m), MapLike m, Key m ~ Id) =>
m -> TVr' e -> TVr' e
annbind' :: forall m e.
(CanType (TVr' e), MapLike m, Key m ~ Id, TypeOf (TVr' e) ~ E) =>
m -> TVr' e -> TVr' e
applySubst :: forall a. Subst -> IdMap a -> IdMap OutE
bindingAtomic :: Binding -> Bool
bindingCheap :: Binding -> Bool
bindingE :: Binding -> OutE
bindingOccurance :: Binding -> Occurance
cacheScope :: Env -> Env
cacheSimpOpts :: SimplifyOpts -> SimplifyOpts
cacheSubst :: Env -> Env
calcForced :: forall a. HasProperties a => Bool -> a -> Forced
changeScope :: (Binding -> Binding) -> Env -> Env
coerceOpt :: forall (m :: * -> *).
MonadStats m =>
(E -> m E) -> E -> m E
collectBinding :: Comb -> OM (Comb, OMap)
collectDs :: [Comb] -> OMap -> OM [Comb]
collectOccurance :: E -> OM E
collectOccurance' :: E -> (E, IdMap UseInfo)
contArg :: Cont -> Range
contNext :: Cont -> Cont
dosub :: InE -> SM OutE
emptySimplifyOpts :: SimplifyOpts
envCachedSubst :: Env -> IdMap E
envInScope :: Env -> IdMap Binding
envInScopeCache :: Env -> IdMap E
envRules :: Env -> IdMap ARules
envSubst :: Env -> Subst
envSubst_s :: Subst -> Env -> Env
envSubst_u :: (Subst -> Subst) -> Env -> Env
evalRange :: Range -> SM OutE
exprSize :: Int -> E -> Int -> [(Id, KnowSomething)] -> Maybe Int
extendScope :: IdMap Binding -> Env -> Env
extraArgDiscount :: Int
fixInline :: forall a.
HasProperties a =>
Bool -> a -> Binding -> Binding
getIds :: SM (IdSet, IdSet)
grump :: forall a. OM a -> OM (a, OMap)
idsBound :: SmState -> IdSet
idsSeed :: SmState -> Int
idsUsed :: SmState -> IdSet
inLam :: OMap -> OMap
inlineForced :: Binding -> Forced
insertDoneSubst :: TVr -> OutE -> Env -> Env
insertDoneSubst' :: Id -> OutE -> Env -> Env
insertInScope :: Id -> Binding -> Env -> Env
insertRange :: Id -> Range -> Env -> Env
isBoundTo :: forall a.
HasProperties a =>
SimplifyOpts -> a -> UseInfo -> E -> Binding
knowSomethingDiscount :: Int
localEnv :: forall a. (Env -> Env) -> SM a -> SM a
loopFunc :: forall a a1. (Num a, HasProperties a1) => a1 -> E -> a
mapLitBinds :: forall e t a. (a -> e) -> Lit a t -> Lit e t
mapLitBindsM :: forall (m :: * -> *) e t t1.
Monad m =>
(t -> m e) -> Lit t t1 -> m (Lit e t1)
maybeLetRec :: [(TVr, E)] -> E -> E
minimumArgs :: UseInfo -> Int
modifyIds :: ((IdSet, IdSet) -> (IdSet, IdSet)) -> SM ()
multiInline :: forall t. t -> E -> [KnowSomething] -> Bool
noSizeIncrease :: forall a. E -> [a] -> Bool
noUseInfo :: UseInfo
notUsedInfo :: UseInfo
orMany :: [UseInfo] -> UseInfo
orMaps :: [OMap] -> OMap
programPruneOccurance :: Program -> Program
programSSimplify :: SimplifyOpts -> Program -> Program
programSSimplifyPStat :: SimplifyOpts -> Program -> IO Program
putIds :: (IdSet, IdSet) -> SM ()
runSM :: forall a. Env -> SM a -> (a, Stat)
scrutineeDiscount :: Int
simplifyDs :: forall (m :: * -> *).
MonadStats m =>
Program -> SimplifyOpts -> [Comb] -> m [Comb]
simplifyE :: SimplifyOpts -> InE -> (Stat, OutE)
smAddBoundNamesIdSet :: IdSet -> SM ()
smAddNamesIdSet :: IdSet -> SM ()
smState :: SmState
so_boundVars :: SimplifyOpts -> IdMap Comb
so_boundVarsCache :: SimplifyOpts -> IdSet
so_cachedScope :: SimplifyOpts -> Env
so_finalPhase :: SimplifyOpts -> Bool
so_forwardVars :: SimplifyOpts -> IdSet
so_noInlining :: SimplifyOpts -> Bool
so_postLift :: SimplifyOpts -> Bool
someBenefit :: forall t. t -> E -> [KnowSomething] -> Bool
stat_unsafeCoerce :: Atom
substAddList :: [(Id, Range)] -> Env -> Env
substLookup :: Id -> SM (Maybe Range)
susp :: E -> Subst -> Range
unOM :: forall t. OM t -> ReaderWriter IdSet (OMap, IdSet) t
unOMap :: OMap -> IdMap UseInfo
useOccurance :: UseInfo -> Occurance
worthStricting :: E -> Bool
TYPE CONSTRUCTORS
data Binding
RecFlag NonRecursive
= NotAmong :: [Name] -> Binding Stricts: _ |
IsBoundTo :: Occurance -> OutE -> Bool -> Forced -> Bool -> Binding
HasWrapper
Stricts: ! _ ! ! !
Fields: bindingOccurance bindingE bindingCheap inlineForced bindingAtomic |
NotKnown :: Binding
FamilyInstance: none
data Cont
RecFlag NonRecursive
= ApplyTo :: Range -> Cont -> Cont
Stricts: _ _
Fields: contArg contNext |
LazyContext :: TVr -> Cont Stricts: _ |
StartContext :: Cont |
Coerce :: Range -> Cont -> Cont Stricts: _ _
FamilyInstance: none
data Env
RecFlag NonRecursive
= Env :: (IdMap E) -> Subst -> (IdMap ARules) -> (IdMap Binding)
-> (IdMap E) -> Env
Stricts: _ _ _ _ _
Fields: envCachedSubst envSubst envRules envInScope envInScopeCache
FamilyInstance: none
data Forced
RecFlag NonRecursive
= ForceInline :: Forced |
ForceNoinline :: Forced |
NotForced :: Forced
FamilyInstance: none
type InE
= E
FamilyInstance: none
type InTVr
= TVr
FamilyInstance: none
data KnowSomething
RecFlag NonRecursive
= KnowNothing :: KnowSomething |
KnowNotOneOf :: [Name] -> KnowSomething Stricts: _ |
KnowIsCon :: Name -> KnowSomething Stricts: _ |
KnowIsNum :: Number -> KnowSomething Stricts: _ |
KnowSomething :: KnowSomething
FamilyInstance: none
newtype OM a
RecFlag NonRecursive
= OM :: forall a. (ReaderWriter IdSet (OMap, IdSet) a) -> OM a
Stricts: _
FamilyInstance: none
newtype OMap
RecFlag NonRecursive
= OMap :: (IdMap UseInfo) -> OMap Stricts: _
FamilyInstance: none
data Occurance
RecFlag NonRecursive
= Unused :: Occurance |
Once :: Occurance |
OnceInLam :: Occurance |
ManyBranch :: Occurance |
Many :: Occurance |
LoopBreaker :: Occurance
FamilyInstance: none
type OutE
= E
FamilyInstance: none
type OutTVr
= TVr
FamilyInstance: none
data Range
RecFlag NonRecursive
= Done :: OutE -> Range Stricts: _ |
Susp :: InE -> Subst -> Range Stricts: _ _
FamilyInstance: none
newtype SM a
RecFlag NonRecursive
= SM :: forall a. (RWS Env Stat SmState a) -> SM a Stricts: _
FamilyInstance: none
data SimplifyOpts
RecFlag NonRecursive
= SimpOpts :: Bool -> Bool -> Bool -> (IdMap Comb) -> IdSet
-> IdSet -> Env -> SimplifyOpts
HasWrapper
Stricts: ! ! ! _ _ _ _
Fields: so_noInlining so_finalPhase so_postLift so_boundVars so_forwardVars so_boundVarsCache so_cachedScope
FamilyInstance: none
data SmState
RecFlag NonRecursive
= SmState :: Int -> IdSet -> IdSet -> SmState
HasWrapper
Stricts: {-# UNPACK #-} ! ! !
Fields: idsSeed idsUsed idsBound
FamilyInstance: none
type Subst
= IdMap Range
FamilyInstance: none
data UseInfo
RecFlag NonRecursive
= UseInfo :: Occurance -> Int -> UseInfo
HasWrapper
Stricts: ! {-# UNPACK #-} !
Fields: useOccurance minimumArgs
FamilyInstance: none
COERCION AXIOMS
axiom E.SSimplify.NTCo:OMap [] :: OMap ~# IdMap UseInfo
axiom E.SSimplify.NTCo:OM []
:: OM ~# ReaderWriter IdSet (OMap, IdSet)
axiom E.SSimplify.NTCo:SM [] :: SM ~# RWS Env Stat SmState
axiom E.SSimplify.TFCo:R:KeyOMap []
:: Key OMap ~# E.SSimplify.R:KeyOMap
axiom E.SSimplify.TFCo:R:ValueOMap []
:: Value OMap ~# E.SSimplify.R:ValueOMap
axiom E.SSimplify.TFCo:R:ElemOMap []
:: Elem OMap ~# E.SSimplify.R:ElemOMap
INSTANCES
instance [overlap ok] Typeable UseInfo
-- Defined at src/E/SSimplify.hs:72:26
instance [overlap ok] Show Occurance
-- Defined at src/E/SSimplify.hs:66:14
instance [overlap ok] Eq Occurance
-- Defined at src/E/SSimplify.hs:66:19
instance [overlap ok] Ord Occurance
-- Defined at src/E/SSimplify.hs:66:22
instance [overlap ok] Show UseInfo
-- Defined at src/E/SSimplify.hs:72:14
instance [overlap ok] Eq UseInfo
-- Defined at src/E/SSimplify.hs:72:19
instance [overlap ok] Ord UseInfo
-- Defined at src/E/SSimplify.hs:72:22
instance [overlap ok] HasSize OMap
-- Defined at src/E/SSimplify.hs:90:13
instance [overlap ok] Collection OMap
-- Defined at src/E/SSimplify.hs:90:21
instance [overlap ok] Unionize OMap
-- Defined at src/E/SSimplify.hs:90:32
instance [overlap ok] SetLike OMap
-- Defined at src/E/SSimplify.hs:90:41
instance [overlap ok] MapLike OMap
-- Defined at src/E/SSimplify.hs:90:49
instance [overlap ok] Show OMap
-- Defined at src/E/SSimplify.hs:90:57
instance [overlap ok] IsEmpty OMap
-- Defined at src/E/SSimplify.hs:90:62
instance [overlap ok] Eq OMap
-- Defined at src/E/SSimplify.hs:90:70
instance [overlap ok] Ord OMap
-- Defined at src/E/SSimplify.hs:90:73
instance [overlap ok] Monad OM
-- Defined at src/E/SSimplify.hs:85:14
instance [overlap ok] Functor OM
-- Defined at src/E/SSimplify.hs:85:20
instance [overlap ok] MonadWriter (OMap, IdSet) OM
-- Defined at src/E/SSimplify.hs:85:28
instance [overlap ok] MonadReader IdSet OM
-- Defined at src/E/SSimplify.hs:85:53
instance [overlap ok] Eq Forced
-- Defined at src/E/SSimplify.hs:320:14
instance [overlap ok] Ord Forced
-- Defined at src/E/SSimplify.hs:320:17
instance [overlap ok] Show Forced
-- Defined at src/E/SSimplify.hs:320:21
instance [overlap ok] Ord Binding
-- Defined at src/E/SSimplify.hs:332:14
instance [overlap ok] Eq Binding
-- Defined at src/E/SSimplify.hs:332:18
instance [overlap ok] Show Binding
-- Defined at src/E/SSimplify.hs:332:21
instance [overlap ok] Show Range
-- Defined at src/E/SSimplify.hs:316:14
instance [overlap ok] Eq Range
-- Defined at src/E/SSimplify.hs:316:19
instance [overlap ok] Ord Range
-- Defined at src/E/SSimplify.hs:316:22
instance [overlap ok] Show Cont
-- Defined at src/E/SSimplify.hs:471:14
instance [overlap ok] Eq KnowSomething
-- Defined at src/E/SSimplify.hs:923:14
instance [overlap ok] Monad SM
-- Defined at src/E/SSimplify.hs:1029:14
instance [overlap ok] Functor SM
-- Defined at src/E/SSimplify.hs:1029:20
instance [overlap ok] MonadReader Env SM
-- Defined at src/E/SSimplify.hs:1029:28
instance [overlap ok] MonadState SmState SM
-- Defined at src/E/SSimplify.hs:1029:45
instance [overlap ok] Monoid Env
-- Defined at src/E/SSimplify.hs:1084:10
instance [overlap ok] NameMonad Id SM
-- Defined at src/E/SSimplify.hs:1048:10
instance [overlap ok] MonadStats SM
-- Defined at src/E/SSimplify.hs:1037:10
instance [overlap ok] Monoid Forced
-- Defined at src/E/SSimplify.hs:345:10
instance [overlap ok] Monoid OMap
-- Defined at src/E/SSimplify.hs:96:10
FAMILY INSTANCES
type instance Key OMap -- Defined at src/E/SSimplify.hs:93:15
type instance Value OMap -- Defined at src/E/SSimplify.hs:92:15
type instance Elem OMap -- Defined at src/E/SSimplify.hs:94:15
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Cmm.OpEval, False), (DataConstructors, False),
(Directory, False), (Doc.Chars, False), (Doc.DocLike, False),
(Doc.PPrint, False), (Doc.Pretty, False), (E.Annotate, False),
(E.Binary, False), (E.Demand, False), (E.E, False), (E.Eta, False),
(E.Eval, False), (E.FreeVars, False), (E.Inline, False),
(E.PrimOpt, False), (E.Program, False), (E.Rules, False),
(E.Show, False), (E.Subst, False), (E.Traverse, False),
(E.Type, False), (E.TypeCheck, False), (E.Values, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False), (Util.RWS, False),
(Util.ReaderWriter, False), (Util.SameShape, False),
(Util.Seq, False), (Util.SetLike, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[167 of 182] Compiling FrontEnd.Syn.Options ( src/FrontEnd/Syn/Options.hs, src/FrontEnd/Syn/Options.o )
TYPE SIGNATURES
comment :: ReadP ()
parse :: ReadP [(String, [Char])]
parseOptions :: String -> [(String, String)]
pragma :: ReadP (String, [Char])
spaces :: ReadP ()
token :: forall b. ReadP b -> ReadP b
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(Char, False), (List, False)]
Dependent packages: [base, ghc-prim, integer-gmp]
[168 of 182] Compiling FrontEnd.Unlit ( src/FrontEnd/Unlit.hs, src/FrontEnd/Unlit.o )
TYPE SIGNATURES
adjecent :: String
-> Int -> Classified -> [Classified] -> [Classified]
classify :: [String] -> [Classified]
inlines :: [Char] -> [[Char]]
message :: forall a.
Show a =>
[Char] -> a -> [Char] -> [Char] -> [Char]
unclassify :: Classified -> String
unlit :: String -> String -> String
TYPE CONSTRUCTORS
data Classified
RecFlag NonRecursive
= Program :: String -> Classified Stricts: _ |
Blank :: Classified |
Comment :: Classified |
Include :: Int -> String -> Classified Stricts: _ _ |
Pre :: String -> Classified Stricts: _
FamilyInstance: none
COERCION AXIOMS
Dependent modules: [(Char, False)]
Dependent packages: [base, ghc-prim, integer-gmp]
[169 of 182] Compiling Ho.ReadSource ( src/Ho/ReadSource.hs, src/Ho/ReadSource.o )
TYPE SIGNATURES
collectFileOpts :: Opt -> FilePath -> String -> (Opt, Bool)
fetchCompilerFlags :: IO (FilePath, [String])
langmap :: Map.Map [Char] (Set.Set FO.Flag)
languageFlags :: [String]
-> (Set.Set FO.Flag, Set.Set FO.Flag, [String])
m4Prelude :: IO FilePath
parseHsSource :: Opt
-> FilePath -> LBSU.ByteString -> IO (HsModule, LBSU.ByteString)
preprocess :: Opt
-> FilePath -> LBSU.ByteString -> IO LBSU.ByteString
preprocessHs :: Opt
-> FilePath -> LBSU.ByteString -> IO LBSU.ByteString
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Op, False),
(Directory, False), (Doc.DocLike, False), (Doc.PPrint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.HsParser, False),
(FrontEnd.HsSyn, False), (FrontEnd.Lexer, False),
(FrontEnd.ParseMonad, False), (FrontEnd.ParseUtils, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Syn.Options, False),
(FrontEnd.Unlit, False), (FrontEnd.Warning, False),
(GenUtil, False), (List, False), (Monad, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (Ratio, False), (RawFiles, False),
(StringTable.Atom, False), (Support.IniParse, False),
(Support.TempDir, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.FilterInput, False),
(Util.GMap, False), (Util.Gen, False), (Util.HasSize, False),
(Util.SetLike, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[170 of 182] Compiling Ho.Library ( src/Ho/Library.hs, src/Ho/Library.o )
TYPE SIGNATURES
alias_fields :: [([Char], [Char])]
collectLibraries :: [String] -> IO ([Library], [Library])
combineAliases :: forall a.
Map.Map [Char] [a] -> Map.Map [Char] [a]
condenseWhitespace :: [Char] -> [Char]
fetchAllLibraries :: IO
(Map.Map PackedString [Library], Map.Map HoHash Library)
libBaseName :: Library -> PackedString
libHash :: Library -> HoHash
libMgHash :: forall t. Show t => t -> Library -> MD5.Hash
libModMap :: Library -> Map.Map Module ModuleGroup
libModules :: Library -> ([Module], [(Module, Module)])
libName :: Library -> [Char]
libProvides :: ModuleGroup -> Library -> [Module]
libVersion :: Library -> Version
libVersionCompare :: Library -> Library -> Ordering
listLibraries :: IO ()
list_fields :: Set.Set [Char]
parseLibraryDescription :: forall (m :: * -> *).
Monad m =>
String -> m [(String, String)]
procCabal :: [(String, String)] -> LibDesc
procYaml :: YamlNode -> LibDesc
readDescFile :: FilePath -> IO LibDesc
splitOn' :: forall a. (a -> Bool) -> [a] -> [[a]]
splitVersion :: String -> (String, Version)
TYPE CONSTRUCTORS
data LibDesc
RecFlag NonRecursive
= LibDesc :: (Map.Map String [String]) -> (Map.Map String String)
-> LibDesc
Stricts: _ _
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] ToNode PackedString
-- Defined at src/Ho/Library.hs:62:10
instance [overlap ok] ToNode HoHash
-- Defined at src/Ho/Library.hs:60:10
instance [overlap ok] ToNode Module
-- Defined at src/Ho/Library.hs:58:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.E, False),
(E.Eval, False), (E.FreeVars, False), (E.Rules, False),
(E.Show, False), (E.Subst, False), (E.Traverse, False),
(E.Type, False), (E.TypeCheck, False), (E.Values, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.Desugar, False), (FrontEnd.HsErrors, False),
(FrontEnd.HsParser, False), (FrontEnd.HsSyn, False),
(FrontEnd.Infix, False), (FrontEnd.KindInfer, False),
(FrontEnd.Lexer, False), (FrontEnd.ParseMonad, False),
(FrontEnd.ParseUtils, False), (FrontEnd.Rename, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Options, False), (FrontEnd.Syn.Traverse, False),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Type, False),
(FrontEnd.TypeSynonyms, False), (FrontEnd.Unlit, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (Ho.Binary, False), (Ho.ReadSource, False),
(Ho.Type, False), (IO, False), (Info.Binary, True),
(Info.Info, False), (Info.Properties, False), (Info.Types, False),
(List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CFF, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MD5, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.FilterInput, False),
(Util.GMap, False), (Util.Gen, False), (Util.Graph, False),
(Util.HasSize, False), (Util.Inst, False), (Util.IntBag, False),
(Util.NameMonad, False), (Util.SameShape, False),
(Util.Seq, False), (Util.SetLike, False),
(Util.UniqueMonad, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [HsSyck-0.50, array-0.4.0.0, base,
binary-0.5.1.0, bytestring-0.9.2.1, containers-0.4.2.1,
deepseq-1.3.0.0, directory-1.1.0.2, filepath-1.3.0.0, ghc-prim,
integer-gmp, mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0,
pretty-1.1.1.0, process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1,
time-1.4, transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7,
zlib-0.5.3.3]
[171 of 182] Compiling Ho.Build ( drift_processed/Ho/Build.hs, src/Ho/Build.o )
TYPE SIGNATURES
Ho.Build.$dmprovidesModules :: forall a.
ProvidesModules a =>
a -> [Module]
buildLibrary :: (CollectedHo -> Ho -> IO CollectedHo)
-> (CollectedHo -> Ho -> TiData -> IO (CollectedHo, Ho))
-> FilePath
-> IO ()
collectDeps :: forall t t1.
Map.Map Module ModDone
-> [(t, (t1, CompUnit))]
-> (Map.Map Module FilePath,
Map.Map Module [Module],
Map.Map HoHash FilePath)
compLinkCompUnit :: CompLink -> CompUnit
compileCompNode :: (CollectedHo -> Ho -> IO CollectedHo)
-> (CollectedHo -> Ho -> TiData -> IO (CollectedHo, Ho))
-> Map.Map SourceHash (Module, [(Module, SrcLoc)])
-> CompNode
-> IO CollectedHo
countNodes :: CompNode -> IO (Set.Set String)
dumpDeps :: forall t t1 a.
ToNode a =>
a -> Map.Map Module ModDone -> [(t, (t1, CompUnit))] -> IO ()
dumpHoFile :: String -> IO ()
eraseE :: E -> E
fetchExtraFile :: FilePath -> IO ExtraFile
fetchSource :: Opt
-> IORef Done -> [FilePath] -> Maybe (Module, SrcLoc) -> IO Module
findFirstFile :: [FilePath] -> IO (LBSU.ByteString, FilePath)
findHoFile :: IORef Done
-> FilePath -> Maybe Module -> SourceHash -> IO (Bool, FilePath)
hoCache :: Done -> Maybe FilePath
hoFile :: Maybe FilePath
-> FilePath -> Maybe Module -> SourceHash -> FilePath
hosEncountered :: Done
-> Map.Map HoHash (FilePath, HoHeader, HoIDeps, Ho)
hosEncountered_u :: (Map.Map
HoHash (FilePath, HoHeader, HoIDeps, Ho)
-> Map.Map HoHash (FilePath, HoHeader, HoIDeps, Ho))
-> Done -> Done
hsModuleRequires :: HsModule -> [(Module, SrcLoc)]
knownSourceMap :: Done
-> Map.Map SourceHash (Module, [(Module, SrcLoc)])
knownSourceMap_u :: (Map.Map
SourceHash (Module, [(Module, SrcLoc)])
-> Map.Map SourceHash (Module, [(Module, SrcLoc)]))
-> Done -> Done
loadModules :: Opt
-> [FilePath]
-> [String]
-> SrcLoc
-> [Either Module FilePath]
-> IO
(Map.Map SourceHash (Module, [(Module, SrcLoc)]),
HoHash,
CompUnitGraph)
loadedLibraries :: Done -> Map.Map LibraryName Library
loadedLibraries_u :: (Map.Map LibraryName Library
-> Map.Map LibraryName Library)
-> Done -> Done
mapHoBodies :: (E -> E) -> Ho -> Ho
mkPhonyCompUnit :: [Module]
-> CompUnitGraph -> (HoHash, CompUnitGraph)
modEncountered :: Done -> Map.Map Module ModDone
modEncountered_u :: (Map.Map Module ModDone
-> Map.Map Module ModDone)
-> Done -> Done
onErr :: forall a b. IO a -> IO b -> (b -> IO a) -> IO a
parseFiles :: Opt
-> [FilePath]
-> [String]
-> [Either Module FilePath]
-> (CollectedHo -> Ho -> IO CollectedHo)
-> (CollectedHo -> Ho -> TiData -> IO (CollectedHo, Ho))
-> IO (CompNode, CollectedHo)
printModProgress :: Int -> Int -> IO Int -> [HsModule] -> IO ()
processCug :: CompUnitGraph -> HoHash -> IO CompNode
replaceSuffix :: [Char] -> [Char] -> [Char]
resolveDeps :: Opt -> IORef Done -> (Module, SrcLoc) -> IO ()
searchPaths :: Opt -> String -> [(String, String)]
sourceDeps :: SourceInfo -> [(Module, SrcLoc)]
sourceFP :: SourceInfo -> FilePath
sourceHash :: SourceInfo -> SourceHash
sourceHoName :: SourceInfo -> FilePath
sourceIdent :: SourceCode -> String
sourceInfo :: SourceCode -> SourceInfo
sourceLBS :: SourceCode -> LBSU.ByteString
sourceModName :: SourceInfo -> Module
sourceModule :: SourceCode -> HsModule
toCompUnitGraph :: Done -> [Module] -> IO (HoHash, CompUnitGraph)
typeCheckGraph :: Opt -> CompNode -> IO ()
validSources :: Done -> Set.Set SourceHash
validSources_u :: (Set.Set SourceHash -> Set.Set SourceHash)
-> Done -> Done
TYPE CONSTRUCTORS
data CompLink
RecFlag NonRecursive
= CompLinkUnit :: CompUnit -> CompLink Stricts: _ |
CompCollected :: CollectedHo -> CompUnit -> CompLink Stricts: _ _ |
CompTcCollected :: HoTcInfo -> CompUnit -> CompLink Stricts: _ _ |
CompLinkLib :: (ModuleGroup, LibInfo) -> CompUnit -> CompLink
Stricts: _ _
FamilyInstance: none
data CompNode
RecFlag Recursive
= CompNode :: HoHash -> [CompNode] -> (IORef CompLink) -> CompNode
HasWrapper
Stricts: ! _ {-# UNPACK #-} !
FamilyInstance: none
data CompUnit
RecFlag NonRecursive
= CompHo :: HoHeader -> HoIDeps -> Ho -> CompUnit Stricts: _ _ _ |
CompSources :: [SourceCode] -> CompUnit Stricts: _ |
CompTCed :: (HoTcInfo, TiData, [(HoHash, HsModule)], [String])
-> CompUnit
Stricts: _ |
CompDummy :: CompUnit |
CompLibrary :: Ho -> Library -> CompUnit Stricts: _ _
FamilyInstance: none
type CompUnitGraph
= [(HoHash, ([HoHash], CompUnit))]
FamilyInstance: none
data Done
RecFlag NonRecursive
= Done :: (Maybe FilePath)
-> (Map.Map SourceHash (Module, [(Module, SrcLoc)]))
-> (Set.Set SourceHash) -> (Map.Map LibraryName Library)
-> (Map.Map HoHash (FilePath, HoHeader, HoIDeps, Ho))
-> (Map.Map Module ModDone) -> Done
Stricts: _ _ _ _ _ _
Fields: hoCache knownSourceMap validSources loadedLibraries hosEncountered modEncountered
FamilyInstance: none
type LibInfo
= (Map.Map Module ModuleGroup,
Map.Map ModuleGroup [ModuleGroup],
Set.Set Module,
Map.Map ModuleGroup HoBuild,
Map.Map ModuleGroup HoTcInfo)
FamilyInstance: none
type LibraryName
= PackedString
FamilyInstance: none
data ModDone
RecFlag NonRecursive
= ModNotFound :: ModDone |
ModLibrary :: Bool -> ModuleGroup -> Library -> ModDone
HasWrapper
Stricts: ! _ _ |
Found :: SourceCode -> ModDone Stricts: _
FamilyInstance: none
class ProvidesModules a
RecFlag NonRecursive
providesModules {- Has default method -} :: a -> [Module]
data SourceCode
RecFlag NonRecursive
= SourceParsed :: SourceInfo -> HsModule -> SourceCode
HasWrapper
Stricts: ! _
Fields: sourceInfo sourceModule |
SourceRaw :: SourceInfo -> LBSU.ByteString -> SourceCode
HasWrapper
Stricts: ! _
Fields: sourceInfo sourceLBS
FamilyInstance: none
data SourceInfo
RecFlag NonRecursive
= SI :: SourceHash -> [(Module, SrcLoc)] -> FilePath -> Module
-> FilePath -> SourceInfo
Stricts: _ _ _ _ _
Fields: sourceHash sourceDeps sourceFP sourceModName sourceHoName
FamilyInstance: none
COERCION AXIOMS
axiom Ho.Build.NTCo:ProvidesModules [a]
:: ProvidesModules a ~# (a -> [Module])
INSTANCES
instance [overlap ok] DocLike d => PPrint d PackedString
-- Defined at src/Ho/Build.hs:770:10
instance [overlap ok] DocLike d => PPrint d Version
-- Defined at src/Ho/Build.hs:767:10
instance [overlap ok] DocLike d => PPrint d SrcLoc
-- Defined at src/Ho/Build.hs:764:10
instance [overlap ok] DocLike d => PPrint d MD5.Hash
-- Defined at src/Ho/Build.hs:761:10
instance [overlap ok] ProvidesModules SourceCode
-- Defined at src/Ho/Build.hs:286:10
instance [overlap ok] ProvidesModules CompLink
-- Defined at src/Ho/Build.hs:280:10
instance [overlap ok] ProvidesModules CompUnit
-- Defined at src/Ho/Build.hs:273:10
instance [overlap ok] ProvidesModules HoLib
-- Defined at src/Ho/Build.hs:270:10
instance [overlap ok] ProvidesModules HoIDeps
-- Defined at src/Ho/Build.hs:267:10
instance [overlap ok] Show CompUnit
-- Defined at src/Ho/Build.hs:246:10
instance [overlap ok] MapKey MD5.Hash
-- Defined at src/Ho/Build.hs:214:10
instance [overlap ok] MapKey Module
-- Defined at src/Ho/Build.hs:212:10
Dependent modules: [(Array, False), (C.FFI, False),
(C.Prims, False), (CPUTime, False), (Char, False),
(Cmm.Number, False), (Cmm.Op, False), (DataConstructors, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Annotate, False), (E.Binary, False),
(E.E, False), (E.Eval, False), (E.FreeVars, False),
(E.Program, False), (E.Rules, False), (E.Show, False),
(E.Subst, False), (E.Traverse, False), (E.Type, False),
(E.TypeCheck, False), (E.Values, False), (FindFixpoint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.DataConsAssump, False), (FrontEnd.DeclsDepends, False),
(FrontEnd.DependAnalysis, False), (FrontEnd.Desugar, False),
(FrontEnd.Diagnostic, False), (FrontEnd.Exports, False),
(FrontEnd.FrontEnd, False), (FrontEnd.HsErrors, False),
(FrontEnd.HsParser, False), (FrontEnd.HsPretty, False),
(FrontEnd.HsSyn, False), (FrontEnd.Infix, False),
(FrontEnd.KindInfer, False), (FrontEnd.Lexer, False),
(FrontEnd.ParseMonad, False), (FrontEnd.ParseUtils, False),
(FrontEnd.Rename, False), (FrontEnd.Representation, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Syn.Options, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Class, False),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Main, False),
(FrontEnd.Tc.Module, False), (FrontEnd.Tc.Monad, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Tc.Unify, False),
(FrontEnd.TypeSigs, False), (FrontEnd.TypeSynonyms, False),
(FrontEnd.TypeSyns, False), (FrontEnd.Unlit, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (Ho.Binary, False), (Ho.Collected, False),
(Ho.Library, False), (Ho.ReadSource, False), (Ho.Type, False),
(IO, False), (Info.Binary, True), (Info.Info, False),
(Info.Properties, False), (Info.Types, False), (Ix, False),
(List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CFF, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MD5, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.FilterInput, False),
(Util.GMap, False), (Util.Gen, False), (Util.Graph, False),
(Util.HasSize, False), (Util.Inst, False), (Util.IntBag, False),
(Util.NameMonad, False), (Util.Progress, False),
(Util.Relation, False), (Util.SameShape, False), (Util.Seq, False),
(Util.SetLike, False), (Util.UniqueMonad, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [HsSyck-0.50, array-0.4.0.0, base,
binary-0.5.1.0, bytestring-0.9.2.1, containers-0.4.2.1,
deepseq-1.3.0.0, directory-1.1.0.2, filepath-1.3.0.0, ghc-prim,
integer-gmp, mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0,
pretty-1.1.1.0, process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1,
time-1.4, transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7,
zlib-0.5.3.3]
[172 of 182] Compiling Grin.Val ( src/Grin/Val.hs, src/Grin/Val.o )
TYPE SIGNATURES
Grin.Val.$dmfromUnVal :: forall a.
FromVal a =>
forall (m :: * -> *). Monad m => Val -> m a
Grin.Val.$dmtoUnVal :: forall a. ToVal a => a -> Val
cChar :: Atom
cInt :: Atom
cWord :: Atom
cons :: Atom
convertName :: Name -> Atom
nil :: Atom
region_atomic_heap :: Val
region_block :: Val
region_heap :: Val
region_stack :: Val
tn_2Tup :: Atom
tn_Boolzh :: Atom
tn_unit :: Atom
valToList :: forall (m :: * -> *). Monad m => Val -> m [Val]
TYPE CONSTRUCTORS
class FromVal a
RecFlag NonRecursive
fromVal :: forall (m::* -> *). Monad m -> Val -> m a
fromUnVal {- Has default method -} :: forall (m::* -> *).
Monad m -> Val -> m a
class ToVal a
RecFlag NonRecursive
toVal :: a -> Val toUnVal {- Has default method -} :: a -> Val
COERCION AXIOMS
INSTANCES
instance [overlap ok] FromVal Val
-- Defined at src/Grin/Val.hs:102:10
instance [overlap ok] FromVal Bool
-- Defined at src/Grin/Val.hs:97:10
instance [overlap ok] FromVal a => FromVal [a]
-- Defined at src/Grin/Val.hs:89:10
instance [overlap ok] FromVal Char
-- Defined at src/Grin/Val.hs:83:10
instance [overlap ok] FromVal Int
-- Defined at src/Grin/Val.hs:78:10
instance [overlap ok] ToVal Val -- Defined at src/Grin/Val.hs:75:10
instance [overlap ok] ToVal Int -- Defined at src/Grin/Val.hs:71:10
instance [overlap ok] ToVal Char
-- Defined at src/Grin/Val.hs:68:10
instance [overlap ok] ToVal (Val, Val)
-- Defined at src/Grin/Val.hs:65:11
instance [overlap ok] ToVal a => ToVal [a]
-- Defined at src/Grin/Val.hs:62:10
instance [overlap ok] ToVal Bool
-- Defined at src/Grin/Val.hs:58:10
instance [overlap ok] ConNames Val
-- Defined at src/Grin/Val.hs:43:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.Chars, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (GenUtil, False), (Grin.Grin, False),
(Info.Info, False), (List, False), (Monad, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.TempDir, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.HasSize, False), (Util.IntBag, False), (Util.Perhaps, False),
(Util.SetLike, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[173 of 182] Compiling Grin.Show ( src/Grin/Show.hs, src/Grin/Show.o )
TYPE SIGNATURES
Grin.Show.$con2tag_CallType :: CallType -> ghc-prim:GHC.Prim.Int#
func :: String -> Doc
graphGrin :: Grin -> String
hPrintGrin :: Handle -> Grin -> IO ()
hasError :: Exp -> Bool
hasError' :: Exp -> Maybe Exp
isComplex :: Exp -> Bool
isOneLine :: Exp -> Bool
keyword :: String -> Doc
operator :: String -> Doc
pVar :: [Val] -> Doc
pVar' :: [Val] -> Doc
prettyExp :: Doc -> Exp -> Doc
prettyFun :: (Atom, Lam) -> Doc
prettyVal :: forall d. DocLike d => Val -> d
prettyVals :: forall d. DocLike d => [Val] -> d
prim :: String -> Doc
printGrin :: Grin -> IO ()
render :: Doc -> String
tag :: forall a. TextLike a => String -> a
TYPE CONSTRUCTORS
data CallType
RecFlag NonRecursive
= TailCall :: CallType | StandardCall :: CallType
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Ord CallType
-- Defined at src/Grin/Show.hs:187:14
instance [overlap ok] Show CallType
-- Defined at src/Grin/Show.hs:187:18
instance [overlap ok] Eq CallType
-- Defined at src/Grin/Show.hs:187:23
instance [overlap ok] FreeVars Exp (Set.Set (CallType, Atom))
-- Defined at src/Grin/Show.hs:189:10
instance [overlap ok] DocLike d => PPrint d Var
-- Defined at src/Grin/Show.hs:141:10
instance [overlap ok] PPrint Doc Exp
-- Defined at src/Grin/Show.hs:37:10
instance [overlap ok] DocLike d => PPrint d Val
-- Defined at src/Grin/Show.hs:34:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.Chars, False),
(Doc.DocLike, False), (Doc.PPrint, False), (Doc.Pretty, False),
(FlagDump, False), (FlagOpts, False), (GenUtil, False),
(Grin.Grin, False), (Grin.Noodle, False), (Grin.Val, False),
(IO, False), (Info.Info, False), (List, False), (Monad, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.TempDir, False), (Support.Tickle, False), (System, False),
(Time, False), (Util.ExitCodes, False), (Util.GMap, False),
(Util.Gen, False), (Util.Graphviz, False), (Util.HasSize, False),
(Util.IntBag, False), (Util.Perhaps, False), (Util.SetLike, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, fgl-5.4.2.4, filepath-1.3.0.0, ghc-prim,
integer-gmp, mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0,
pretty-1.1.1.0, process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1,
time-1.4, transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[174 of 182] Compiling Grin.Lint ( src/Grin/Lint.hs, src/Grin/Lint.o )
TYPE SIGNATURES
bindUnknown :: forall a.
FreeVars a (Set.Set (Var, Ty)) =>
Handle -> a -> String -> IO ()
dumpGrin :: [Char] -> Grin -> IO ()
envInScope :: TcEnv -> Set.Set Var
envTyEnv :: TcEnv -> TyEnv
funArg :: forall a a1. (Show a1, Show a) => a -> a1 -> [Char]
funRet :: forall a a1. (Show a1, Show a) => a -> a1 -> [Char]
hPrintGrinDL :: Handle -> Grin -> IO ()
lintCheckGrin :: Grin -> IO ()
lintCheckGrin' :: forall a. IO a -> Grin -> IO ()
maybeDie :: IO ()
printDL :: Handle
-> StringTable.Atom.Atom -> [Either String Val] -> Exp -> IO ()
printFunc :: Handle -> StringTable.Atom.Atom -> Lam -> IO ()
runTc :: forall a. TcEnv -> Tc a -> Either String a
same :: forall a. (Eq a, Show a) => String -> a -> a -> Tc a
setUnknown :: forall a. DShow a => Handle -> a -> String -> IO ()
tcErr :: forall a. String -> Tc a
tcExp :: Exp -> Tc [Ty]
tcLam :: Maybe [Ty] -> Lam -> Tc [Ty]
tcVal :: Val -> Tc Ty
transformGrin :: TransformParms Grin -> Grin -> IO Grin
tyInteresting :: Ty -> Bool
typecheckGrin :: Grin -> IO ()
TYPE CONSTRUCTORS
class DShow a
RecFlag NonRecursive
dshow :: a -> String
newtype Tc a
RecFlag NonRecursive
= Tc :: forall a. (ReaderT TcEnv (Either String) a) -> Tc a
Stricts: _
FamilyInstance: none
data TcEnv
RecFlag NonRecursive
= TcEnv :: TyEnv -> (Set.Set Var) -> TcEnv
Stricts: _ _
Fields: envTyEnv envInScope
FamilyInstance: none
COERCION AXIOMS
axiom Grin.Lint.NTCo:DShow [a] :: DShow a ~# (a -> String)
axiom Grin.Lint.NTCo:Tc [] :: Tc ~# ReaderT TcEnv (Either String)
INSTANCES
instance [overlap ok] Monad Tc
-- Defined at src/Grin/Lint.hs:218:14
instance [overlap ok] MonadReader TcEnv Tc
-- Defined at src/Grin/Lint.hs:218:20
instance [overlap ok] (DShow a, DShow b) => DShow (Either a b)
-- Defined at src/Grin/Lint.hs:88:10
instance [overlap ok] DShow Ty -- Defined at src/Grin/Lint.hs:85:10
instance [overlap ok] DShow Var
-- Defined at src/Grin/Lint.hs:82:10
instance [overlap ok] DShow Tag
-- Defined at src/Grin/Lint.hs:76:10
instance [overlap ok] DShow String
-- Defined at src/Grin/Lint.hs:70:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.Chars, False),
(Doc.DocLike, False), (Doc.PPrint, False), (Doc.Pretty, False),
(FlagDump, False), (FlagOpts, False), (GenUtil, False),
(Grin.Grin, False), (Grin.Noodle, False), (Grin.Show, False),
(Grin.Val, False), (IO, False), (Info.Info, False), (List, False),
(Monad, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (Stats, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.Compat, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Transform, False), (System, False), (Time, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graphviz, False), (Util.HasSize, False),
(Util.IntBag, False), (Util.Perhaps, False), (Util.SetLike, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, fgl-5.4.2.4, filepath-1.3.0.0, ghc-prim,
integer-gmp, mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0,
pretty-1.1.1.0, process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1,
time-1.4, transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[175 of 182] Compiling Grin.FromE ( src/Grin/FromE.hs, src/Grin/FromE.o )
TYPE SIGNATURES
bool :: forall t. Bool -> t -> t -> t
cafNum :: forall e. TVr' e -> Var
ccafMap :: CEnv -> IdMap Val
compile :: Program -> IO Grin
compile' :: CEnv -> (TVr, [TVr], E) -> C (Atom, Lam)
constantCaf :: Program
-> ([(TVr, Var, Val)], [Var], [(TVr, Var, Val)])
counter :: CEnv -> IORef Int
dataTable :: CEnv -> DataTable
demote :: Val -> Exp
discardResult :: Exp -> Exp
doApply :: Val -> Val -> [Ty] -> Exp
dstore :: Val -> Exp
dumpTyEnv :: TyEnv -> IO ()
errorOnce :: CEnv -> OnceMap ([Ty], String) Atom
evalVar :: [Ty] -> TVr -> C Exp
evaledMap :: LEnv -> IdMap Val
flattenScc :: forall b. [SCC b] -> [b]
funcBaps :: CEnv -> IORef [(Atom, Lam)]
getName' :: forall a (m :: * -> *).
(Show a, Monad m) =>
DataTable -> Lit a E -> m Atom
isDataAlias :: DataFamily -> Bool
istore :: Val -> Exp
keepIts :: forall a. Keepable a => [a] -> [a]
lfuncMap :: LEnv -> IdMap (Atom, Int, [Ty])
literal :: forall (m :: * -> *). Monad m => E -> m [Val]
makePartials :: (Tag, [Ty], [Ty]) -> [(Tag, TyTy)]
primTyEnv :: TyEnv
runC :: forall a. LEnv -> C a -> IO a
scMap :: CEnv -> IdMap (Atom, [Ty], [Ty])
scTag :: forall e. TVr' e -> Atom
shouldKeep :: E -> Bool
tagArrow :: Atom
toEntry :: forall e. (TVr' e, [TVr' E], E) -> (Atom, [Ty], [Ty])
toTyTy :: ([Ty], [Ty]) -> TyTy
toType :: Ty -> E -> Ty
toTypes :: Ty -> E -> [Ty]
tyEnv :: CEnv -> IORef TyEnv
tySusp :: Tag -> [Ty] -> (Tag, TyTy)
unboxedMap :: [(Name, Ty)]
TYPE CONSTRUCTORS
newtype C a
RecFlag NonRecursive
= C :: forall a. (ReaderT LEnv IO a) -> C a Stricts: _
FamilyInstance: none
data CEnv
RecFlag NonRecursive
= CEnv :: (IdMap (Atom, [Ty], [Ty])) -> (IdMap Val)
-> (IORef TyEnv) -> (IORef [(Atom, Lam)])
-> (OnceMap ([Ty], String) Atom) -> DataTable -> (IORef Int)
-> CEnv
Stricts: _ _ _ _ _ _ _
Fields: scMap ccafMap tyEnv funcBaps errorOnce dataTable counter
FamilyInstance: none
class Keepable a
RecFlag NonRecursive
keepIt :: a -> Bool
data LEnv
RecFlag NonRecursive
= LEnv :: (IdMap Val) -> (IdMap (Atom, Int, [Ty])) -> LEnv
Stricts: _ _
Fields: evaledMap lfuncMap
FamilyInstance: none
COERCION AXIOMS
axiom Grin.FromE.NTCo:C [] :: C ~# ReaderT LEnv IO
axiom Grin.FromE.NTCo:Keepable [a] :: Keepable a ~# (a -> Bool)
INSTANCES
instance [overlap ok] Monad C -- Defined at src/Grin/FromE.hs:72:14
instance [overlap ok] MonadReader LEnv C
-- Defined at src/Grin/FromE.hs:72:20
instance [overlap ok] UniqueProducer C
-- Defined at src/Grin/FromE.hs:72:37
instance [overlap ok] Functor C
-- Defined at src/Grin/FromE.hs:72:52
instance [overlap ok] MonadIO C
-- Defined at src/Grin/FromE.hs:72:60
instance [overlap ok] Stats.MonadStats C
-- Defined at src/Grin/FromE.hs:72:68
instance [overlap ok] ToVal TVr
-- Defined at src/Grin/FromE.hs:322:10
instance [overlap ok] Keepable Val
-- Defined at src/Grin/FromE.hs:247:10
instance [overlap ok] Keepable Ty
-- Defined at src/Grin/FromE.hs:245:10
instance [overlap ok] ToCmmTy E
-- Defined at src/Grin/FromE.hs:109:10
instance [overlap ok] ToCmmTy Name
-- Defined at src/Grin/FromE.hs:104:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (DataConstructors, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Binary, False), (E.E, False),
(E.Eval, False), (E.FreeVars, False), (E.Program, False),
(E.Show, False), (E.Subst, False), (E.Traverse, False),
(E.Type, False), (E.TypeCheck, False), (E.Values, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (Grin.Grin, False),
(Grin.Noodle, False), (Grin.Show, False), (Grin.Val, False),
(IO, False), (Info.Binary, True), (Info.Info, False),
(Info.Properties, False), (Info.Types, False), (List, False),
(Maybe, False), (Monad, False), (Name.Binary, False),
(Name.Id, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (Stats, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Tuple, False), (Support.Unparse, False), (System, False),
(Time, False), (Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.Graphviz, False), (Util.HasSize, False),
(Util.Inst, False), (Util.IntBag, False), (Util.NameMonad, False),
(Util.Once, False), (Util.Perhaps, False), (Util.SameShape, False),
(Util.Seq, False), (Util.SetLike, False),
(Util.UniqueMonad, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, fgl-5.4.2.4, filepath-1.3.0.0, ghc-prim,
integer-gmp, mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0,
pretty-1.1.1.0, process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1,
time-1.4, transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[176 of 182] Compiling Grin.StorageAnalysis ( src/Grin/StorageAnalysis.hs, src/Grin/StorageAnalysis.o )
TYPE SIGNATURES
Grin.StorageAnalysis.$con2tag_T :: T -> ghc-prim:GHC.Prim.Int#
Grin.StorageAnalysis.$con2tag_Vr :: Vr -> ghc-prim:GHC.Prim.Int#
firstLam :: forall (m :: * -> *).
(MonadWriter (C T Vr) m, UniqueProducer m) =>
Atom -> Lam -> m Lam
isHeap :: Ty -> Bool
lastLam :: Map.Map Vr T -> Lam -> Identity Lam
storeAnalyze :: Grin -> IO Grin
TYPE CONSTRUCTORS
data T
RecFlag NonRecursive
= S :: T | E :: T
FamilyInstance: none
data Vr
RecFlag NonRecursive
= Vb :: Var -> Vr HasWrapper Stricts: ! |
Va :: Atom -> Int -> Vr HasWrapper Stricts: ! ! |
Vr :: Var -> Vr HasWrapper Stricts: !
FamilyInstance: none
COERCION AXIOMS
INSTANCES
instance [overlap ok] Eq T
-- Defined at src/Grin/StorageAnalysis.hs:22:14
instance [overlap ok] Show T
-- Defined at src/Grin/StorageAnalysis.hs:22:17
instance [overlap ok] Eq Vr
-- Defined at src/Grin/StorageAnalysis.hs:43:14
instance [overlap ok] Ord Vr
-- Defined at src/Grin/StorageAnalysis.hs:43:17
instance [overlap ok] Show Vr
-- Defined at src/Grin/StorageAnalysis.hs:45:10
instance [overlap ok] Fixable T
-- Defined at src/Grin/StorageAnalysis.hs:24:10
Dependent modules: [(C.FFI, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Directory, False), (Doc.Chars, False),
(Doc.DocLike, False), (Doc.PPrint, False), (FlagDump, False),
(FlagOpts, False), (GenUtil, False), (Grin.Grin, False),
(Grin.Noodle, False), (Grin.Val, False), (Info.Info, False),
(List, False), (Monad, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.TempDir, False), (Support.Tickle, False), (System, False),
(Time, False), (Util.ExitCodes, False), (Util.GMap, False),
(Util.Gen, False), (Util.HasSize, False), (Util.IntBag, False),
(Util.Perhaps, False), (Util.SetLike, False),
(Util.UnionFind, False), (Util.UnionSolve, False),
(Util.UniqueMonad, False), (Util.YAML, False),
(Version.Config, False), (Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[177 of 182] Compiling C.Generate ( src/C/Generate.hs, src/C/Generate.o )
TYPE SIGNATURES
C.Generate.$con2tag_FunctionOpts :: FunctionOpts
-> ghc-prim:GHC.Prim.Int#
C.Generate.$con2tag_Type :: Type -> ghc-prim:GHC.Prim.Int#
C.Generate.$dmerr :: forall d. Draw d => String -> d
C.Generate.$dmpdraw :: forall d. Draw d => d -> G Doc
& :: forall a b.
(ToStatement a, ToStatement b) =>
a -> b -> Statement
*# :: forall a a1.
(ToExpression a1, ToExpression a) =>
a -> a1 -> Expression
+# :: forall a a1.
(ToExpression a1, ToExpression a) =>
a -> a1 -> Expression
=* :: forall x y.
(ToExpression x, ToExpression y) =>
x -> y -> Statement
anonStructType :: [Type] -> Type
assign :: Expression -> Expression -> Statement
basicGCType :: String -> Type
basicStructure :: Structure
basicType :: String -> Type
cFalse :: Constant
cTrue :: Constant
cast :: Type -> Expression -> Expression
character :: Char -> Constant
cif :: Expression -> Statement -> Statement -> Statement
commaExpression :: [Expression] -> Expression
constant :: Constant -> Expression
creturn :: Expression -> Statement
dereference :: Expression -> Expression
drawFunction :: Function -> G (Doc, Doc)
drawG :: forall d. Draw d => d -> Doc
emptyEnv :: Env
emptyExpression :: Expression
enum :: Name -> Constant
envInScope :: Env -> Set.Set Name
envUsedLabels :: Env -> Set.Set Name
eq :: forall x y.
(ToExpression x, ToExpression y) =>
x -> y -> Expression
expC :: G Doc -> Expression
expD :: G Doc -> Expression
expDC :: G Doc -> Expression
expDO :: G Doc -> Expression
expr :: Expression -> Statement
expressionRaw :: String -> Expression
floating :: Double -> Constant
forLoop :: Expression
-> Expression -> Expression -> Statement -> Statement
funPtrType :: Type -> [Type] -> Type
function :: Name
-> Type
-> [(Name, Type)]
-> [FunctionOpts]
-> Statement
-> Function
functionArgs :: Function -> [(Name, Type)]
functionBody :: Function -> Statement
functionCall :: Name -> [Expression] -> Expression
functionCall' :: forall d a.
(Draw a, Draw d) =>
d -> [a] -> Expression
functionName :: Function -> Name
functionOptions :: Function -> [FunctionOpts]
functionReturnType :: Function -> Type
generateC :: [Function] -> [Structure] -> (Doc, Doc)
goto :: Name -> Statement
hintConst :: TypeHint
hintPtr :: TypeHint
indexArray :: Expression -> Expression -> Expression
indirectFunctionCall :: Expression -> [Expression] -> Expression
isEmptyExpression :: Expression -> Bool
label :: Name -> Statement
labelPull :: Statement -> (Statement, Statement)
line :: Doc
localVariable :: Type -> Name -> Expression
mangleIdent :: [Char] -> [Char]
massign :: Expression -> Expression -> Statement
name :: String -> Name
newAssignVar :: forall d (m :: * -> *).
(Monad m, Draw d) =>
d -> Name -> Expression -> m Statement
newDeclVar :: forall (m :: * -> *).
UniqueProducer m =>
Type -> m (Statement, Expression)
newTmpVar :: forall (m :: * -> *) d.
(UniqueProducer m, Draw d) =>
d -> Expression -> m (Statement, Expression)
newVar :: forall (m :: * -> *).
UniqueProducer m =>
Type -> m Expression
noAssign :: Expression -> Expression
nullPtr :: Expression
number :: Integer -> Constant
operator :: forall a b.
(ToExpression a, ToExpression b) =>
String -> a -> b -> Expression
pairOpt :: forall s.
(s -> s -> Maybe s) -> Seq.Seq s -> Seq.Seq s -> Seq.Seq s
project :: Name -> Expression -> Expression
project' :: Name -> Expression -> Expression
projectAnon :: Int -> Expression -> Expression
ptrType :: Type -> Type
reference :: Expression -> Expression
renderG :: forall d. Draw d => d -> String
sd :: G Doc -> Statement
sizeof :: Type -> Expression
statementOOB :: Statement -> Statement
stmt :: Stmt -> Statement
stmtMapStmt :: forall (m :: * -> *).
Monad m =>
(Stmt -> m Stmt) -> Stmt -> m Stmt
stmtPairOpt :: Stmt -> Stmt -> Maybe Stmt
string :: String -> Expression
structAnon :: [(Expression, Type)] -> Expression
structType :: Name -> Type
structureAligned :: Structure -> Bool
structureFields :: Structure -> [(Name, Type)]
structureHasDiscriminator :: Structure -> Bool
structureName :: Structure -> Name
structureNeedsDiscriminator :: Structure -> Bool
subBlock :: Statement -> Statement
subBlockBody :: forall d. Draw d => d -> G Doc
switch' :: Expression -> [(Maybe Constant, Statement)] -> Statement
terr :: forall a. DocLike a => String -> a
thConst :: TypeHint -> Bool
thNoAssign :: TypeHint -> Bool
thOmittable :: TypeHint -> Bool
thPtr :: TypeHint -> Bool
toName :: [Char] -> Name
typeHint :: TypeHint
uoperator :: String -> Expression -> Expression
variable :: Name -> Expression
voidStarType :: Type
voidType :: Type
vsep :: [Doc] -> Doc
TYPE CONSTRUCTORS
class Annotate e
RecFlag NonRecursive
annotate :: String -> e -> e
newtype Constant
RecFlag NonRecursive
= C :: (G Doc) -> Constant Stricts: _
FamilyInstance: none
class Draw d
RecFlag NonRecursive
draw :: d -> G Doc
pdraw {- Has default method -} :: d -> G Doc
err {- Has default method -} :: String -> d
data E
RecFlag NonRecursive
= ED :: (G Doc) -> E Stricts: _ | EP :: E -> E Stricts: _ | EE :: E
FamilyInstance: none
data Env
RecFlag NonRecursive
= Env :: (Set.Set Name) -> (Set.Set Name) -> Env
Stricts: _ _
Fields: envUsedLabels envInScope
FamilyInstance: none
data Expression
RecFlag NonRecursive
= Exp :: TypeHint -> E -> Expression Stricts: _ _
FamilyInstance: none
data Function
RecFlag NonRecursive
= F :: Name -> Type -> [(Name, Type)] -> [FunctionOpts]
-> Statement -> Function
Stricts: _ _ _ _ _
Fields: functionName functionReturnType functionArgs functionOptions functionBody
FamilyInstance: none
data FunctionOpts
RecFlag NonRecursive
= Public :: FunctionOpts |
Attribute :: String -> FunctionOpts Stricts: _
FamilyInstance: none
newtype G a
RecFlag NonRecursive
= G :: forall a.
(RWS Env [(Name, Type)] (Int, Map.Map [Type] Name) a) -> G a
Stricts: _
FamilyInstance: none
newtype Name
RecFlag NonRecursive
= Name :: String -> Name Stricts: _
FamilyInstance: none
newtype Statement
RecFlag NonRecursive
= St :: (Seq.Seq Stmt) -> Statement Stricts: _
FamilyInstance: none
data Stmt
RecFlag NonRecursive
= SD :: (G Doc) -> Stmt Stricts: _ |
SGoto :: Name -> Stmt Stricts: _ |
SLabel :: Name -> Stmt Stricts: _ |
SReturn :: Expression -> Stmt Stricts: _ |
SBlock :: Statement -> Stmt Stricts: _ |
SIf :: Expression -> Statement -> Statement -> Stmt
Stricts: _ _ _ |
SSwitch :: Expression -> [(Maybe Constant, Statement)] -> Stmt
Stricts: _ _
FamilyInstance: none
data Structure
RecFlag NonRecursive
= Structure :: Name -> [(Name, Type)] -> Bool -> Bool -> Bool
-> Structure
Stricts: _ _ _ _ _
Fields: structureName structureFields structureNeedsDiscriminator structureHasDiscriminator structureAligned
FamilyInstance: none
class ToExpression a
RecFlag NonRecursive
toExpression :: a -> Expression
class ToStatement a
RecFlag NonRecursive
toStatement :: a -> Statement
data Type
RecFlag NonRecursive
= TB :: String -> Bool -> Type Stricts: _ _ |
TPtr :: Type -> Type Stricts: _ |
TAnon :: [Type] -> Type Stricts: _ |
TNStruct :: Name -> Type Stricts: _ |
TFunPtr :: Type -> [Type] -> Type Stricts: _ _
FamilyInstance: none
data TypeHint
RecFlag NonRecursive
= TypeHint :: Bool -> Bool -> Bool -> Bool -> TypeHint
HasWrapper
Stricts: ! ! ! !
Fields: thPtr thConst thNoAssign thOmittable
FamilyInstance: none
COERCION AXIOMS
axiom C.Generate.NTCo:Name [] :: Name ~# String
axiom C.Generate.NTCo:G []
:: G ~#
transformers-0.3.0.0:Control.Monad.Trans.RWS.Lazy.RWST
Env
[(Name, Type)]
(Int, Map.Map [Type] Name)
transformers-0.3.0.0:Data.Functor.Identity.Identity
axiom C.Generate.NTCo:Constant [] :: Constant ~# G Doc
axiom C.Generate.NTCo:Statement [] :: Statement ~# Seq.Seq Stmt
axiom C.Generate.NTCo:Annotate [e]
:: Annotate e ~# (String -> e -> e)
axiom C.Generate.NTCo:ToStatement [a]
:: ToStatement a ~# (a -> Statement)
axiom C.Generate.NTCo:ToExpression [a]
:: ToExpression a ~# (a -> Expression)
INSTANCES
instance [overlap ok] Eq Name
-- Defined at src/C/Generate.hs:106:14
instance [overlap ok] Ord Name
-- Defined at src/C/Generate.hs:106:17
instance [overlap ok] Eq Type
-- Defined at src/C/Generate.hs:156:14
instance [overlap ok] Ord Type
-- Defined at src/C/Generate.hs:156:17
instance [overlap ok] Monad G
-- Defined at src/C/Generate.hs:103:14
instance [overlap ok] MonadWriter [(Name, Type)] G
-- Defined at src/C/Generate.hs:103:20
instance [overlap ok] MonadState (Int, Map.Map [Type] Name) G
-- Defined at src/C/Generate.hs:103:46
instance [overlap ok] MonadReader Env G
-- Defined at src/C/Generate.hs:103:83
instance [overlap ok] MonadFix G
-- Defined at src/C/Generate.hs:103:99
instance [overlap ok] Eq FunctionOpts
-- Defined at src/C/Generate.hs:460:14
instance [overlap ok] (ToExpression a, ToExpression b) =>
ToExpression (a, b)
-- Defined at src/C/Generate.hs:682:10
instance [overlap ok] ToExpression Bool
-- Defined at src/C/Generate.hs:679:10
instance [overlap ok] ToExpression Integer
-- Defined at src/C/Generate.hs:676:10
instance [overlap ok] ToExpression Int
-- Defined at src/C/Generate.hs:673:10
instance [overlap ok] ToExpression Char
-- Defined at src/C/Generate.hs:670:10
instance [overlap ok] ToExpression Name
-- Defined at src/C/Generate.hs:667:10
instance [overlap ok] ToExpression Constant
-- Defined at src/C/Generate.hs:664:10
instance [overlap ok] ToExpression a => ToStatement a
-- Defined at src/C/Generate.hs:661:10
instance [overlap ok] ToExpression Expression
-- Defined at src/C/Generate.hs:658:10
instance [overlap ok] ToStatement Expression
-- Defined at src/C/Generate.hs:652:10
instance [overlap ok] ToStatement Statement
-- Defined at src/C/Generate.hs:649:10
instance [overlap ok] Show Expression
-- Defined at src/C/Generate.hs:622:10
instance [overlap ok] Annotate Statement
-- Defined at src/C/Generate.hs:523:10
instance [overlap ok] Monoid Statement
-- Defined at src/C/Generate.hs:292:10
instance [overlap ok] Draw Type
-- Defined at src/C/Generate.hs:229:10
instance [overlap ok] Draw Constant
-- Defined at src/C/Generate.hs:225:10
instance [overlap ok] Draw Name
-- Defined at src/C/Generate.hs:221:10
instance [overlap ok] Draw Expression
-- Defined at src/C/Generate.hs:216:10
instance [overlap ok] Draw E -- Defined at src/C/Generate.hs:207:10
instance [overlap ok] Draw Stmt
-- Defined at src/C/Generate.hs:173:10
instance [overlap ok] Draw Statement
-- Defined at src/C/Generate.hs:169:10
instance [overlap ok] Show Name
-- Defined at src/C/Generate.hs:108:10
Dependent modules: [(CPUTime, False), (Char, False),
(Directory, False), (Doc.DocLike, False), (GenUtil, False),
(List, False), (Monad, False), (Random, False), (System, False),
(Time, False), (Util.Gen, False), (Util.HasSize, False),
(Util.SetLike, False)]
Dependent packages: [array-0.4.0.0, base, containers-0.4.2.1,
deepseq-1.3.0.0, directory-1.1.0.2, filepath-1.3.0.0, ghc-prim,
integer-gmp, mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0,
pretty-1.1.1.0, process-1.1.0.1, random-1.0.1.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0]
[178 of 182] Compiling C.FromGrin2 ( drift_processed/C/FromGrin2.hs, src/C/FromGrin2.o )
TYPE SIGNATURES
=:: :: forall (m :: * -> *) d.
(UniqueProducer m, Draw d) =>
Expression -> d -> m (Statement, Expression)
a_FALIGNED :: FunctionOpts
a_MALLOC :: FunctionOpts
a_STD :: FunctionOpts
arg :: forall a. Show a => a -> Name
basicNode :: Atom -> [Val] -> C (Maybe Expression)
basicType' :: ExtType -> Type
binopSigned :: Op.BinOp -> Maybe String
bool :: forall t. Bool -> t -> t -> t
buildConstants :: forall m.
(MapLike m, Key m ~ Atom) =>
m -> Grin -> HcHash -> P.Doc
castFunc :: Op.ConvOp -> Op.Ty -> Op.Ty -> Expression -> Expression
castSigned :: forall (m :: * -> *).
Monad m =>
Op.Ty -> Expression -> m Expression
compileGrin :: Grin -> (LBS.ByteString, Requires)
concrete :: Atom -> Expression -> Expression
convertBody :: Exp -> C Statement
convertConst :: Val -> C (Maybe Expression)
convertExp :: Exp -> C (Statement, Expression)
convertFunc :: Maybe FfiExport -> (Atom, Lam) -> C [Function]
convertPrim :: Prim -> [Val] -> [Ty] -> C Expression
convertType :: forall (m :: * -> *). Monad m => Ty -> m Type
convertTypes :: forall (m :: * -> *). Monad m => [Ty] -> m Type
convertVal :: Val -> C Expression
convertVals :: [Val] -> C Expression
declareEvalFunc :: Bool -> Atom -> C Name
declareStruct :: forall (m :: * -> *).
(MonadReader Env m, MonadWriter Written m) =>
Atom -> m ()
f_FETCH_RAW_TAG :: Expression -> Expression
f_FETCH_TAG :: Expression -> Expression
f_FROM_SPTR :: Expression -> Expression
f_MKLAZY :: Expression -> Expression
f_NODEP :: Expression -> Expression
f_PROMOTE :: Expression -> Expression
f_RAW_GET_F :: Expression -> Expression
f_RAW_GET_UF :: Expression -> Expression
f_RAW_SET_F :: Expression -> Expression
f_RAW_SET_UF :: Expression -> Expression
f_SET_MEM_TAG :: Expression -> Expression -> Expression
f_SET_RAW_TAG :: Expression -> Expression
f_TO_FPTR :: Expression -> Expression
f_assert :: Expression -> Expression
f_demote :: Expression -> Expression
f_eval :: Expression -> Expression
f_gc_add_root :: Expression -> Expression
f_promote :: Expression -> Expression
f_update :: Expression -> Expression -> Expression
fetchVar :: Var -> Ty -> C Expression
fetchVar' :: Var -> Ty -> C (Name, Type)
floatOps :: [(Op.BinOp, String)]
fptr_t :: Type
gc_roots :: [Expression] -> Expression
gc_t :: Type
getHead :: Expression -> Expression
iDeclare :: forall (m :: * -> *) a. MonadReader Env m => m a -> m a
isCompound :: Exp -> Bool
jhc_malloc :: forall a.
(Eq a, Num a, ToExpression a) =>
Expression -> a -> Expression -> Expression
jhc_malloc_atomic :: Expression -> Expression
jhc_malloc_ptrs :: Expression -> Expression
localScope :: forall (m :: * -> *) b a.
(MonadReader Env m, FreeVars a (Set.Set Var),
FreeVars a (Set.Set (Var, Ty))) =>
a -> (Statement -> m b) -> m b
localTodo :: forall a. Todo -> C a -> C a
mgc :: [Expression] -> [Expression]
mgct :: [(Name, Type)] -> [(Name, Type)]
newNode :: Val -> Type -> Val -> C (Statement, Expression)
nodeAssign :: Val -> Atom -> [Val] -> Exp -> C Statement
nodeCacheName :: Atom -> Name
nodeFuncName :: Atom -> Name
nodeStructName :: Atom -> Name
nodeTagName :: Atom -> Name
nodeType :: forall (m :: * -> *). Monad m => Atom -> m Type
nodeTypePtr :: forall (m :: * -> *). Monad m => Atom -> m Type
opTyToC :: Op.Ty -> Type
opTyToC' :: Op.Ty -> [Char]
opTyToCh :: Op.TyHint -> Op.Ty -> Type
primBinOp :: forall (m :: * -> *) t.
(Monad m, Show t) =>
Op.BinOp
-> Op.Ty -> Op.Ty -> t -> Expression -> Expression -> m Expression
primUnOp :: forall (m :: * -> *) t.
(Monad m, Show t) =>
Op.UnOp -> Op.Ty -> t -> Expression -> m Expression
rCPR :: Env -> Map.Map Atom TyRep
rConst :: Env -> Set.Set Atom
rDeclare :: Env -> Bool
rEMap :: Env -> Map.Map Atom (Name, [Expression])
rEMap_u :: (Map.Map Atom (Name, [Expression])
-> Map.Map Atom (Name, [Expression]))
-> Env -> Env
rGrin :: Env -> Grin
rInscope :: Env -> Set.Set Name
rInscope_u :: (Set.Set Name -> Set.Set Name) -> Env -> Env
rStowed :: Env -> Set.Set Name
rTodo :: Env -> Todo
runC :: forall a.
Grin -> C a -> ((a, HcHash, Written), Map.Map Atom TyRep)
signedOps :: [(Op.BinOp, String)]
simpleRet :: forall (m :: * -> *).
MonadReader Env m =>
Expression -> m Statement
sptr_t :: Type
tagAssign :: Expression -> Atom -> C Statement
tbsize :: Expression -> Expression
tellAllTags :: Val -> C ()
tellFunctions :: [Function] -> C ()
tellTags :: Atom -> C ()
tyToC :: Op.TyHint -> Op.Ty -> [Char]
uintptr_t :: Type
v_gc :: Expression
v_saved_gc :: Expression
varName :: Var -> Name
wAllocs :: Written -> Set.Set (Atom, Int)
wEnums :: Written -> Map.Map Name Int
wFunctions :: Written -> Map.Map Name Function
wRequires :: Written -> Requires
wStructures :: Written -> Map.Map Name Structure
wTags :: Written -> Set.Set Atom
wptr_t :: Type
TYPE CONSTRUCTORS
newtype C a
RecFlag NonRecursive
= C :: forall a. (RWST Env Written HcHash Uniq a) -> C a Stricts: _
FamilyInstance: none
data Env
RecFlag NonRecursive
= Env :: Todo -> (Set.Set Name) -> (Set.Set Name) -> Bool
-> (Map.Map Atom (Name, [Expression])) -> (Map.Map Atom TyRep)
-> (Set.Set Atom) -> Grin -> Env
Stricts: _ _ _ _ _ _ _ _
Fields: rTodo rInscope rStowed rDeclare rEMap rCPR rConst rGrin
FamilyInstance: none
data Todo
RecFlag NonRecursive
= TodoReturn :: Todo |
TodoExp :: [Expression] -> Todo Stricts: _ |
TodoDecl :: Name -> Type -> Todo Stricts: _ _ |
TodoNothing :: Todo
FamilyInstance: none
data TyRep
RecFlag NonRecursive
= TyRepRawTag :: TyRep |
TyRepUntagged :: TyRep |
TyRepRawVal :: Bool -> TyRep HasWrapper Stricts: !
FamilyInstance: none
data Written
RecFlag NonRecursive
= Written :: Requires -> (Map.Map Name Structure) -> (Set.Set Atom)
-> (Set.Set (Atom, Int)) -> (Map.Map Name Int)
-> (Map.Map Name Function) -> Written
Stricts: _ _ _ _ _ _
Fields: wRequires wStructures wTags wAllocs wEnums wFunctions
FamilyInstance: none
COERCION AXIOMS
axiom C.FromGrin2.NTCo:C [] :: C ~# RWST Env Written HcHash Uniq
INSTANCES
instance [overlap ok] Monad C
-- Defined at src/C/FromGrin2.hs:78:14
instance [overlap ok] UniqueProducer C
-- Defined at src/C/FromGrin2.hs:78:20
instance [overlap ok] MonadState HcHash C
-- Defined at src/C/FromGrin2.hs:78:35
instance [overlap ok] MonadWriter Written C
-- Defined at src/C/FromGrin2.hs:78:53
instance [overlap ok] MonadReader Env C
-- Defined at src/C/FromGrin2.hs:78:73
instance [overlap ok] Functor C
-- Defined at src/C/FromGrin2.hs:78:89
instance [overlap ok] Monoid Written
-- Defined at src/C/FromGrin2.hs:1006:10
instance [overlap ok] Op.ToCmmTy Ty
-- Defined at src/C/FromGrin2.hs:882:10
Dependent modules: [(C.FFI, False), (C.Generate, False),
(C.Prims, False), (CPUTime, False), (Char, False),
(Cmm.Number, False), (Cmm.Op, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (FlagDump, False), (FlagOpts, False),
(GenUtil, False), (Grin.Grin, False), (Grin.HashConst, False),
(Grin.Noodle, False), (Grin.Show, False), (Grin.Val, False),
(IO, False), (Info.Info, False), (List, False), (Monad, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CanType, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.TempDir, False), (Support.Tickle, False), (System, False),
(Time, False), (Util.ExitCodes, False), (Util.GMap, False),
(Util.Gen, False), (Util.Graph, False), (Util.Graphviz, False),
(Util.HasSize, False), (Util.IntBag, False), (Util.Perhaps, False),
(Util.SetLike, False), (Util.UniqueMonad, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, fgl-5.4.2.4, filepath-1.3.0.0, ghc-prim,
integer-gmp, mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0,
pretty-1.1.1.0, process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1,
time-1.4, transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[179 of 182] Compiling Grin.Main ( src/Grin/Main.hs, src/Grin/Main.o )
TYPE SIGNATURES
compileGrinToC :: Grin -> IO ()
compileToGrin :: E.Program.Program -> IO ()
deadCodeParms :: TransformParms Grin
dumpFinalGrin :: Grin -> IO ()
grinParms :: forall p. TransformParms p
nodeAnalyzeParms :: TransformParms Grin
pushParms :: TransformParms Grin
simplifyParms :: TransformParms Grin
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(C.FFI, False), (C.FromGrin2, False),
(C.Generate, False), (C.Prims, False), (CPUTime, False),
(Char, False), (Cmm.Number, False), (Cmm.Op, False),
(DataConstructors, False), (Directory, False), (Doc.Chars, False),
(Doc.DocLike, False), (Doc.PPrint, False), (Doc.Pretty, False),
(E.Binary, False), (E.E, False), (E.Eval, False),
(E.FreeVars, False), (E.Program, False), (E.Show, False),
(E.Subst, False), (E.Traverse, False), (E.Type, False),
(E.TypeCheck, False), (E.Values, False), (Fixer.Fixer, False),
(Fixer.Supply, False), (FlagDump, False), (FlagOpts, False),
(FrontEnd.Class, False), (FrontEnd.HsParser, False),
(FrontEnd.HsSyn, False), (FrontEnd.KindInfer, False),
(FrontEnd.Lexer, False), (FrontEnd.ParseMonad, False),
(FrontEnd.ParseUtils, False), (FrontEnd.Representation, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Syn.Options, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Unlit, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (Grin.DeadCode, False), (Grin.Devolve, False),
(Grin.EvalInline, False), (Grin.FromE, False), (Grin.Grin, False),
(Grin.HashConst, False), (Grin.Lint, False),
(Grin.NodeAnalyze, False), (Grin.Noodle, False),
(Grin.Optimize, False), (Grin.SSimplify, False),
(Grin.Show, False), (Grin.StorageAnalysis, False),
(Grin.Val, False), (Grin.Whiz, False), (Ho.ReadSource, False),
(IO, False), (Info.Binary, True), (Info.Info, False),
(Info.Properties, False), (Info.Types, False), (List, False),
(Maybe, False), (Monad, False), (Name.Binary, False),
(Name.Id, False), (Name.Name, False), (Name.Names, False),
(Name.Prim, False), (Name.VConsts, False), (Options, False),
(PackedString, False), (Random, False), (Ratio, False),
(RawFiles, False), (Stats, False), (StringTable.Atom, False),
(Support.CanType, False), (Support.Compat, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Transform, False),
(Support.Tuple, False), (Support.Unparse, False), (System, False),
(Time, False), (Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.FilterInput, False),
(Util.GMap, False), (Util.Gen, False), (Util.Graph, False),
(Util.Graphviz, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False), (Util.Once, False),
(Util.Perhaps, False), (Util.RWS, False), (Util.SameShape, False),
(Util.Seq, False), (Util.SetLike, False), (Util.UnionFind, False),
(Util.UnionSolve, False), (Util.UniqueMonad, False),
(Util.VarName, False), (Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, fgl-5.4.2.4, filepath-1.3.0.0, ghc-prim,
integer-gmp, mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0,
pretty-1.1.1.0, process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1,
time-1.4, transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[180 of 182] Compiling E.FromHs ( src/E/FromHs.hs, src/E/FromHs.o )
TYPE SIGNATURES
actuallySpecializeE :: forall (m :: * -> *).
Monad m =>
E -> E -> m E
altConv :: [HsAlt] -> [([HsPat], HsRhs, [HsDecl])]
applyCoersion :: CoerceTerm -> E -> C E
argTypes :: E -> ([E], [E])
argTypes' :: E -> ([E], E)
ceAssumps :: CeEnv -> Map.Map Name Type
ceCoerce :: CeEnv -> Map.Map Name CoerceTerm
ceDataTable :: CeEnv -> DataTable
ceFuncs :: CeEnv -> FuncNames E
ceProps :: CeEnv -> IdMap Properties
ceSrcLoc :: CeEnv -> SrcLoc
convertDecls :: TiData
-> IdMap Properties
-> ClassHierarchy
-> Map.Map Name Type
-> DataTable
-> [HsDecl]
-> IO [(Name, TVr, E)]
convertE :: TiData
-> ClassHierarchy
-> Map.Map Name Type
-> DataTable
-> SrcLoc
-> HsExp
-> IO E
convertMatches :: [E] -> [([HsPat], E -> E)] -> E -> C E
convertRules :: Module
-> TiData
-> ClassHierarchy
-> Map.Map Name Type
-> DataTable
-> [HsDecl]
-> IO Rules
convertTyp :: forall (m :: * -> *).
MonadReader CeEnv m =>
Name -> m E
convertValue :: forall (m :: * -> *).
MonadReader CeEnv m =>
Name -> m (TVr' E, E, E -> E)
convertVar :: forall (m :: * -> *).
MonadReader CeEnv m =>
Name -> m (TVr' E)
createFunc :: [E] -> ([TVr] -> C (E -> E, E)) -> C E
createIf :: forall (m :: * -> *).
UniqueProducer m =>
E -> E -> E -> m E
createIfv :: forall t. TVr' t -> E -> E -> E -> E
createInstanceRules :: forall (m :: * -> *).
Monad m =>
DataTable -> ClassHierarchy -> [(TVr, E)] -> m Rules
deNewtype :: DataTable -> E -> E
extractUnboxedTup :: E -> ([E] -> C E) -> C E
ffiTypeInfo :: forall (m :: * -> *) b.
(MonadIO m, MonadSrcLoc m, DataTableMonad m) =>
b -> E -> (ExtTypeInfo -> m b) -> m b
fromHsPLitInt :: forall (m :: * -> *).
Monad m =>
HsPat -> m HsLiteral
fromSigma :: Type -> ([TVr' E], E)
fromTuple_ :: forall (m :: * -> *). Monad m => E -> m [E]
fromTyvar :: Tyvar -> TVr' E
getMainFunction :: forall (m :: * -> *).
Monad m =>
DataTable -> Name -> Map.Map Name (TVr, E) -> m (TVr, E)
getTypeCons :: Type -> Name
ifzh :: E -> E -> E -> E
intConvert :: Integer -> E
intConvert' :: FuncNames E -> E -> Integer -> E
integer_cutoff :: Integer
kind :: Kind -> E
litconvert :: forall e t.
(Eq t, Show t, TypeNames t) =>
HsLiteral -> t -> Lit e t
makeSpec :: forall (m :: * -> *).
Monad m =>
DataTable -> (TVr, E) -> Type.Rule -> m ((TVr, E), Rule)
marshallFromC :: forall (m :: * -> *).
(MonadIO m, MonadSrcLoc m, DataTableMonad m) =>
E -> E -> m E
marshallToC :: forall (m :: * -> *).
(MonadIO m, MonadSrcLoc m, UniqueProducer m, DataTableMonad m) =>
E -> E -> m E
matchesConv :: [HsMatch] -> [([HsPat], HsRhs, [HsDecl])]
monadicLookup' :: forall (m :: * -> *) a a1.
(Monad m, Ord a1, Show a1) =>
a1 -> Map.Map a1 a -> m a
nameToEntryPoint :: forall (m :: * -> *).
Monad m =>
DataTable
-> TVr -> Name -> Maybe FfiExport -> FuncNames E -> m (TVr, E)
newVars :: forall (m :: * -> *). UniqueProducer m => [E] -> m [TVr]
packupString :: String -> (E, Bool)
procAllSpecs :: forall (m :: * -> *).
Monad m =>
DataTable -> [Type.Rule] -> [(TVr, E)] -> m ([(TVr, E)], Rules)
r_bits32 :: E
r_bits_max_ :: E
r_bits_ptr_ :: E
specializeE :: forall (m :: * -> *). Monad m => E -> E -> m [E]
tidyHeads :: E
-> [([HsPat], E -> E)] -> C [(HsPat, [HsPat], E -> E)]
tidyPat :: HsPat -> E -> C (HsPat, E -> E)
tipe :: Type -> E
toTVr :: Map.Map Name Type -> DataTable -> Name -> TVr' E
ump :: forall a. Show a => a -> E -> E
unbox :: DataTable -> E -> Id -> (E -> E) -> E
unboxedVersion :: forall (m :: * -> *).
(MonadIO m, MonadSrcLoc m, DataTableMonad m) =>
E -> m E
v_silly :: Name
varify :: forall (m :: * -> *).
UniqueProducer m =>
E -> m (E -> E, E)
TYPE CONSTRUCTORS
newtype C a
RecFlag NonRecursive
= Ce :: forall a. (RWST CeEnv [Warning] Int IO a) -> C a Stricts: _
FamilyInstance: none
data CeEnv
RecFlag NonRecursive
= CeEnv :: (Map.Map Name Type) -> (Map.Map Name CoerceTerm)
-> (FuncNames E) -> (IdMap Properties) -> SrcLoc -> DataTable
-> CeEnv
Stricts: _ _ _ _ _ _
Fields: ceAssumps ceCoerce ceFuncs ceProps ceSrcLoc ceDataTable
FamilyInstance: none
COERCION AXIOMS
axiom E.FromHs.NTCo:C [] :: C ~# RWST CeEnv [Warning] Int IO
INSTANCES
instance [overlap ok] Monad C -- Defined at src/E/FromHs.hs:316:14
instance [overlap ok] Functor C
-- Defined at src/E/FromHs.hs:316:20
instance [overlap ok] MonadIO C
-- Defined at src/E/FromHs.hs:316:28
instance [overlap ok] MonadReader CeEnv C
-- Defined at src/E/FromHs.hs:316:36
instance [overlap ok] MonadState Int C
-- Defined at src/E/FromHs.hs:316:54
instance [overlap ok] MonadError IOError C
-- Defined at src/E/FromHs.hs:316:69
instance [overlap ok] DataTableMonad C
-- Defined at src/E/FromHs.hs:333:10
instance [overlap ok] UniqueProducer C
-- Defined at src/E/FromHs.hs:327:10
instance [overlap ok] MonadSetSrcLoc C
-- Defined at src/E/FromHs.hs:324:10
instance [overlap ok] MonadSrcLoc C
-- Defined at src/E/FromHs.hs:321:10
instance [overlap ok] MonadWarn C
-- Defined at src/E/FromHs.hs:318:10
instance [overlap ok] GenName String
-- Defined at src/E/FromHs.hs:264:10
Dependent modules: [(Array, False), (C.FFI, False),
(C.Prims, False), (CPUTime, False), (Char, False),
(Cmm.Number, False), (Cmm.Op, False), (DataConstructors, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Annotate, False), (E.Binary, False),
(E.E, False), (E.Eta, False), (E.Eval, False), (E.FreeVars, False),
(E.Inline, False), (E.LetFloat, False), (E.PrimDecode, False),
(E.Program, False), (E.Rules, False), (E.Show, False),
(E.Subst, False), (E.Traverse, False), (E.Type, False),
(E.TypeCheck, False), (E.Values, False), (FindFixpoint, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.DataConsAssump, False), (FrontEnd.DeclsDepends, False),
(FrontEnd.DependAnalysis, False), (FrontEnd.Desugar, False),
(FrontEnd.Diagnostic, False), (FrontEnd.Exports, False),
(FrontEnd.HsErrors, False), (FrontEnd.HsParser, False),
(FrontEnd.HsPretty, False), (FrontEnd.HsSyn, False),
(FrontEnd.Infix, False), (FrontEnd.KindInfer, False),
(FrontEnd.Lexer, False), (FrontEnd.ParseMonad, False),
(FrontEnd.ParseUtils, False), (FrontEnd.Rename, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Class, False),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Main, False),
(FrontEnd.Tc.Module, False), (FrontEnd.Tc.Monad, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Tc.Unify, False),
(FrontEnd.TypeSigs, False), (FrontEnd.TypeSynonyms, False),
(FrontEnd.TypeSyns, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False), (Ho.Type, False),
(IO, False), (Info.Binary, True), (Info.Info, False),
(Info.Properties, False), (Info.Types, False), (Ix, False),
(List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CFF, False),
(Support.CanType, False), (Support.FreeVars, False),
(Support.IniParse, False), (Support.MD5, False),
(Support.MapBinaryInstance, False), (Support.TempDir, False),
(Support.Tickle, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.GMap, False), (Util.Gen, False),
(Util.Graph, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.Progress, False), (Util.Relation, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.UniqueMonad, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [array-0.4.0.0, base, binary-0.5.1.0,
bytestring-0.9.2.1, containers-0.4.2.1, deepseq-1.3.0.0,
directory-1.1.0.2, filepath-1.3.0.0, ghc-prim, integer-gmp,
mtl-2.1.1, old-locale-1.0.0.4, old-time-1.1.0.0, pretty-1.1.1.0,
process-1.1.0.1, random-1.0.1.1, syb-0.3.6.1, time-1.4,
transformers-0.3.0.0, unix-2.5.1.0, utf8-string-0.3.7]
[181 of 182] Compiling E.Main ( src/E/Main.hs, src/E/Main.o )
TYPE SIGNATURES
boxifyProgram :: Program -> IO Program
cleanupE :: E -> E
compileWholeProgram :: Program -> IO Program
coreMini :: Bool
corePass :: Bool
coreSteps :: Bool
dumpRules :: Rules -> IO ()
etaExpandProg :: String -> Program -> IO Program
getExports :: HoTcInfo -> Set.Set Id
idann :: forall (m :: * -> *).
Monad m =>
IdMap Properties -> Id -> Info.Info -> m Info.Info
lamann :: forall t (m :: * -> *) a. Monad m => t -> a -> m a
letann :: forall (m :: * -> *).
Monad m =>
E -> Info.Info -> m Info.Info
miniCorePass :: Bool
miniCoreSteps :: Bool
processDecls :: CollectedHo -> Ho -> TiData -> IO (CollectedHo, Ho)
processInitialHo :: CollectedHo -> Ho -> IO CollectedHo
programPrune :: Program -> IO Program
programPruneUnreachable :: Program -> Program
shouldBeExported :: forall e.
HasProperties (TVr' e) =>
Set.Set Id -> TVr' e -> TVr' e
simplifyProgram :: forall (m :: * -> *).
MonadIO m =>
SS.SimplifyOpts -> String -> Bool -> Program -> m Program
simplifyProgram' :: SS.SimplifyOpts
-> String -> Bool -> Iterate -> Program -> IO Program
transTypeAnalyze :: TransformParms Program
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(Array, False), (C.FFI, False),
(C.Prims, False), (CPUTime, False), (Char, False),
(Cmm.Number, False), (Cmm.Op, False), (Cmm.OpEval, False),
(DataConstructors, False), (DerivingDrift.DataP, False),
(DerivingDrift.Drift, False), (DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Annotate, False), (E.Binary, False),
(E.CPR, False), (E.Demand, False), (E.E, False), (E.Eta, False),
(E.Eval, False), (E.FreeVars, False), (E.FromHs, False),
(E.Inline, False), (E.LambdaLift, False), (E.LetFloat, False),
(E.Lint, False), (E.PrimDecode, False), (E.PrimOpt, False),
(E.Program, False), (E.Rules, False), (E.SSimplify, False),
(E.Show, False), (E.Subst, False), (E.Traverse, False),
(E.Type, False), (E.TypeAnalysis, False), (E.TypeCheck, False),
(E.Values, False), (E.WorkerWrapper, False), (FindFixpoint, False),
(Fixer.Fixer, False), (Fixer.Supply, False), (Fixer.VMap, False),
(FlagDump, False), (FlagOpts, False), (FrontEnd.Class, False),
(FrontEnd.DataConsAssump, False), (FrontEnd.DeclsDepends, False),
(FrontEnd.DependAnalysis, False), (FrontEnd.Desugar, False),
(FrontEnd.Diagnostic, False), (FrontEnd.Exports, False),
(FrontEnd.FrontEnd, False), (FrontEnd.HsErrors, False),
(FrontEnd.HsParser, False), (FrontEnd.HsPretty, False),
(FrontEnd.HsSyn, False), (FrontEnd.Infix, False),
(FrontEnd.KindInfer, False), (FrontEnd.Lexer, False),
(FrontEnd.ParseMonad, False), (FrontEnd.ParseUtils, False),
(FrontEnd.Rename, False), (FrontEnd.Representation, False),
(FrontEnd.SrcLoc, False), (FrontEnd.Syn.Options, False),
(FrontEnd.Syn.Traverse, False), (FrontEnd.Tc.Class, False),
(FrontEnd.Tc.Kind, False), (FrontEnd.Tc.Main, False),
(FrontEnd.Tc.Module, False), (FrontEnd.Tc.Monad, False),
(FrontEnd.Tc.Type, False), (FrontEnd.Tc.Unify, False),
(FrontEnd.TypeSigs, False), (FrontEnd.TypeSynonyms, False),
(FrontEnd.TypeSyns, False), (FrontEnd.Unlit, False),
(FrontEnd.Utils, False), (FrontEnd.Warning, False),
(GenUtil, False), (Grin.Grin, False), (Grin.Noodle, False),
(Grin.Show, False), (Grin.Val, False), (Ho.Binary, False),
(Ho.Build, False), (Ho.Collected, False), (Ho.Library, False),
(Ho.ReadSource, False), (Ho.Type, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (Ix, False), (List, False), (Maybe, False),
(Monad, False), (Name.Binary, False), (Name.Id, False),
(Name.Name, False), (Name.Names, False), (Name.Prim, False),
(Name.VConsts, False), (Options, False), (PackedString, False),
(Random, False), (Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CFF, False),
(Support.CanType, False), (Support.Compat, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MD5, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Transform, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.FilterInput, False),
(Util.GMap, False), (Util.Gen, False), (Util.Graph, False),
(Util.Graphviz, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.NameMonad, False),
(Util.Perhaps, False), (Util.Progress, False), (Util.RWS, False),
(Util.ReaderWriter, False), (Util.Relation, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.UniqueMonad, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [HsSyck-0.50, array-0.4.0.0, base,
binary-0.5.1.0, bytestring-0.9.2.1, containers-0.4.2.1,
deepseq-1.3.0.0, directory-1.1.0.2, fgl-5.4.2.4, filepath-1.3.0.0,
ghc-prim, integer-gmp, mtl-2.1.1, old-locale-1.0.0.4,
old-time-1.1.0.0, pretty-1.1.1.0, process-1.1.0.1, random-1.0.1.1,
syb-0.3.6.1, time-1.4, transformers-0.3.0.0, unix-2.5.1.0,
utf8-string-0.3.7, zlib-0.5.3.3]
[182 of 182] Compiling Main ( src/Main.hs, src/Main.o )
TYPE SIGNATURES
:Main.main :: IO ()
main :: IO ()
processCollectedHo :: CollectedHo -> IO ()
processFiles :: [String] -> IO ()
progressM :: IO String -> IO ()
purgeCache :: IO ()
TYPE CONSTRUCTORS
COERCION AXIOMS
Dependent modules: [(Array, False), (C.FFI, False),
(C.FromGrin2, False), (C.Generate, False), (C.Prims, False),
(CPUTime, False), (Char, False), (Cmm.Number, False),
(Cmm.Op, False), (Cmm.OpEval, False), (DataConstructors, False),
(DerivingDrift.DataP, False), (DerivingDrift.Drift, False),
(DerivingDrift.RuleUtils, False),
(DerivingDrift.StandardRules, False), (Directory, False),
(Doc.Chars, False), (Doc.DocLike, False), (Doc.PPrint, False),
(Doc.Pretty, False), (E.Annotate, False), (E.Binary, False),
(E.CPR, False), (E.Demand, False), (E.E, False), (E.Eta, False),
(E.Eval, False), (E.FreeVars, False), (E.FromHs, False),
(E.Inline, False), (E.LambdaLift, False), (E.LetFloat, False),
(E.Lint, False), (E.Main, False), (E.PrimDecode, False),
(E.PrimOpt, False), (E.Program, False), (E.Rules, False),
(E.SSimplify, False), (E.Show, False), (E.Subst, False),
(E.Traverse, False), (E.Type, False), (E.TypeAnalysis, False),
(E.TypeCheck, False), (E.Values, False), (E.WorkerWrapper, False),
(FindFixpoint, False), (Fixer.Fixer, False), (Fixer.Supply, False),
(Fixer.VMap, False), (FlagDump, False), (FlagOpts, False),
(FrontEnd.Class, False), (FrontEnd.DataConsAssump, False),
(FrontEnd.DeclsDepends, False), (FrontEnd.DependAnalysis, False),
(FrontEnd.Desugar, False), (FrontEnd.Diagnostic, False),
(FrontEnd.Exports, False), (FrontEnd.FrontEnd, False),
(FrontEnd.HsErrors, False), (FrontEnd.HsParser, False),
(FrontEnd.HsPretty, False), (FrontEnd.HsSyn, False),
(FrontEnd.Infix, False), (FrontEnd.KindInfer, False),
(FrontEnd.Lexer, False), (FrontEnd.ParseMonad, False),
(FrontEnd.ParseUtils, False), (FrontEnd.Rename, False),
(FrontEnd.Representation, False), (FrontEnd.SrcLoc, False),
(FrontEnd.Syn.Options, False), (FrontEnd.Syn.Traverse, False),
(FrontEnd.Tc.Class, False), (FrontEnd.Tc.Kind, False),
(FrontEnd.Tc.Main, False), (FrontEnd.Tc.Module, False),
(FrontEnd.Tc.Monad, False), (FrontEnd.Tc.Type, False),
(FrontEnd.Tc.Unify, False), (FrontEnd.TypeSigs, False),
(FrontEnd.TypeSynonyms, False), (FrontEnd.TypeSyns, False),
(FrontEnd.Unlit, False), (FrontEnd.Utils, False),
(FrontEnd.Warning, False), (GenUtil, False),
(Grin.DeadCode, False), (Grin.Devolve, False),
(Grin.EvalInline, False), (Grin.FromE, False), (Grin.Grin, False),
(Grin.HashConst, False), (Grin.Lint, False), (Grin.Main, False),
(Grin.NodeAnalyze, False), (Grin.Noodle, False),
(Grin.Optimize, False), (Grin.SSimplify, False),
(Grin.Show, False), (Grin.StorageAnalysis, False),
(Grin.Val, False), (Grin.Whiz, False), (Ho.Binary, False),
(Ho.Build, False), (Ho.Collected, False), (Ho.Library, False),
(Ho.ReadSource, False), (Ho.Type, False), (IO, False),
(Info.Binary, True), (Info.Info, False), (Info.Properties, False),
(Info.Types, False), (Interactive, False), (Ix, False),
(List, False), (Maybe, False), (Monad, False),
(Name.Binary, False), (Name.Id, False), (Name.Name, False),
(Name.Names, False), (Name.Prim, False), (Name.VConsts, False),
(Options, False), (PackedString, False), (Random, False),
(Ratio, False), (RawFiles, False), (Stats, False),
(StringTable.Atom, False), (Support.CFF, False),
(Support.CanType, False), (Support.Compat, False),
(Support.FreeVars, False), (Support.IniParse, False),
(Support.MD5, False), (Support.MapBinaryInstance, False),
(Support.TempDir, False), (Support.Tickle, False),
(Support.Transform, False), (Support.Tuple, False),
(Support.Unparse, False), (System, False), (Time, False),
(Util.BitSet, False), (Util.ContextMonad, False),
(Util.ExitCodes, False), (Util.FilterInput, False),
(Util.GMap, False), (Util.Gen, False), (Util.Graph, False),
(Util.Graphviz, False), (Util.HasSize, False), (Util.Inst, False),
(Util.IntBag, False), (Util.Interact, False),
(Util.NameMonad, False), (Util.Once, False), (Util.Perhaps, False),
(Util.Progress, False), (Util.RWS, False),
(Util.ReaderWriter, False), (Util.Relation, False),
(Util.SameShape, False), (Util.Seq, False), (Util.SetLike, False),
(Util.UnionFind, False), (Util.UnionSolve, False),
(Util.UniqueMonad, False), (Util.VarName, False),
(Util.YAML, False), (Version.Config, False),
(Version.Version, False)]
Dependent packages: [HsSyck-0.50, array-0.4.0.0, base,
binary-0.5.1.0, bytestring-0.9.2.1, containers-0.4.2.1,
deepseq-1.3.0.0, directory-1.1.0.2, fgl-5.4.2.4, filepath-1.3.0.0,
ghc-prim, integer-gmp, mtl-2.1.1, old-locale-1.0.0.4,
old-time-1.1.0.0, pretty-1.1.1.0, process-1.1.0.1, random-1.0.1.1,
readline-1.0.1.0, regex-base-0.93.2, regex-compat-0.95.1,
regex-posix-0.95.1, syb-0.3.6.1, time-1.4, transformers-0.3.0.0,
unix-2.5.1.0, utf8-string-0.3.7, zlib-0.5.3.3]
Linking ajhc ...
./ajhc -L- -L. --build-hl lib/jhc-prim/jhc-prim.yaml -o jhc-prim-1.0.hl
ajhc -L- -L. --build-hl lib/jhc-prim/jhc-prim.yaml -o jhc-prim-1.0.hl
ajhc 0.8.0.0 (-0)
Creating library from description file: "lib/jhc-prim/jhc-prim.yaml"
Reading: "lib/jhc-prim/jhc-prim.yaml"
Finding Dependencies...
Using Ho Cache: '/home/kiwamu/.ajhc/cache'
Jhc.Prim.Array [lib/jhc-prim/Jhc/Prim/Array.hs] <~/.ajhc/cache/c00df9cl5aisvq16pj6bm4cj70.ho>
Jhc.Prim.Bits [lib/jhc-prim/Jhc/Prim/Bits.hs] <~/.ajhc/cache/sgoid3te1k7ff6kcndstgltbn7.ho>
Jhc.Prim.Prim [lib/jhc-prim/Jhc/Prim/Prim.hs]
Jhc.Prim.IO [lib/jhc-prim/Jhc/Prim/IO.hs]
Jhc.Prim.Rts [lib/jhc-prim/Jhc/Prim/Rts.hs] <~/.ajhc/cache/0t2qo4868vqsr6phqb3vjcjr2t.ho>
Jhc.Prim.Wrapper [lib/jhc-prim/Jhc/Prim/Wrapper.hs] <~/.ajhc/cache/see659h62992vujr27dihljaaa.ho>
Fresh: <~/.ajhc/cache/sgoid3te1k7ff6kcndstgltbn7.ho>
Fresh: <~/.ajhc/cache/c00df9cl5aisvq16pj6bm4cj70.ho>
Fresh: <~/.ajhc/cache/0t2qo4868vqsr6phqb3vjcjr2t.ho>
Fresh: <~/.ajhc/cache/see659h62992vujr27dihljaaa.ho>
Typechecking...
Compiling...
Writing Library: jhc-prim-1.0.hl
./ajhc -L- -L. --build-hl lib/jhc/jhc.yaml -o jhc-1.0.hl
ajhc -L- -L. --build-hl lib/jhc/jhc.yaml -o jhc-1.0.hl
ajhc 0.8.0.0 (-0)
Creating library from description file: "lib/jhc/jhc.yaml"
Reading: "lib/jhc/jhc.yaml"
Finding Dependencies...
Using Ho Cache: '/home/kiwamu/.ajhc/cache'
Data.Ratio [lib/jhc/Data/Ratio.hs] <~/.ajhc/cache/c41v132uveot63uhi62funblqm.ho>
Jhc.Basics [lib/jhc/Jhc/Basics.hs] <~/.ajhc/cache/ciftvtkubm4pesquqcsdhc7h29.ho>
Jhc.Int [lib/jhc/Jhc/Int.hs] <~/.ajhc/cache/ga6medepr21e39p2f8uj3ph5ga.ho>
Jhc.Type.Word [lib/jhc/Jhc/Type/Word.hs] <~/.ajhc/cache/sbs21na0d2282gik2no7s69u3j.ho>
Jhc.Type.Basic [lib/jhc/Jhc/Type/Basic.hs] <~/.ajhc/cache/895vl84pdm3qk37u33aqbt2lkk.ho>
Jhc.Class.Real [lib/jhc/Jhc/Class/Real.hs]
Jhc.Class.Num [lib/jhc/Jhc/Class/Num.hs] <~/.ajhc/cache/oummikb1spi0pftbna3cvqjfnc.ho>
Jhc.Class.Ord [lib/jhc/Jhc/Class/Ord.hs] <~/.ajhc/cache/ku4qijb254fd0llii5233jahjr.ho>
Jhc.Show [lib/jhc/Jhc/Show.hs] <~/.ajhc/cache/slh28pomaa142l4fdq87t0cg7j.ho>
Jhc.Enum [lib/jhc/Jhc/Enum.hs] <~/.ajhc/cache/c00sgnigj1vcqhc639d9pd6osc.ho>
Jhc.Inst.PrimEnum [lib/jhc/Jhc/Inst/PrimEnum.hs] <~/.ajhc/cache/8bcs0ggp2ho0c12c8gc6m4kn8p.ho>
Jhc.Float [lib/jhc/Jhc/Float.hs]
Jhc.Inst.Num [lib/jhc/Jhc/Inst/Num.hs]
Jhc.Inst.Enum [lib/jhc/Jhc/Inst/Enum.hs]
Jhc.IO [lib/jhc/Jhc/IO.hs] <~/.ajhc/cache/gglk5798418tbvrr5qrc5tob2t.ho>
Jhc.Options [lib/jhc/Jhc/Options.hs] <~/.ajhc/cache/gtt7g1csl6osi6ksb1k6mc39jm.ho>
Jhc.Order [lib/jhc/Jhc/Order.hs] <~/.ajhc/cache/80jc4q8ounbgglf4ql07epi734.ho>
Jhc.Prim [lib/jhc/Jhc/Prim.hs] <~/.ajhc/cache/cgu8ce6m4p8i01s95njjcuj103.ho>
Jhc.Type.Handle [lib/jhc/Jhc/Type/Handle.hs] <~/.ajhc/cache/g85d8ng8ks9920gefl58s3dc4t.ho>
Jhc.Type.C [lib/jhc/Jhc/Type/C.hs] <~/.ajhc/cache/8bu8vfkjn3pd21v25ue80l1r65.ho>
Jhc.Type.Float [lib/jhc/Jhc/Type/Float.hs] <~/.ajhc/cache/cusufvmgb2omq61lgtp276emsp.ho>
Jhc.Type.Ptr [lib/jhc/Jhc/Type/Ptr.hs] <~/.ajhc/cache/k55kn3ibiceamltjbd3bcuq1l5.ho>
Jhc.Num [lib/jhc/Jhc/Num.hs]
Prelude.Text [lib/jhc/Prelude/Text.hs]
Jhc.List [lib/jhc/Jhc/List.hs] <~/.ajhc/cache/42ntb8j647es7ccq912dngg4dr.ho>
Jhc.String [lib/jhc/Jhc/String.hs] <~/.ajhc/cache/oc5oh4ej6n0sgktvk6v4br0q82.ho>
Jhc.Monad [lib/jhc/Jhc/Monad.hs] <~/.ajhc/cache/s12ht72e5060lntevnksdl957c.ho>
Jhc.Text.Read [lib/jhc/Jhc/Text/Read.hs]
Prelude.CType [lib/jhc/Prelude/CType.hs] <~/.ajhc/cache/o49gjarbisav2ip5hcn0li6lt8.ho>
Jhc.Inst.Order [lib/jhc/Jhc/Inst/Order.hs] <~/.ajhc/cache/0vauofngnkq839i656r2ruj6fs.ho>
Numeric [lib/jhc/Numeric.hs]
Jhc.Numeric [lib/jhc/Jhc/Numeric.hs]
Prelude.IO [lib/jhc/Prelude/IO.hs]
Foreign.C.String [lib/jhc/Foreign/C/String.hs]
Foreign.C.Types [lib/jhc/Foreign/C/Types.hs] <~/.ajhc/cache/0euoe459p18gg2ko6g2r3526nm.ho>
Foreign.Marshal.Array [lib/jhc/Foreign/Marshal/Array.hs]
Foreign.Marshal.Alloc [lib/jhc/Foreign/Marshal/Alloc.hs]
Foreign.Storable [lib/jhc/Foreign/Storable.hs] <~/.ajhc/cache/sup9oi9ivprpf57n9p7vk3cgnb.ho>
Jhc.Addr [lib/jhc/Jhc/Addr.hs] <~/.ajhc/cache/s20g7hf7lqhsvk93ag542oee4b.ho>
Foreign.Marshal.Utils [lib/jhc/Foreign/Marshal/Utils.hs]
Foreign.Ptr [lib/jhc/Foreign/Ptr.hs]
Jhc.Inst.Show [lib/jhc/Jhc/Inst/Show.hs]
Jhc.Inst.Storable [lib/jhc/Jhc/Inst/Storable.hs]
System.C.Stdio [lib/jhc/System/C/Stdio.hs] <~/.ajhc/cache/gv6l0c7f17nkq4utr2sfjk32gp.ho>
Prelude.Float [lib/jhc/Prelude/Float.hs]
Foreign.C.Error [lib/jhc/Foreign/C/Error.hs] <~/.ajhc/cache/colsq17kh6bt9dpmd7528nrqa6.ho>
Jhc.Maybe [lib/jhc/Jhc/Maybe.hs] <~/.ajhc/cache/02laa0v814ha7f08hn697m1mai.ho>
Jhc.ForeignPtr [lib/jhc/Jhc/ForeignPtr.hs] <~/.ajhc/cache/4ciipb99a83kov7idstsskj1j5.ho>
Jhc.Handle [lib/jhc/Jhc/Handle.hs] <~/.ajhc/cache/cl2kktn7d6odmauaoqeo0l346i.ho>
Jhc.Inst.Read [lib/jhc/Jhc/Inst/Read.hs] <~/.ajhc/cache/khsl2al46nmuc9d4r1lppjrskq.ho>
Jhc.Tuples [lib/jhc/Jhc/Tuples.hs] <~/.ajhc/cache/04sve294igs6ipl5cnf6cq7as3.ho>
System.IO.Unsafe [lib/jhc/System/IO/Unsafe.hs] <~/.ajhc/cache/0sqa2n7sjd7f20db7ou0ful5f5.ho>
System.Mem [lib/jhc/System/Mem.hs] <~/.ajhc/cache/s5pe9mmvbvbad7pva2s9jqq1tn.ho>
System.Mem.StableName [lib/jhc/System/Mem/StableName.hs] <~/.ajhc/cache/446eggith5477j9u572qj41nf8.ho>
Fresh: <~/.ajhc/cache/k55kn3ibiceamltjbd3bcuq1l5.ho>
Fresh: <~/.ajhc/cache/sbs21na0d2282gik2no7s69u3j.ho>
Fresh: <~/.ajhc/cache/895vl84pdm3qk37u33aqbt2lkk.ho>
Fresh: <~/.ajhc/cache/ga6medepr21e39p2f8uj3ph5ga.ho>
Fresh: <~/.ajhc/cache/ciftvtkubm4pesquqcsdhc7h29.ho>
Fresh: <~/.ajhc/cache/cusufvmgb2omq61lgtp276emsp.ho>
Fresh: <~/.ajhc/cache/8bu8vfkjn3pd21v25ue80l1r65.ho>
Fresh: <~/.ajhc/cache/gv6l0c7f17nkq4utr2sfjk32gp.ho>
Fresh: <~/.ajhc/cache/cgu8ce6m4p8i01s95njjcuj103.ho>
Fresh: <~/.ajhc/cache/ku4qijb254fd0llii5233jahjr.ho>
Fresh: <~/.ajhc/cache/80jc4q8ounbgglf4ql07epi734.ho>
Fresh: <~/.ajhc/cache/0vauofngnkq839i656r2ruj6fs.ho>
Fresh: <~/.ajhc/cache/oc5oh4ej6n0sgktvk6v4br0q82.ho>
Fresh: <~/.ajhc/cache/g85d8ng8ks9920gefl58s3dc4t.ho>
Fresh: <~/.ajhc/cache/8bcs0ggp2ho0c12c8gc6m4kn8p.ho>
Fresh: <~/.ajhc/cache/c00sgnigj1vcqhc639d9pd6osc.ho>
Fresh: <~/.ajhc/cache/gtt7g1csl6osi6ksb1k6mc39jm.ho>
Fresh: <~/.ajhc/cache/gglk5798418tbvrr5qrc5tob2t.ho>
Fresh: <~/.ajhc/cache/42ntb8j647es7ccq912dngg4dr.ho>
Fresh: <~/.ajhc/cache/o49gjarbisav2ip5hcn0li6lt8.ho>
Fresh: <~/.ajhc/cache/s12ht72e5060lntevnksdl957c.ho>
Fresh: <~/.ajhc/cache/slh28pomaa142l4fdq87t0cg7j.ho>
Fresh: <~/.ajhc/cache/oummikb1spi0pftbna3cvqjfnc.ho>
Fresh: <~/.ajhc/cache/s20g7hf7lqhsvk93ag542oee4b.ho>
Fresh: <~/.ajhc/cache/sup9oi9ivprpf57n9p7vk3cgnb.ho>
Fresh: <~/.ajhc/cache/0euoe459p18gg2ko6g2r3526nm.ho>
Fresh: <~/.ajhc/cache/c41v132uveot63uhi62funblqm.ho>
Fresh: <~/.ajhc/cache/02laa0v814ha7f08hn697m1mai.ho>
Fresh: <~/.ajhc/cache/colsq17kh6bt9dpmd7528nrqa6.ho>
Fresh: <~/.ajhc/cache/4ciipb99a83kov7idstsskj1j5.ho>
Fresh: <~/.ajhc/cache/cl2kktn7d6odmauaoqeo0l346i.ho>
Fresh: <~/.ajhc/cache/khsl2al46nmuc9d4r1lppjrskq.ho>
Fresh: <~/.ajhc/cache/04sve294igs6ipl5cnf6cq7as3.ho>
Fresh: <~/.ajhc/cache/0sqa2n7sjd7f20db7ou0ful5f5.ho>
Fresh: <~/.ajhc/cache/s5pe9mmvbvbad7pva2s9jqq1tn.ho>
Fresh: <~/.ajhc/cache/446eggith5477j9u572qj41nf8.ho>
Typechecking...
Compiling...
*** Module depended on in library that is not in export list: Jhc.Inst.Num
*** Module depended on in library that is not in export list: Jhc.Inst.Order
Writing Library: jhc-1.0.hl
./ajhc -L- -L. --build-hl lib/haskell-extras/haskell-extras.yaml.m4 -o haskell-extras-0.8.1.hl
ajhc -L- -L. --build-hl lib/haskell-extras/haskell-extras.yaml.m4 -o haskell-extras-0.8.1.hl
ajhc 0.8.0.0 (-0)
Creating library from description file: "lib/haskell-extras/haskell-extras.yaml.m4"
Reading: "lib/haskell-extras/haskell-extras.yaml.m4"
Writing stuff:/tmp/jhc_mQWyIn/prelude.m4
Finding Dependencies...
Using Ho Cache: '/home/kiwamu/.ajhc/cache'
Control.Exception [lib/haskell-extras/Control/Exception.hs] <~/.ajhc/cache/0a3p5n596u5pkbtlqv2c2mtnm3.ho>
Prelude [lib/haskell-extras/Prelude.hs] <~/.ajhc/cache/c5hd3b6kqc2ipb213es3sqmakv.ho>
Control.Monad [lib/haskell-extras/Control/Monad.hs] <~/.ajhc/cache/oq7jqjo7cs4pb939o1oqrsqbmi.ho>
Control.Monad.Fix [lib/haskell-extras/Control/Monad/Fix.hs] <~/.ajhc/cache/sbul6go8545elgrfu4qnkd478u.ho>
Control.Monad.Instances [lib/haskell-extras/Control/Monad/Instances.hs] <~/.ajhc/cache/os8s72u83m3661pfqhs1qdre5f.ho>
Data.Function [lib/haskell-extras/Data/Function.hs] <~/.ajhc/cache/04slp0sn1irc6lpcnpoie7dl6s.ho>
Data.Array [lib/haskell-extras/Data/Array.hs] <~/.ajhc/cache/896fve6j8kn1rilf0299fs2tuf.ho>
Data.Ix [lib/haskell-extras/Data/Ix.hs] <~/.ajhc/cache/8bgfpqpf2910c3odgehfk31s3h.ho>
Data.Array.IO [lib/haskell-extras/Data/Array/IO.hs] <~/.ajhc/cache/s9peslbhhk9fradk6smurf4d5b.ho>
Data.Array.Unboxed [lib/haskell-extras/Data/Array/Unboxed.hs] <~/.ajhc/cache/csnh3113d6s7jval7fto7er0u0.ho>
Foreign.ForeignPtr [lib/haskell-extras/Foreign/ForeignPtr.hs] <~/.ajhc/cache/8jf6usgluh1au894u889rh9jr1.ho>
Data.Bits [lib/haskell-extras/Data/Bits.hs] <~/.ajhc/cache/ovmmbr9j4chducbet17blkibl9.ho>
Data.Char [lib/haskell-extras/Data/Char.hs] <~/.ajhc/cache/k02v0ssbblc43h4t9igg4uha74.ho>
Data.Complex [lib/haskell-extras/Data/Complex.hs] <~/.ajhc/cache/s8lg8ot3gkievfp6dnf8snlp0t.ho>
Data.Functor [lib/haskell-extras/Data/Functor.hs] <~/.ajhc/cache/k01ln76hd0feir0gkqlp49ij60.ho>
Data.IORef [lib/haskell-extras/Data/IORef.hs] <~/.ajhc/cache/sa4lnou8f9pl903n4bpt0j2erb.ho>
Data.Int [lib/haskell-extras/Data/Int.hs] <~/.ajhc/cache/8lecmr145jvrfue20anomcnv8d.ho>
Data.List [lib/haskell-extras/Data/List.hs] <~/.ajhc/cache/cf95img0511noo2mdgtb8thv33.ho>
Data.Maybe [lib/haskell-extras/Data/Maybe.hs] <~/.ajhc/cache/ch4kfse7i3qm3pqn35oo4t5ggr.ho>
Data.Monoid [lib/haskell-extras/Data/Monoid.hs] <~/.ajhc/cache/ss72v3mfu2lj1l291reaim93ak.ho>
Data.Typeable [lib/haskell-extras/Data/Typeable.hs] <~/.ajhc/cache/4p1djs9dg52u0m2uujma625f6m.ho>
Data.Unicode [lib/haskell-extras/Data/Unicode.hs] <~/.ajhc/cache/s1soajbdhll49j8hri0f0qnaug.ho>
Data.Version [lib/haskell-extras/Data/Version.hs] <~/.ajhc/cache/gajumjkd3pba6fkrvq8ductic3.ho>
Data.Word [lib/haskell-extras/Data/Word.hs] <~/.ajhc/cache/0g8cqvlrbq3bvc7rn8vjeo2kip.ho>
Debug.Trace [lib/haskell-extras/Debug/Trace.hs] <~/.ajhc/cache/4aa7uig56167r3j1to3lednm4q.ho>
System.IO [lib/haskell-extras/System/IO.hs] <~/.ajhc/cache/0hctc2o3rma14iddlila6uvu81.ho>
Foreign [lib/haskell-extras/Foreign.hs] <~/.ajhc/cache/gb6uj3v5iujsqgu4heu67e39rm.ho>
Foreign.Marshal [lib/haskell-extras/Foreign/Marshal.hs] <~/.ajhc/cache/020b2ph63v3ini8q3vgpskd74m.ho>
Foreign.Marshal.Error [lib/haskell-extras/Foreign/Marshal/Error.hs] <~/.ajhc/cache/42kb0a20sogusu1fs99qvj11fe.ho>
Foreign.Marshal.Pool [lib/haskell-extras/Foreign/Marshal/Pool.hs] <~/.ajhc/cache/kjped49e9sjkano547ho7tnt7h.ho>
Foreign.StablePtr [lib/haskell-extras/Foreign/StablePtr.hs] <~/.ajhc/cache/82shqm567498ujqt98ienua9lo.ho>
Foreign.C [lib/haskell-extras/Foreign/C.hs] <~/.ajhc/cache/soif8qh0omihn20pg6a4s5qekg.ho>
System.CPUTime [lib/haskell-extras/System/CPUTime.hs] <~/.ajhc/cache/o3971ij27qcbeprmukfnfqmijd.ho>
System.Cmd [lib/haskell-extras/System/Cmd.hs] <~/.ajhc/cache/khv8qp67qqa52nga9qk1rde57u.ho>
System.Exit [lib/haskell-extras/System/Exit.hs] <~/.ajhc/cache/k29vpfidh9kgicad8lsjdvagic.ho>
System.Console.GetOpt [lib/haskell-extras/System/Console/GetOpt.hs] <~/.ajhc/cache/89qfil1bd033sel6th65g9rj9h.ho>
System.Directory [lib/haskell-extras/System/Directory.hs] <~/.ajhc/cache/c8c0omjq6u9p36qd3phhnhkmeq.ho>
System.Time [lib/haskell-extras/System/Time.hs] <~/.ajhc/cache/cft0v48d8nmu82dra5q6o8b3i9.ho>
System.Locale [lib/haskell-extras/System/Locale.hs] <~/.ajhc/cache/s5ejoqbatj44g9vl26g3t25rg6.ho>
System.Environment [lib/haskell-extras/System/Environment.hs] <~/.ajhc/cache/guo90gn7dtfg9orgqlfkvonhi6.ho>
System.IO.Binary [lib/haskell-extras/System/IO/Binary.hs] <~/.ajhc/cache/00ccbrj1tkukr94k7qjrak108v.ho>
System.IO.Error [lib/haskell-extras/System/IO/Error.hs] <~/.ajhc/cache/s8hgt7usbbuseds9rd8vv5m28p.ho>
System.IO.Pipe [lib/haskell-extras/System/IO/Pipe.hs] <~/.ajhc/cache/cbj9ljafug2o9msk3mkmnnhu1l.ho>
System.Info [lib/haskell-extras/System/Info.hs] <~/.ajhc/cache/gnip4i83ginhk9kr6ve5iqpa3t.ho>
System.Random [lib/haskell-extras/System/Random.hs] <~/.ajhc/cache/4h2eqphth4a5k1k420avf2o239.ho>
Text.Printf [lib/haskell-extras/Text/Printf.hs] <~/.ajhc/cache/gfcoocv4dcch3ujt1hbah6c818.ho>
Text.Show.Functions [lib/haskell-extras/Text/Show/Functions.hs] <~/.ajhc/cache/g7jvstvnp404s5hg2aj449itvg.ho>
Fresh: <~/.ajhc/cache/c5hd3b6kqc2ipb213es3sqmakv.ho>
Fresh: <~/.ajhc/cache/0a3p5n596u5pkbtlqv2c2mtnm3.ho>
Fresh: <~/.ajhc/cache/oq7jqjo7cs4pb939o1oqrsqbmi.ho>
Fresh: <~/.ajhc/cache/04slp0sn1irc6lpcnpoie7dl6s.ho>
Fresh: <~/.ajhc/cache/os8s72u83m3661pfqhs1qdre5f.ho>
Fresh: <~/.ajhc/cache/sbul6go8545elgrfu4qnkd478u.ho>
Fresh: <~/.ajhc/cache/8bgfpqpf2910c3odgehfk31s3h.ho>
Fresh: <~/.ajhc/cache/896fve6j8kn1rilf0299fs2tuf.ho>
Fresh: <~/.ajhc/cache/s9peslbhhk9fradk6smurf4d5b.ho>
Fresh: <~/.ajhc/cache/8jf6usgluh1au894u889rh9jr1.ho>
Fresh: <~/.ajhc/cache/csnh3113d6s7jval7fto7er0u0.ho>
Fresh: <~/.ajhc/cache/ovmmbr9j4chducbet17blkibl9.ho>
Fresh: <~/.ajhc/cache/k02v0ssbblc43h4t9igg4uha74.ho>
Fresh: <~/.ajhc/cache/s8lg8ot3gkievfp6dnf8snlp0t.ho>
Fresh: <~/.ajhc/cache/k01ln76hd0feir0gkqlp49ij60.ho>
Fresh: <~/.ajhc/cache/sa4lnou8f9pl903n4bpt0j2erb.ho>
Fresh: <~/.ajhc/cache/8lecmr145jvrfue20anomcnv8d.ho>
Fresh: <~/.ajhc/cache/cf95img0511noo2mdgtb8thv33.ho>
Fresh: <~/.ajhc/cache/ch4kfse7i3qm3pqn35oo4t5ggr.ho>
Fresh: <~/.ajhc/cache/ss72v3mfu2lj1l291reaim93ak.ho>
Fresh: <~/.ajhc/cache/4p1djs9dg52u0m2uujma625f6m.ho>
Fresh: <~/.ajhc/cache/s1soajbdhll49j8hri0f0qnaug.ho>
Fresh: <~/.ajhc/cache/gajumjkd3pba6fkrvq8ductic3.ho>
Fresh: <~/.ajhc/cache/0g8cqvlrbq3bvc7rn8vjeo2kip.ho>
Fresh: <~/.ajhc/cache/0hctc2o3rma14iddlila6uvu81.ho>
Fresh: <~/.ajhc/cache/4aa7uig56167r3j1to3lednm4q.ho>
Fresh: <~/.ajhc/cache/82shqm567498ujqt98ienua9lo.ho>
Fresh: <~/.ajhc/cache/kjped49e9sjkano547ho7tnt7h.ho>
Fresh: <~/.ajhc/cache/42kb0a20sogusu1fs99qvj11fe.ho>
Fresh: <~/.ajhc/cache/020b2ph63v3ini8q3vgpskd74m.ho>
Fresh: <~/.ajhc/cache/gb6uj3v5iujsqgu4heu67e39rm.ho>
Fresh: <~/.ajhc/cache/soif8qh0omihn20pg6a4s5qekg.ho>
Fresh: <~/.ajhc/cache/o3971ij27qcbeprmukfnfqmijd.ho>
Fresh: <~/.ajhc/cache/k29vpfidh9kgicad8lsjdvagic.ho>
Fresh: <~/.ajhc/cache/khv8qp67qqa52nga9qk1rde57u.ho>
Fresh: <~/.ajhc/cache/89qfil1bd033sel6th65g9rj9h.ho>
Fresh: <~/.ajhc/cache/s5ejoqbatj44g9vl26g3t25rg6.ho>
Fresh: <~/.ajhc/cache/cft0v48d8nmu82dra5q6o8b3i9.ho>
Fresh: <~/.ajhc/cache/c8c0omjq6u9p36qd3phhnhkmeq.ho>
Fresh: <~/.ajhc/cache/guo90gn7dtfg9orgqlfkvonhi6.ho>
Fresh: <~/.ajhc/cache/00ccbrj1tkukr94k7qjrak108v.ho>
Fresh: <~/.ajhc/cache/s8hgt7usbbuseds9rd8vv5m28p.ho>
Fresh: <~/.ajhc/cache/cbj9ljafug2o9msk3mkmnnhu1l.ho>
Fresh: <~/.ajhc/cache/gnip4i83ginhk9kr6ve5iqpa3t.ho>
Fresh: <~/.ajhc/cache/4h2eqphth4a5k1k420avf2o239.ho>
Fresh: <~/.ajhc/cache/gfcoocv4dcch3ujt1hbah6c818.ho>
Fresh: <~/.ajhc/cache/g7jvstvnp404s5hg2aj449itvg.ho>
Typechecking...
Compiling...
*** We are re-exporting the following modules from other libraries: Data.Ratio
*** We are re-exporting the following modules from other libraries: Foreign.C.Error
*** We are re-exporting the following modules from other libraries: Foreign.C.String
*** We are re-exporting the following modules from other libraries: Foreign.C.Types
*** We are re-exporting the following modules from other libraries: Foreign.Marshal.Alloc
*** We are re-exporting the following modules from other libraries: Foreign.Marshal.Array
*** We are re-exporting the following modules from other libraries: Foreign.Marshal.Utils
*** We are re-exporting the following modules from other libraries: Foreign.Ptr
*** We are re-exporting the following modules from other libraries: Foreign.Storable
*** We are re-exporting the following modules from other libraries: Numeric
*** We are re-exporting the following modules from other libraries: System.IO.Unsafe
Writing Library: haskell-extras-0.8.1.hl
./ajhc -L- -L. --build-hl lib/haskell2010/haskell2010.yaml.m4 -o haskell2010-0.8.1.hl
ajhc -L- -L. --build-hl lib/haskell2010/haskell2010.yaml.m4 -o haskell2010-0.8.1.hl
ajhc 0.8.0.0 (-0)
Creating library from description file: "lib/haskell2010/haskell2010.yaml.m4"
Reading: "lib/haskell2010/haskell2010.yaml.m4"
Writing stuff:/tmp/jhc_I4VWiN/prelude.m4
Finding Dependencies...
Using Ho Cache: '/home/kiwamu/.ajhc/cache'
Typechecking...
Compiling...
*** We are re-exporting the following modules from other libraries: Control.Monad
*** We are re-exporting the following modules from other libraries: Data.Array
*** We are re-exporting the following modules from other libraries: Data.Bits
*** We are re-exporting the following modules from other libraries: Data.Char
*** We are re-exporting the following modules from other libraries: Data.Complex
*** We are re-exporting the following modules from other libraries: Data.Int
*** We are re-exporting the following modules from other libraries: Data.Ix
*** We are re-exporting the following modules from other libraries: Data.List
*** We are re-exporting the following modules from other libraries: Data.Maybe
*** We are re-exporting the following modules from other libraries: Data.Ratio
*** We are re-exporting the following modules from other libraries: Data.Word
*** We are re-exporting the following modules from other libraries: Foreign
*** We are re-exporting the following modules from other libraries: Foreign.C
*** We are re-exporting the following modules from other libraries: Foreign.C.Error
*** We are re-exporting the following modules from other libraries: Foreign.C.String
*** We are re-exporting the following modules from other libraries: Foreign.C.Types
*** We are re-exporting the following modules from other libraries: Foreign.ForeignPtr
*** We are re-exporting the following modules from other libraries: Foreign.Marshal
*** We are re-exporting the following modules from other libraries: Foreign.Marshal.Alloc
*** We are re-exporting the following modules from other libraries: Foreign.Marshal.Array
*** We are re-exporting the following modules from other libraries: Foreign.Marshal.Error
*** We are re-exporting the following modules from other libraries: Foreign.Marshal.Utils
*** We are re-exporting the following modules from other libraries: Foreign.Ptr
*** We are re-exporting the following modules from other libraries: Foreign.StablePtr
*** We are re-exporting the following modules from other libraries: Foreign.Storable
*** We are re-exporting the following modules from other libraries: Numeric
*** We are re-exporting the following modules from other libraries: Prelude
*** We are re-exporting the following modules from other libraries: System.Environment
*** We are re-exporting the following modules from other libraries: System.Exit
*** We are re-exporting the following modules from other libraries: System.IO
*** We are re-exporting the following modules from other libraries: System.IO.Error
Writing Library: haskell2010-0.8.1.hl
./ajhc -L- -L. --build-hl lib/flat-foreign/flat-foreign.yaml -o flat-foreign-1.0.hl
ajhc -L- -L. --build-hl lib/flat-foreign/flat-foreign.yaml -o flat-foreign-1.0.hl
ajhc 0.8.0.0 (-0)
Creating library from description file: "lib/flat-foreign/flat-foreign.yaml"
Reading: "lib/flat-foreign/flat-foreign.yaml"
Finding Dependencies...
Using Ho Cache: '/home/kiwamu/.ajhc/cache'
Bits [lib/flat-foreign/Bits.hs] <~/.ajhc/cache/g75b6t8tj6oscj7slkt4idf4mh.ho>
CError [lib/flat-foreign/CError.hs] <~/.ajhc/cache/8tsbt63jq2avpu7hud2pcmbhno.ho>
CForeign [lib/flat-foreign/CForeign.hs] <~/.ajhc/cache/8tuor5ve6dprb6jqoejea19v45.ho>
CString [lib/flat-foreign/CString.hs] <~/.ajhc/cache/4beege2381048msbu781o9ck22.ho>
CTypes [lib/flat-foreign/CTypes.hs] <~/.ajhc/cache/0s664dncrl5d89qask051nci5a.ho>
ForeignPtr [lib/flat-foreign/ForeignPtr.hs] <~/.ajhc/cache/gkk12lsbd8fn8tol31jrumh2b2.ho>
Int [lib/flat-foreign/Int.hs] <~/.ajhc/cache/sa84cp0afrtgcbed9and7p1eui.ho>
MarshalAlloc [lib/flat-foreign/MarshalAlloc.hs] <~/.ajhc/cache/4o7t3sbl5k37l5khm5d2584uoc.ho>
MarshalArray [lib/flat-foreign/MarshalArray.hs] <~/.ajhc/cache/svs05elr0jmlh5ahe9dl5l5ia9.ho>
MarshalError [lib/flat-foreign/MarshalError.hs] <~/.ajhc/cache/gajo3fkg5fl8b94alhh463sq3s.ho>
MarshalUtils [lib/flat-foreign/MarshalUtils.hs] <~/.ajhc/cache/o6p2in93q09ahnfg3l92vhht7e.ho>
Ptr [lib/flat-foreign/Ptr.hs] <~/.ajhc/cache/gi4a6eulikdp6gie6hk8dqfppv.ho>
StablePtr [lib/flat-foreign/StablePtr.hs] <~/.ajhc/cache/gcls104a3k0e0gcb71583bluhi.ho>
Storable [lib/flat-foreign/Storable.hs] <~/.ajhc/cache/sg9cvun6dtaqog8khqg6m1j730.ho>
Word [lib/flat-foreign/Word.hs] <~/.ajhc/cache/sli3fsudeo5kg9hq8conhk2sjd.ho>
Fresh: <~/.ajhc/cache/g75b6t8tj6oscj7slkt4idf4mh.ho>
Fresh: <~/.ajhc/cache/8tsbt63jq2avpu7hud2pcmbhno.ho>
Fresh: <~/.ajhc/cache/8tuor5ve6dprb6jqoejea19v45.ho>
Fresh: <~/.ajhc/cache/4beege2381048msbu781o9ck22.ho>
Fresh: <~/.ajhc/cache/0s664dncrl5d89qask051nci5a.ho>
Fresh: <~/.ajhc/cache/gkk12lsbd8fn8tol31jrumh2b2.ho>
Fresh: <~/.ajhc/cache/sa84cp0afrtgcbed9and7p1eui.ho>
Fresh: <~/.ajhc/cache/4o7t3sbl5k37l5khm5d2584uoc.ho>
Fresh: <~/.ajhc/cache/svs05elr0jmlh5ahe9dl5l5ia9.ho>
Fresh: <~/.ajhc/cache/gajo3fkg5fl8b94alhh463sq3s.ho>
Fresh: <~/.ajhc/cache/o6p2in93q09ahnfg3l92vhht7e.ho>
Fresh: <~/.ajhc/cache/gi4a6eulikdp6gie6hk8dqfppv.ho>
Fresh: <~/.ajhc/cache/gcls104a3k0e0gcb71583bluhi.ho>
Fresh: <~/.ajhc/cache/sg9cvun6dtaqog8khqg6m1j730.ho>
Fresh: <~/.ajhc/cache/sli3fsudeo5kg9hq8conhk2sjd.ho>
Typechecking...
Compiling...
Writing Library: flat-foreign-1.0.hl
./ajhc -L- -L. --build-hl lib/haskell98/haskell98.yaml -o haskell98-1.0.hl
ajhc -L- -L. --build-hl lib/haskell98/haskell98.yaml -o haskell98-1.0.hl
ajhc 0.8.0.0 (-0)
Creating library from description file: "lib/haskell98/haskell98.yaml"
Reading: "lib/haskell98/haskell98.yaml"
Finding Dependencies...
Using Ho Cache: '/home/kiwamu/.ajhc/cache'
Array [lib/haskell98/Array.hs] <~/.ajhc/cache/khk9u2lfrdpms1lsb7rreretqb.ho>
Ix [lib/haskell98/Ix.hs] <~/.ajhc/cache/k6aouq62qdf46k2j6shlkursn0.ho>
CPUTime [lib/haskell98/CPUTime.hs] <~/.ajhc/cache/kqnda6gs5s4nimhpbgoilk9ggl.ho>
Char [lib/haskell98/Char.hs] <~/.ajhc/cache/0b29d6qcdvlvp6f9ou1hm20nic.ho>
Complex [lib/haskell98/Complex.hs] <~/.ajhc/cache/017mq4k51s9lekftb56vtl32i5.ho>
Directory [lib/haskell98/Directory.hs] <~/.ajhc/cache/4rjrsnq4llho1dv53bt0qpm590.ho>
IO [lib/haskell98/IO.hs] <~/.ajhc/cache/s0ll8mg8qatb9rqgeo1nbf2u25.ho>
List [lib/haskell98/List.hs] <~/.ajhc/cache/kbm085ormot6ggbk6906kcihc9.ho>
Locale [lib/haskell98/Locale.hs] <~/.ajhc/cache/kluklbau69282u0jkvptclnef5.ho>
Maybe [lib/haskell98/Maybe.hs] <~/.ajhc/cache/k5dj246bg0km0e2l95cpu18ki5.ho>
Monad [lib/haskell98/Monad.hs] <~/.ajhc/cache/ogdquc5ae4lu50thnju34gbdgc.ho>
Random [lib/haskell98/Random.hs] <~/.ajhc/cache/gg41q8221kvhu18jbg259tppev.ho>
Ratio [lib/haskell98/Ratio.hs] <~/.ajhc/cache/4gf70fq0fhc232dgo5u9flubpc.ho>
System [lib/haskell98/System.hs] <~/.ajhc/cache/8fb9j4tbn6em6ghab5fdl2emas.ho>
Time [lib/haskell98/Time.hs] <~/.ajhc/cache/g1ta8dp0ihufl6a7sfb4il79ps.ho>
Fresh: <~/.ajhc/cache/k6aouq62qdf46k2j6shlkursn0.ho>
Fresh: <~/.ajhc/cache/khk9u2lfrdpms1lsb7rreretqb.ho>
Fresh: <~/.ajhc/cache/kqnda6gs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment