packages feed

casa-reoc-0.1.0.0: src/ReOC/Name/InvalidEmailAddress.hs

{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE TypeOperators #-}
{-# OPTIONS_GHC -Wall #-}

-- | The name @invalidEmailAddress@, which targets @Text@. It names a field or constructor of @InvalidValue@.
module ReOC.Name.InvalidEmailAddress (
  InvalidEmailAddressLike (..),
) where

import Control.Lens (Optic)
import Data.Text (Text)

class InvalidEmailAddressLike p f x x' where
  invalidEmailAddress ::
    Optic p f x x' Text Text

-- | Identity
instance (x' ~ Text) => InvalidEmailAddressLike p f Text x' where
  invalidEmailAddress = id