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

module Data.Validity.Sequence where

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

-- | 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"