Safe Haskell | None |
---|---|
Language | GHC2021 |
Effectful.Terminal.Static
Description
Provides a static terminal effect.
Since: 0.1
Synopsis
- data Terminal (a :: Type -> Type) b
- putStr :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => String -> Eff es ()
- putStrLn :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => String -> Eff es ()
- putBinary :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => ByteString -> Eff es ()
- getChar :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => Eff es Char
- getLine :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => Eff es String
- getContents' :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => Eff es String
- getTerminalSize :: forall a (es :: [Effect]). (HasCallStack, Integral a, Terminal :> es) => Eff es (Window a)
- supportsPretty :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => Eff es Bool
- runTerminal :: forall (es :: [Effect]) a. (HasCallStack, IOE :> es) => Eff (Terminal ': es) a -> Eff es a
- print :: forall a (es :: [Effect]). (Show a, HasCallStack, Terminal :> es) => a -> Eff es ()
- putText :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => Text -> Eff es ()
- putTextLn :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => Text -> Eff es ()
- getTextLine :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => Eff es Text
- getTextContents' :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => Eff es Text
- getTerminalWidth :: forall a (es :: [Effect]). (HasCallStack, Integral a, Terminal :> es) => Eff es a
- getTerminalHeight :: forall a (es :: [Effect]). (HasCallStack, Integral a, Terminal :> es) => Eff es a
- data Window a = Window {}
- data Text
Effect
data Terminal (a :: Type -> Type) b Source #
Static terminal effect.
Since: 0.1
Instances
type DispatchOf Terminal Source # | |
Defined in Effectful.Terminal.Static | |
data StaticRep Terminal Source # | |
Defined in Effectful.Terminal.Static |
putStr :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => String -> Eff es () Source #
Lifted putStr
.
Since: 0.1
putStrLn :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => String -> Eff es () Source #
Lifted putStrLn
.
Since: 0.1
putBinary :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => ByteString -> Eff es () Source #
Lifted putStr
.
Since: 0.1
getChar :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => Eff es Char Source #
Lifted getChar
.
Since: 0.1
getLine :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => Eff es String Source #
Lifted getLine
.
Since: 0.1
getContents' :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => Eff es String Source #
Lifted getContents'
.
Since: 0.1
getTerminalSize :: forall a (es :: [Effect]). (HasCallStack, Integral a, Terminal :> es) => Eff es (Window a) Source #
Retrieves the terminal size.
Since: 0.1
supportsPretty :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => Eff es Bool Source #
Determines if we support ANSI styling.
Since: 0.1
Handlers
runTerminal :: forall (es :: [Effect]) a. (HasCallStack, IOE :> es) => Eff (Terminal ': es) a -> Eff es a Source #
Functions
print :: forall a (es :: [Effect]). (Show a, HasCallStack, Terminal :> es) => a -> Eff es () Source #
Since: 0.1
Text
getTextLine :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => Eff es Text Source #
Since: 0.1
getTextContents' :: forall (es :: [Effect]). (HasCallStack, Terminal :> es) => Eff es Text Source #
Since: 0.1
Window
getTerminalWidth :: forall a (es :: [Effect]). (HasCallStack, Integral a, Terminal :> es) => Eff es a Source #
Retrieves the terminal width.
Since: 0.1
getTerminalHeight :: forall a (es :: [Effect]). (HasCallStack, Integral a, Terminal :> es) => Eff es a Source #
Retrieves the terminal height.
Since: 0.1
Re-exports
Terminal window width and height
Instances
Functor Window | |||||
Foldable Window | |||||
Defined in System.Console.Terminal.Common Methods fold :: Monoid m => Window m -> m # foldMap :: Monoid m => (a -> m) -> Window a -> m # foldMap' :: Monoid m => (a -> m) -> Window a -> m # foldr :: (a -> b -> b) -> b -> Window a -> b # foldr' :: (a -> b -> b) -> b -> Window a -> b # foldl :: (b -> a -> b) -> b -> Window a -> b # foldl' :: (b -> a -> b) -> b -> Window a -> b # foldr1 :: (a -> a -> a) -> Window a -> a # foldl1 :: (a -> a -> a) -> Window a -> a # elem :: Eq a => a -> Window a -> Bool # maximum :: Ord a => Window a -> a # minimum :: Ord a => Window a -> a # | |||||
Traversable Window | |||||
Generic1 Window | |||||
Defined in System.Console.Terminal.Common Associated Types
| |||||
Data a => Data (Window a) | |||||
Defined in System.Console.Terminal.Common Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Window a -> c (Window a) # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Window a) # toConstr :: Window a -> Constr # dataTypeOf :: Window a -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Window a)) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Window a)) # gmapT :: (forall b. Data b => b -> b) -> Window a -> Window a # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Window a -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Window a -> r # gmapQ :: (forall d. Data d => d -> u) -> Window a -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Window a -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Window a -> m (Window a) # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Window a -> m (Window a) # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Window a -> m (Window a) # | |||||
Generic (Window a) | |||||
Defined in System.Console.Terminal.Common Associated Types
| |||||
Read a => Read (Window a) | |||||
Show a => Show (Window a) | |||||
Eq a => Eq (Window a) | |||||
type Rep1 Window | |||||
Defined in System.Console.Terminal.Common type Rep1 Window = D1 ('MetaData "Window" "System.Console.Terminal.Common" "terminal-size-0.3.4-EKN80GNpQGnBy3a2XJUeTh" 'False) (C1 ('MetaCons "Window" 'PrefixI 'True) (S1 ('MetaSel ('Just "height") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Just "width") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1)) | |||||
type Rep (Window a) | |||||
Defined in System.Console.Terminal.Common type Rep (Window a) = D1 ('MetaData "Window" "System.Console.Terminal.Common" "terminal-size-0.3.4-EKN80GNpQGnBy3a2XJUeTh" 'False) (C1 ('MetaCons "Window" 'PrefixI 'True) (S1 ('MetaSel ('Just "height") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Just "width") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a))) |