{-# OPTIONS_GHC -fno-warn-orphans #-}

module Data.Validity.Sequence where

import Data.Validity

import Data.Foldable (toList)
import Data.Sequence (Seq)

-- | A 'Seq'uence of things is valid if all the elements are valid.
instance Validity v => Validity (Seq v) where
    validate :: Seq v -> Validation
validate Seq v
s = [v] -> String -> Validation
forall a. Validity a => a -> String -> Validation
annotate (Seq v -> [v]
forall a. Seq a -> [a]
forall (t :: * -> *) a. Foldable t => t a -> [a]
toList Seq v
s) String
"Seq elements"