{-# OPTIONS_GHC -Wno-unrecognised-pragmas #-}
{-# HLINT ignore "Use newtype instead of data" #-}
module DataFrame.Display where
import qualified Data.Text.IO as T
import DataFrame.Display.Terminal.PrettyPrint (RenderFormat (..))
import qualified DataFrame.Internal.DataFrame as D
data DisplayOptions = DisplayOptions
{
DisplayOptions -> Maybe TruncateConfig
displayTruncate :: Maybe D.TruncateConfig
}
defaultDisplayOptions :: DisplayOptions
defaultDisplayOptions :: DisplayOptions
defaultDisplayOptions =
DisplayOptions
{ displayTruncate :: Maybe TruncateConfig
displayTruncate = TruncateConfig -> Maybe TruncateConfig
forall a. a -> Maybe a
Just TruncateConfig
D.defaultTruncateConfig{D.maxRows = 10}
}
display :: DisplayOptions -> D.DataFrame -> IO ()
display :: DisplayOptions -> DataFrame -> IO ()
display DisplayOptions
opts = Text -> IO ()
T.putStrLn (Text -> IO ()) -> (DataFrame -> Text) -> DataFrame -> IO ()
forall b c a. (b -> c) -> (a -> b) -> a -> c
. RenderFormat -> Maybe TruncateConfig -> DataFrame -> Text
D.asTextWith RenderFormat
Plain (DisplayOptions -> Maybe TruncateConfig
displayTruncate DisplayOptions
opts)