Copyright | (c) Sebastian Witte |
---|---|
License | Apache-2.0 |
Maintainer | woozletoff@gmail.com |
Stability | experimental |
Portability | GHC |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
- data SomeMessage = forall msg . Message msg => SomeMessage msg
- class Typeable message => Message message where
- fromMessage :: SomeMessage -> Maybe message
Documentation
data SomeMessage Source
Taken from xmonad and based on ideas in /An Extensible Dynamically-Typed Hierarchy of Exceptions/, Simon Marlow, 2006.
User-extensible messages must be put into a value of this type, so that it can be sent to other plugins.
forall msg . Message msg => SomeMessage msg |
class Typeable message => Message message where Source
Nothing
fromMessage :: SomeMessage -> Maybe message Source
Try to convert a given message to a value of the message type we are
interested in. Will evaluate to Nothing
for any other type.