{-# LANGUAGE TemplateHaskell #-} module StatusNotifier.Watcher.Client where import DBus.Generation import Language.Haskell.TH import StatusNotifier.Watcher.Constants import StatusNotifier.Watcher.Service generateClient watcherClientGenerationParams watcherInterface printWatcherClient :: IO () printWatcherClient = Q [Dec] -> IO [Dec] forall (m :: * -> *) a. Quasi m => Q a -> m a runQ (GenerationParams -> Interface -> Q [Dec] generateClient GenerationParams watcherClientGenerationParams Interface watcherInterface) IO [Dec] -> ([Dec] -> IO ()) -> IO () forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b >>= String -> IO () putStrLn (String -> IO ()) -> ([Dec] -> String) -> [Dec] -> IO () forall b c a. (b -> c) -> (a -> b) -> a -> c . [Dec] -> String forall a. Ppr a => a -> String pprint