{-# LANGUAGE KindSignatures #-}
{-# LANGUAGE RankNTypes #-}
module Pinboard.ApiTypesLens where
import Pinboard.ApiTypes
import Data.Text (Text)
import Data.Time (UTCTime)
import Data.Time.Calendar (Day)
import Control.Applicative
import Data.Profunctor
import Data.Either
import Prelude hiding (words, unwords)
type Lens_' s a = Lens_ s s a a
type Lens_ s t a b = forall (f :: * -> *). Functor f =>
(a -> f b) -> s -> f t
type Prism_' s a = Prism_ s s a a
type Prism_ s t a b = forall (p :: * -> * -> *) (f :: * -> *). (Choice p
,Applicative f) =>
p a (f b) -> p s (f t)
postsDateL :: Lens_' Posts UTCTime
postsDateL f_acx6 (Posts x1_acx7 x2_acx8 x3_acx9) =
fmap (\y1_acxa -> Posts y1_acxa x2_acx8 x3_acx9) (f_acx6 x1_acx7)
{-# INLINE postsDateL #-}
postsPostsL :: Lens_' Posts [Post]
postsPostsL f_acxb (Posts x1_acxc x2_acxd x3_acxe) =
fmap (\y1_acxf -> Posts x1_acxc x2_acxd y1_acxf) (f_acxb x3_acxe)
{-# INLINE postsPostsL #-}
postsUserL :: Lens_' Posts Text
postsUserL f_acxg (Posts x1_acxh x2_acxi x3_acxj) =
fmap (\y1_acxk -> Posts x1_acxh y1_acxk x3_acxj) (f_acxg x2_acxi)
{-# INLINE postsUserL #-}
postDescriptionL :: Lens_' Post Text
postDescriptionL f_aczI (Post x1_aczJ x2_aczK x3_aczL x4_aczM x5_aczN x6_aczO x7_aczP x8_aczQ x9_aczR) =
fmap
(\y1_aczS ->
Post x1_aczJ y1_aczS x3_aczL x4_aczM x5_aczN x6_aczO x7_aczP x8_aczQ x9_aczR)
(f_aczI x2_aczK)
{-# INLINE postDescriptionL #-}
postExtendedL :: Lens_' Post Text
postExtendedL f_aczT (Post x1_aczU x2_aczV x3_aczW x4_aczX x5_aczY x6_aczZ x7_acA0 x8_acA1 x9_acA2) =
fmap
(\y1_acA3 ->
Post x1_aczU x2_aczV y1_acA3 x4_aczX x5_aczY x6_aczZ x7_acA0 x8_acA1 x9_acA2)
(f_aczT x3_aczW)
{-# INLINE postExtendedL #-}
postHashL :: Lens_' Post Text
postHashL f_acA4 (Post x1_acA5 x2_acA6 x3_acA7 x4_acA8 x5_acA9 x6_acAa x7_acAb x8_acAc x9_acAd) =
fmap
(\y1_acAe ->
Post x1_acA5 x2_acA6 x3_acA7 x4_acA8 y1_acAe x6_acAa x7_acAb x8_acAc x9_acAd)
(f_acA4 x5_acA9)
{-# INLINE postHashL #-}
postHrefL :: Lens_' Post Text
postHrefL f_acAf (Post x1_acAg x2_acAh x3_acAi x4_acAj x5_acAk x6_acAl x7_acAm x8_acAn x9_acAo) =
fmap
(\y1_acAp ->
Post y1_acAp x2_acAh x3_acAi x4_acAj x5_acAk x6_acAl x7_acAm x8_acAn x9_acAo)
(f_acAf x1_acAg)
{-# INLINE postHrefL #-}
postMetaL :: Lens_' Post Text
postMetaL f_acAq (Post x1_acAr x2_acAs x3_acAt x4_acAu x5_acAv x6_acAw x7_acAx x8_acAy x9_acAz) =
fmap
(\y1_acAA ->
Post x1_acAr x2_acAs x3_acAt y1_acAA x5_acAv x6_acAw x7_acAx x8_acAy x9_acAz)
(f_acAq x4_acAu)
{-# INLINE postMetaL #-}
postSharedL :: Lens_' Post Bool
postSharedL f_acAB (Post x1_acAC x2_acAD x3_acAE x4_acAF x5_acAG x6_acAH x7_acAI x8_acAJ x9_acAK) =
fmap
(\y1_acAL ->
Post x1_acAC x2_acAD x3_acAE x4_acAF x5_acAG x6_acAH y1_acAL x8_acAJ x9_acAK)
(f_acAB x7_acAI)
{-# INLINE postSharedL #-}
postTagsL :: Lens_' Post [Tag]
postTagsL f_acAM (Post x1_acAN x2_acAO x3_acAP x4_acAQ x5_acAR x6_acAS x7_acAT x8_acAU x9_acAV) =
fmap
(\y1_acAW ->
Post x1_acAN x2_acAO x3_acAP x4_acAQ x5_acAR x6_acAS x7_acAT x8_acAU y1_acAW)
(f_acAM x9_acAV)
{-# INLINE postTagsL #-}
postTimeL :: Lens_' Post UTCTime
postTimeL f_acAX (Post x1_acAY x2_acAZ x3_acB0 x4_acB1 x5_acB2 x6_acB3 x7_acB4 x8_acB5 x9_acB6) =
fmap
(\y1_acB7 ->
Post x1_acAY x2_acAZ x3_acB0 x4_acB1 x5_acB2 y1_acB7 x7_acB4 x8_acB5 x9_acB6)
(f_acAX x6_acB3)
{-# INLINE postTimeL #-}
postToReadL :: Lens_' Post Bool
postToReadL f_acB8 (Post x1_acB9 x2_acBa x3_acBb x4_acBc x5_acBd x6_acBe x7_acBf x8_acBg x9_acBh) =
fmap
(\y1_acBi ->
Post x1_acB9 x2_acBa x3_acBb x4_acBc x5_acBd x6_acBe x7_acBf y1_acBi x9_acBh)
(f_acB8 x8_acBg)
{-# INLINE postToReadL #-}
postDatesCountL :: Lens_' PostDates [(Day, Int)]
postDatesCountL f_a1M4D (PostDates x1_a1M4E x2_a1M4F x3_a1M4G) =
fmap (\y1_a1M4H -> PostDates x1_a1M4E x2_a1M4F y1_a1M4H) (f_a1M4D x3_a1M4G)
{-# INLINE postDatesCountL #-}
postDatesTagL :: Lens_' PostDates Text
postDatesTagL f_a1M4I (PostDates x1_a1M4J x2_a1M4K x3_a1M4L) =
fmap (\y1_a1M4M -> PostDates x1_a1M4J y1_a1M4M x3_a1M4L) (f_a1M4I x2_a1M4K)
{-# INLINE postDatesTagL #-}
postDatesUserL :: Lens_' PostDates Text
postDatesUserL f_a1M4N (PostDates x1_a1M4O x2_a1M4P x3_a1M4Q) =
fmap (\y1_a1M4R -> PostDates y1_a1M4R x2_a1M4P x3_a1M4Q) (f_a1M4N x1_a1M4O)
{-# INLINE postDatesUserL #-}
noteListCountL :: Lens_' NoteList Int
noteListCountL f_acwZ (NoteList x1_acx0 x2_acx1) =
fmap (\y1_acx2 -> NoteList y1_acx2 x2_acx1) (f_acwZ x1_acx0)
{-# INLINE noteListCountL #-}
noteListItemsL :: Lens_' NoteList [NoteListItem]
noteListItemsL f_acx3 (NoteList x1_acx4 x2_acx5) =
fmap (\y1_acx6 -> NoteList x1_acx4 y1_acx6) (f_acx3 x2_acx5)
{-# INLINE noteListItemsL #-}
noteListItemCreatedAtL :: Lens_' NoteListItem UTCTime
noteListItemCreatedAtL f_acx0 (NoteListItem x1_acx1 x2_acx2 x3_acx3 x4_acx4 x5_acx5 x6_acx6) =
fmap
(\y1_acx7 -> NoteListItem x1_acx1 x2_acx2 x3_acx3 x4_acx4 y1_acx7 x6_acx6)
(f_acx0 x5_acx5)
{-# INLINE noteListItemCreatedAtL #-}
noteListItemHashL :: Lens_' NoteListItem Text
noteListItemHashL f_acx8 (NoteListItem x1_acx9 x2_acxa x3_acxb x4_acxc x5_acxd x6_acxe) =
fmap
(\y1_acxf -> NoteListItem x1_acx9 y1_acxf x3_acxb x4_acxc x5_acxd x6_acxe)
(f_acx8 x2_acxa)
{-# INLINE noteListItemHashL #-}
noteListItemIdL :: Lens_' NoteListItem Text
noteListItemIdL f_acxg (NoteListItem x1_acxh x2_acxi x3_acxj x4_acxk x5_acxl x6_acxm) =
fmap
(\y1_acxn -> NoteListItem y1_acxn x2_acxi x3_acxj x4_acxk x5_acxl x6_acxm)
(f_acxg x1_acxh)
{-# INLINE noteListItemIdL #-}
noteListItemLengthL :: Lens_' NoteListItem Int
noteListItemLengthL f_acxo (NoteListItem x1_acxp x2_acxq x3_acxr x4_acxs x5_acxt x6_acxu) =
fmap
(\y1_acxv -> NoteListItem x1_acxp x2_acxq x3_acxr y1_acxv x5_acxt x6_acxu)
(f_acxo x4_acxs)
{-# INLINE noteListItemLengthL #-}
noteListItemTitleL :: Lens_' NoteListItem Text
noteListItemTitleL f_acxw (NoteListItem x1_acxx x2_acxy x3_acxz x4_acxA x5_acxB x6_acxC) =
fmap
(\y1_acxD -> NoteListItem x1_acxx x2_acxy y1_acxD x4_acxA x5_acxB x6_acxC)
(f_acxw x3_acxz)
{-# INLINE noteListItemTitleL #-}
noteListItemUpdatedAtL :: Lens_' NoteListItem UTCTime
noteListItemUpdatedAtL f_acxE (NoteListItem x1_acxF x2_acxG x3_acxH x4_acxI x5_acxJ x6_acxK) =
fmap
(\y1_acxL -> NoteListItem x1_acxF x2_acxG x3_acxH x4_acxI x5_acxJ y1_acxL)
(f_acxE x6_acxK)
{-# INLINE noteListItemUpdatedAtL #-}
noteCreatedAtL :: Lens_' Note UTCTime
noteCreatedAtL f_acx6 (Note x1_acx7 x2_acx8 x3_acx9 x4_acxa x5_acxb x6_acxc x7_acxd) =
fmap
(\y1_acxe -> Note x1_acx7 x2_acx8 x3_acx9 x4_acxa x5_acxb y1_acxe x7_acxd)
(f_acx6 x6_acxc)
{-# INLINE noteCreatedAtL #-}
noteHashL :: Lens_' Note Text
noteHashL f_acxf (Note x1_acxg x2_acxh x3_acxi x4_acxj x5_acxk x6_acxl x7_acxm) =
fmap
(\y1_acxn -> Note x1_acxg y1_acxn x3_acxi x4_acxj x5_acxk x6_acxl x7_acxm)
(f_acxf x2_acxh)
{-# INLINE noteHashL #-}
noteIdL :: Lens_' Note Text
noteIdL f_acxo (Note x1_acxp x2_acxq x3_acxr x4_acxs x5_acxt x6_acxu x7_acxv) =
fmap
(\y1_acxw -> Note y1_acxw x2_acxq x3_acxr x4_acxs x5_acxt x6_acxu x7_acxv)
(f_acxo x1_acxp)
{-# INLINE noteIdL #-}
noteLengthL :: Lens_' Note Int
noteLengthL f_acxx (Note x1_acxy x2_acxz x3_acxA x4_acxB x5_acxC x6_acxD x7_acxE) =
fmap
(\y1_acxF -> Note x1_acxy x2_acxz x3_acxA x4_acxB y1_acxF x6_acxD x7_acxE)
(f_acxx x5_acxC)
{-# INLINE noteLengthL #-}
noteTextL :: Lens_' Note Text
noteTextL f_acxG (Note x1_acxH x2_acxI x3_acxJ x4_acxK x5_acxL x6_acxM x7_acxN) =
fmap
(\y1_acxO -> Note x1_acxH x2_acxI x3_acxJ y1_acxO x5_acxL x6_acxM x7_acxN)
(f_acxG x4_acxK)
{-# INLINE noteTextL #-}
noteTitleL :: Lens_' Note Text
noteTitleL f_acxP (Note x1_acxQ x2_acxR x3_acxS x4_acxT x5_acxU x6_acxV x7_acxW) =
fmap
(\y1_acxX -> Note x1_acxQ x2_acxR y1_acxX x4_acxT x5_acxU x6_acxV x7_acxW)
(f_acxP x3_acxS)
{-# INLINE noteTitleL #-}
noteUpdatedAtL :: Lens_' Note UTCTime
noteUpdatedAtL f_acxY (Note x1_acxZ x2_acy0 x3_acy1 x4_acy2 x5_acy3 x6_acy4 x7_acy5) =
fmap
(\y1_acy6 -> Note x1_acxZ x2_acy0 x3_acy1 x4_acy2 x5_acy3 x6_acy4 y1_acy6)
(f_acxY x7_acy5)
{-# INLINE noteUpdatedAtL #-}
popularP :: Prism_' Suggested [Text]
popularP =
dimap
(\x_acHs ->
case x_acHs of
(Popular y1_acHt) -> Right y1_acHt
_ -> Left x_acHs)
(either pure (fmap Popular)) .
right'
{-# INLINE popularP #-}
recommendedP :: Prism_' Suggested [Text]
recommendedP =
dimap
(\x_acHv ->
case x_acHv of
(Recommended y1_acHw) -> Right y1_acHw
_ -> Left x_acHv)
(either pure (fmap Recommended)) .
right'
{-# INLINE recommendedP #-}