{-# LANGUAGE TemplateHaskell #-}
module Taskell.IO.HTTP.GitHub.Project
( Project
, columnsURL
, name
) where
import ClassyPrelude
import Control.Lens (Lens', makeLenses)
import Taskell.IO.HTTP.Aeson (deriveFromJSON)
data Project = Project
{ Project -> Text
_name :: Text
, Project -> Text
_columns_url :: Text
} deriving (Project -> Project -> Bool
(Project -> Project -> Bool)
-> (Project -> Project -> Bool) -> Eq Project
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Project -> Project -> Bool
$c/= :: Project -> Project -> Bool
== :: Project -> Project -> Bool
$c== :: Project -> Project -> Bool
Eq, Int -> Project -> ShowS
[Project] -> ShowS
Project -> String
(Int -> Project -> ShowS)
-> (Project -> String) -> ([Project] -> ShowS) -> Show Project
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Project] -> ShowS
$cshowList :: [Project] -> ShowS
show :: Project -> String
$cshow :: Project -> String
showsPrec :: Int -> Project -> ShowS
$cshowsPrec :: Int -> Project -> ShowS
Show)
$(deriveFromJSON ''Project)
$(makeLenses ''Project)
columnsURL :: Lens' Project Text
columnsURL :: (Text -> f Text) -> Project -> f Project
columnsURL = (Text -> f Text) -> Project -> f Project
Lens' Project Text
columns_url