Instances4Data, Semigroup, Monoid, Outputable
Data HsWrapperDefined in ghc-lib-parser-9.14.1.20251220 · GHC.Tc.Types.EvidenceSemigroup HsWrapperDefined in ghc-lib-parser-9.14.1.20251220 · GHC.Tc.Types.EvidenceThe Semigroup instance is a bit fishy, since
WpCompose, as a data constructor, is "syntactic" and not associative. Concretely, ifa,b, andcaren'tWpHole:(a <> b) <> c ?= a <> (b <> c)>
(a `WpCompose` b) `WpCompose` c /= @ a `WpCompose` (b `WpCompose` c)However these two associations are are "semantically equal" in the sense that they produce equal functions when passed to
GHC.HsToCore.Binds.dsHsWrapper.Monoid HsWrapperDefined in ghc-lib-parser-9.14.1.20251220 · GHC.Tc.Types.EvidenceOutputable HsWrapperDefined in ghc-lib-parser-9.14.1.20251220 · GHC.Tc.Types.Evidence