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

module Text.Colour.Gen where

import Data.GenValidity
import Data.GenValidity.ByteString ()
import Data.GenValidity.Text ()
import Text.Colour
import Text.Colour.Code

instance GenValid Chunk where
  genValid :: Gen Chunk
genValid = Gen Chunk
forall a. (Generic a, GGenValid (Rep a)) => Gen a
genValidStructurallyWithoutExtraChecking
  shrinkValid :: Chunk -> [Chunk]
shrinkValid = Chunk -> [Chunk]
forall a.
(Generic a, GValidRecursivelyShrink (Rep a),
 GValidSubterms (Rep a) a) =>
a -> [a]
shrinkValidStructurallyWithoutExtraFiltering

instance GenValid CSI where
  genValid :: Gen CSI
genValid = Gen CSI
forall a. (Generic a, GGenValid (Rep a)) => Gen a
genValidStructurallyWithoutExtraChecking
  shrinkValid :: CSI -> [CSI]
shrinkValid = CSI -> [CSI]
forall a.
(Generic a, GValidRecursivelyShrink (Rep a),
 GValidSubterms (Rep a) a) =>
a -> [a]
shrinkValidStructurallyWithoutExtraFiltering

instance GenValid SGR where
  genValid :: Gen SGR
genValid = Gen SGR
forall a. (Generic a, GGenValid (Rep a)) => Gen a
genValidStructurallyWithoutExtraChecking
  shrinkValid :: SGR -> [SGR]
shrinkValid = SGR -> [SGR]
forall a.
(Generic a, GValidRecursivelyShrink (Rep a),
 GValidSubterms (Rep a) a) =>
a -> [a]
shrinkValidStructurallyWithoutExtraFiltering

instance GenValid Underlining where
  genValid :: Gen Underlining
genValid = Gen Underlining
forall a. (Generic a, GGenValid (Rep a)) => Gen a
genValidStructurallyWithoutExtraChecking
  shrinkValid :: Underlining -> [Underlining]
shrinkValid = Underlining -> [Underlining]
forall a.
(Generic a, GValidRecursivelyShrink (Rep a),
 GValidSubterms (Rep a) a) =>
a -> [a]
shrinkValidStructurallyWithoutExtraFiltering

instance GenValid Blinking where
  genValid :: Gen Blinking
genValid = Gen Blinking
forall a. (Generic a, GGenValid (Rep a)) => Gen a
genValidStructurallyWithoutExtraChecking
  shrinkValid :: Blinking -> [Blinking]
shrinkValid = Blinking -> [Blinking]
forall a.
(Generic a, GValidRecursivelyShrink (Rep a),
 GValidSubterms (Rep a) a) =>
a -> [a]
shrinkValidStructurallyWithoutExtraFiltering

instance GenValid ColourIntensity where
  genValid :: Gen ColourIntensity
genValid = Gen ColourIntensity
forall a. (Generic a, GGenValid (Rep a)) => Gen a
genValidStructurallyWithoutExtraChecking
  shrinkValid :: ColourIntensity -> [ColourIntensity]
shrinkValid = ColourIntensity -> [ColourIntensity]
forall a.
(Generic a, GValidRecursivelyShrink (Rep a),
 GValidSubterms (Rep a) a) =>
a -> [a]
shrinkValidStructurallyWithoutExtraFiltering

instance GenValid ConsoleIntensity where
  genValid :: Gen ConsoleIntensity
genValid = Gen ConsoleIntensity
forall a. (Generic a, GGenValid (Rep a)) => Gen a
genValidStructurallyWithoutExtraChecking
  shrinkValid :: ConsoleIntensity -> [ConsoleIntensity]
shrinkValid = ConsoleIntensity -> [ConsoleIntensity]
forall a.
(Generic a, GValidRecursivelyShrink (Rep a),
 GValidSubterms (Rep a) a) =>
a -> [a]
shrinkValidStructurallyWithoutExtraFiltering

instance GenValid ConsoleLayer where
  genValid :: Gen ConsoleLayer
genValid = Gen ConsoleLayer
forall a. (Generic a, GGenValid (Rep a)) => Gen a
genValidStructurallyWithoutExtraChecking
  shrinkValid :: ConsoleLayer -> [ConsoleLayer]
shrinkValid = ConsoleLayer -> [ConsoleLayer]
forall a.
(Generic a, GValidRecursivelyShrink (Rep a),
 GValidSubterms (Rep a) a) =>
a -> [a]
shrinkValidStructurallyWithoutExtraFiltering

instance GenValid TerminalColour where
  genValid :: Gen TerminalColour
genValid = Gen TerminalColour
forall a. (Generic a, GGenValid (Rep a)) => Gen a
genValidStructurallyWithoutExtraChecking
  shrinkValid :: TerminalColour -> [TerminalColour]
shrinkValid = TerminalColour -> [TerminalColour]
forall a.
(Generic a, GValidRecursivelyShrink (Rep a),
 GValidSubterms (Rep a) a) =>
a -> [a]
shrinkValidStructurallyWithoutExtraFiltering

instance GenValid Colour where
  genValid :: Gen Colour
genValid = Gen Colour
forall a. (Generic a, GGenValid (Rep a)) => Gen a
genValidStructurallyWithoutExtraChecking
  shrinkValid :: Colour -> [Colour]
shrinkValid = Colour -> [Colour]
forall a.
(Generic a, GValidRecursivelyShrink (Rep a),
 GValidSubterms (Rep a) a) =>
a -> [a]
shrinkValidStructurallyWithoutExtraFiltering