on 1b71663 help sign in
Idris-dev/src/Idris/Core/DeepSeq.hs
65 lines 1.6 kB history raw
1{-|
2Module : Idris.Core.DeepSeq
3Description : NFData instances for TT.
5License : BSD3
6Maintainer : The Idris Community.
7-}
8{-# LANGUAGE BangPatterns, CPP, FlexibleInstances, TypeSynonymInstances,
9 ViewPatterns #-}
10{-# OPTIONS_GHC -fwarn-incomplete-patterns #-}
12module Idris.Core.DeepSeq where
14import Idris.Core.CaseTree
15import Idris.Core.Evaluate
16import Idris.Core.TT
18import Control.DeepSeq
20instance NFData Name
22instance NFData Context
24-- | Forcing the contents of a context, for diagnosing and working
25-- around space leaks
26forceDefCtxt :: Context -> Context
27forceDefCtxt (force -> !ctxt) = ctxt
29instance NFData NameOutput
30instance NFData TextFormatting
31#if !(MIN_VERSION_base(4,10,0))
32instance NFData Ordering
33#endif
34instance NFData OutputAnnotation
35instance NFData SpecialName
36instance NFData Universe
37instance NFData Raw
38instance NFData FC
39instance NFData FC'
40instance NFData Provenance
41instance NFData UConstraint
42instance NFData ConstraintFC
43instance NFData Err
44instance NFData ErrorReportPart
45instance NFData ImplicitInfo
46instance NFData RigCount
47instance (NFData b) => NFData (Binder b)
48instance NFData UExp
49instance NFData NameType
50instance NFData NativeTy
51instance NFData IntTy
52instance NFData ArithTy
53instance NFData Const
54instance (NFData a) => NFData (AppStatus a)
55instance (NFData n) => NFData (TT n)
56instance NFData Accessibility
57instance NFData Totality
58instance NFData PReason
59instance NFData MetaInformation
60instance NFData Def
61instance NFData CaseInfo
62instance NFData CaseDefs
63instance NFData CaseType
64instance (NFData t) => NFData (SC' t)
65instance (NFData t) => NFData (CaseAlt' t)