module Rerefined.Predicate.Succeed where

import Rerefined.Predicate.Common

-- | The unit predicate. Always succeeds.
data Succeed deriving Proxy# Succeed -> Int -> ShowS
(Proxy# Succeed -> Int -> ShowS) -> Predicate Succeed
forall {k} (p :: k). (Proxy# p -> Int -> ShowS) -> Predicate p
$cpredicateName :: Proxy# Succeed -> Int -> ShowS
predicateName :: Proxy# Succeed -> Int -> ShowS
Predicate via Typeably Succeed

instance Refine Succeed a where
    validate :: Proxy# Succeed -> a -> Maybe (RefineFailure String)
validate Proxy# Succeed
_ a
_ = Maybe (RefineFailure String)
forall a. Maybe a
Nothing