Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- class CommandNames (cmd :: k -> Type) where
- commandName :: CommandNames cmd => Command cmd resp -> String
Documentation
class CommandNames (cmd :: k -> Type) where Source #
The names of all possible commands
This is used for things like tagging, coverage checking, etc.
Nothing
cmdName :: cmd r -> String Source #
Name of this particular command
cmdNames :: Proxy (cmd r) -> [String] Source #
Name of all possible commands
cmdName :: (Generic1 cmd, CommandNames (Rep1 cmd)) => cmd r -> String Source #
Name of this particular command
cmdNames :: forall r. CommandNames (Rep1 cmd) => Proxy (cmd r) -> [String] Source #
Name of all possible commands
Instances
CommandNames (U1 :: k -> Type) Source # | |
CommandNames f => CommandNames (Rec1 f :: k -> Type) Source # | |
(CommandNames f, CommandNames g) => CommandNames (f :*: g :: k -> Type) Source # | |
(CommandNames f, CommandNames g) => CommandNames (f :+: g :: k -> Type) Source # | |
CommandNames (K1 i c :: k -> Type) Source # | |
CommandNames f => CommandNames (M1 S c f :: k -> Type) Source # | |
CommandNames f => CommandNames (M1 D c f :: k -> Type) Source # | |
Constructor c => CommandNames (M1 C c f :: k -> Type) Source # | |
commandName :: CommandNames cmd => Command cmd resp -> String Source #
Convenience wrapper for Command