\begin{code}
-- | If this Id has a worker then we store a reference to it. Worker
--- functions are generated by the worker/wrapper pass, using information
+-- functions are generated by the worker\/wrapper pass, using information
-- information from strictness analysis.
data WorkerInfo = NoWorker -- ^ No known worker function
| HasWorker Id Arity -- ^ The 'Arity' is the arity of the /wrapper/ at the moment of the
- -- worker/wrapper split, which may be different from the current 'Id' 'Aritiy'
+ -- worker\/wrapper split, which may be different from the current 'Id' 'Aritiy'
seqWorker :: WorkerInfo -> ()
seqWorker (HasWorker id a) = id `seq` a `seq` ()
| ReturnsCPR -- ^ Yes, this function returns a constructed product
-- Implicitly, this means "after the function has been applied
- -- to all its arguments", so the worker/wrapper builder in
+ -- to all its arguments", so the worker\/wrapper builder in
-- WwLib.mkWWcpr checks that that it is indeed saturated before
-- making use of the CPR info
\end{code}
\begin{code}
--- | Derive a name for the representation type constructor of a @data@/@newtype@
--- instance.
+-- | Derive a name for the representation type constructor of a
+-- @data@\/@newtype@ instance.
mkInstTyTcOcc :: Int -- ^ DFun Index
-> OccName -- ^ Family name, e.g. @Map@
-> OccName -- ^ Nice unique version, e.g. @:R23Map@
--
-- @
-- data Foo = Red | Green | Blue
- --
-- ... case x of
-- Red -> True
-- other -> f (case x of
rhssOfAlts alts = [e | (_,_,e) <- alts]
-- | Collapse all the bindings in the supplied groups into a single
--- list of lhs/rhs pairs suitable for binding in a 'Rec' binding group
+-- list of lhs\/rhs pairs suitable for binding in a 'Rec' binding group
flattenBinds :: [Bind b] -> [(b, Expr b)]
flattenBinds (NonRec b r : binds) = (b,r) : flattenBinds binds
flattenBinds (Rec prs1 : binds) = prs1 ++ flattenBinds binds
-- 2) The available pieces of type or class.
-- NB: If the type or class is itself
-- to be in scope, it must be in this list.
- -- Thus, typically: @AvailTC Eq [Eq, ==, /=]@
+ -- Thus, typically: @AvailTC Eq [Eq, ==, \/=]@
deriving( Eq )
-- Equality used when deciding if the interface has changed
-- program depends on (the compiler knows this list by the
-- time it gets to the link step). Also, we link in all packages
-- which were mentioned with preload @-package@ flags on the command-line,
--- or are a transitive dependency of same, or are \"base\"/\"rts\".
+-- or are a transitive dependency of same, or are \"base\"\/\"rts\".
-- The reason for this is that we might need packages which don't
-- contain any Haskell modules, and therefore won't be discovered
-- by the normal mechanism of dependency tracking.
algTcRec :: RecFlag, -- ^ Tells us whether the data type is part of a mutually-recursive group or not
- hasGenerics :: Bool, -- ^ Whether generic (in the -XGenerics sense) to/from functions are
+ hasGenerics :: Bool, -- ^ Whether generic (in the -XGenerics sense) to\/from functions are
-- available in the exports of the data type's source module.
algTcParent :: TyConParent -- ^ Gives the class or family declaration 'TyCon' for derived 'TyCon's
\end{code}
\begin{code}
--- | Does this 'TyCon' have any generic to/from functions available? See also 'hasGenerics'
+-- | Does this 'TyCon' have any generic to\/from functions available? See also 'hasGenerics'
tyConHasGenerics :: TyCon -> Bool
tyConHasGenerics (AlgTyCon {hasGenerics = hg}) = hg
tyConHasGenerics (TupleTyCon {hasGenerics = hg}) = hg
-- ?? (\#)
-- \/ \
-- \* \#
---
+-- .
-- Where: \* [LiftedTypeKind] means boxed type
-- \# [UnliftedTypeKind] means unboxed type
-- (\#) [UbxTupleKind] means unboxed tuple