unused-0.6.0.0: src/Unused/CLI/Search.hs
module Unused.CLI.Search
( SearchRunner(..)
, renderHeader
, executeSearch
) where
import qualified Unused.CLI.ProgressIndicator as I
import qualified Unused.CLI.Util as U
import qualified Unused.CLI.Views as V
import qualified Unused.TermSearch as TS
data SearchRunner = SearchWithProgress | SearchWithoutProgress
renderHeader :: [a] -> IO ()
renderHeader terms = do
U.resetScreen
V.analysisHeader terms
executeSearch :: SearchRunner -> [TS.SearchTerm] -> IO TS.SearchResults
executeSearch runner terms = do
renderHeader terms
runSearch runner terms <* U.resetScreen
runSearch :: SearchRunner -> [TS.SearchTerm] -> IO TS.SearchResults
runSearch SearchWithProgress = I.progressWithIndicator TS.search I.createProgressBar
runSearch SearchWithoutProgress = I.progressWithIndicator TS.search I.createSpinner