Copyright | (c) Sergey Vinokurov 2018 |
---|---|
License | BSD3-style (see LICENSE) |
Maintainer | serg.foo@gmail.com |
Safe Haskell | None |
Language | Haskell2010 |
Synopsis
- data Nat
- type family EmacsArgs (req :: Nat) (opt :: Nat) (rest :: Bool) (a :: Type) = (r :: Type) | r -> req opt rest a where ...
- class EmacsInvocation req opt rest where
- class GetArities (req :: Nat) (opt :: Nat) (rest :: Bool) where
- data R a b = R !a !b
- data O a b = O !(Maybe a) !b
- newtype Rest a = Rest [a]
- data Stop a = Stop
Documentation
type family EmacsArgs (req :: Nat) (opt :: Nat) (rest :: Bool) (a :: Type) = (r :: Type) | r -> req opt rest a where ... Source #
class EmacsInvocation req opt rest where Source #
supplyEmacsArgs :: MonadBase IO m => Int -> Ptr RawValue -> (RawValue -> m a) -> (EmacsArgs req opt rest a -> m b) -> m b Source #
Instances
EmacsInvocation Z Z False Source # | |
EmacsInvocation Z Z True Source # | |
EmacsInvocation Z n rest => EmacsInvocation Z (S n) rest Source # | |
EmacsInvocation n opt rest => EmacsInvocation (S n) opt rest Source # | |
class GetArities (req :: Nat) (opt :: Nat) (rest :: Bool) where Source #
Instances
NatValue req => GetArities req opt True Source # | |
(NatValue req, NatValue opt) => GetArities req opt False Source # | |