module CabalGild.Type.Pragma where import qualified Control.Monad as Monad import qualified Distribution.Compat.CharParsing as CharParsing import qualified Distribution.FieldGrammar.Newtypes as Newtypes import qualified Distribution.Parsec as Parsec newtype Pragma = Discover FilePath deriving (Pragma -> Pragma -> Bool (Pragma -> Pragma -> Bool) -> (Pragma -> Pragma -> Bool) -> Eq Pragma forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: Pragma -> Pragma -> Bool == :: Pragma -> Pragma -> Bool $c/= :: Pragma -> Pragma -> Bool /= :: Pragma -> Pragma -> Bool Eq, Int -> Pragma -> ShowS [Pragma] -> ShowS Pragma -> FilePath (Int -> Pragma -> ShowS) -> (Pragma -> FilePath) -> ([Pragma] -> ShowS) -> Show Pragma forall a. (Int -> a -> ShowS) -> (a -> FilePath) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> Pragma -> ShowS showsPrec :: Int -> Pragma -> ShowS $cshow :: Pragma -> FilePath show :: Pragma -> FilePath $cshowList :: [Pragma] -> ShowS showList :: [Pragma] -> ShowS Show) instance Parsec.Parsec Pragma where parsec :: forall (m :: * -> *). CabalParsing m => m Pragma parsec = do m () forall (m :: * -> *). CharParsing m => m () CharParsing.spaces m FilePath -> m () forall (f :: * -> *) a. Functor f => f a -> f () Monad.void (m FilePath -> m ()) -> m FilePath -> m () forall a b. (a -> b) -> a -> b $ FilePath -> m FilePath forall (m :: * -> *). CharParsing m => FilePath -> m FilePath CharParsing.string FilePath "cabal-gild:" m () forall (m :: * -> *). CharParsing m => m () CharParsing.spaces m FilePath -> m () forall (f :: * -> *) a. Functor f => f a -> f () Monad.void (m FilePath -> m ()) -> m FilePath -> m () forall a b. (a -> b) -> a -> b $ FilePath -> m FilePath forall (m :: * -> *). CharParsing m => FilePath -> m FilePath CharParsing.string FilePath "discover" m () forall (m :: * -> *). CharParsing m => m () CharParsing.skipSpaces1 FilePath -> Pragma Discover (FilePath -> Pragma) -> (FilePathNT -> FilePath) -> FilePathNT -> Pragma forall b c a. (b -> c) -> (a -> b) -> a -> c . FilePathNT -> FilePath Newtypes.getFilePathNT (FilePathNT -> Pragma) -> m FilePathNT -> m Pragma forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b <$> m FilePathNT forall a (m :: * -> *). (Parsec a, CabalParsing m) => m a forall (m :: * -> *). CabalParsing m => m FilePathNT Parsec.parsec