module Language.PureScript.Constants.Data.Foldable where

import Data.String (IsString)
import Language.PureScript.Names

foldl :: forall a. (IsString a) => a
foldl :: forall a. IsString a => a
foldl = a
"foldl"

foldr :: forall a. (IsString a) => a
foldr :: forall a. IsString a => a
foldr = a
"foldr"

foldMap :: forall a. (IsString a) => a
foldMap :: forall a. IsString a => a
foldMap = a
"foldMap"

pattern DataFoldable :: ModuleName
pattern $bDataFoldable :: ModuleName
$mDataFoldable :: forall {r}. ModuleName -> ((# #) -> r) -> ((# #) -> r) -> r
DataFoldable = ModuleName "Data.Foldable"

pattern Foldable :: Qualified (ProperName 'ClassName)
pattern $bFoldable :: Qualified (ProperName 'ClassName)
$mFoldable :: forall {r}.
Qualified (ProperName 'ClassName)
-> ((# #) -> r) -> ((# #) -> r) -> r
Foldable = Qualified (ByModuleName DataFoldable) (ProperName "Foldable")

identFoldl :: Qualified Ident
identFoldl :: Qualified Ident
identFoldl = forall a. QualifiedBy -> a -> Qualified a
Qualified (ModuleName -> QualifiedBy
ByModuleName ModuleName
DataFoldable) (Text -> Ident
Ident forall a. IsString a => a
foldl)

identFoldr :: Qualified Ident
identFoldr :: Qualified Ident
identFoldr = forall a. QualifiedBy -> a -> Qualified a
Qualified (ModuleName -> QualifiedBy
ByModuleName ModuleName
DataFoldable) (Text -> Ident
Ident forall a. IsString a => a
foldr)

identFoldMap :: Qualified Ident
identFoldMap :: Qualified Ident
identFoldMap = forall a. QualifiedBy -> a -> Qualified a
Qualified (ModuleName -> QualifiedBy
ByModuleName ModuleName
DataFoldable) (Text -> Ident
Ident forall a. IsString a => a
foldMap)