on develop help sign in
Finish implementation of instance DomSpace StaticDomSpace
43eb501Ryan Trinkle
src/Reflex/Dom/Builder/Static.hs+10
@@ -103,8 +103,18 @@ type SupportsStaticDomBuilder t m = (Reflex t, MonadIO m, MonadHold t m, MonadFi
103
103
104data StaticDomSpace
104data StaticDomSpace
105
105
106+-- | Static documents never produce any events, so this type has no inhabitants
107+data StaticDomEvent (a :: k)
108+
109+-- | Static documents don't process events, so all handlers are equivalent
110+data StaticDomHandler (a :: k) (b :: k) = StaticDomHandler
111+
106instance DomSpace StaticDomSpace where
112instance DomSpace StaticDomSpace where
107 type RawElement StaticDomSpace = ByteString
113 type RawElement StaticDomSpace = ByteString
114+ type RawEvent StaticDomSpace = StaticDomEvent
115+ type DomHandler StaticDomSpace = StaticDomHandler
116+ type DomHandler1 StaticDomSpace = StaticDomHandler
117+ defaultEventHandler _ = StaticDomHandler
108
118
109instance SupportsStaticDomBuilder t m => DomBuilder t (StaticDomBuilderT t m) where
119instance SupportsStaticDomBuilder t m => DomBuilder t (StaticDomBuilderT t m) where
110 type DomBuilderSpace (StaticDomBuilderT t m) = StaticDomSpace
120 type DomBuilderSpace (StaticDomBuilderT t m) = StaticDomSpace