proto3-wire-1.4.6: A low-level implementation of the Protocol Buffers (version 3) wire format
Safe HaskellNone
LanguageHaskell2010

Proto3.Wire.FoldR

Description

Presents right-associative folds as Foldable sequences.

Synopsis

Documentation

newtype FoldR (a :: TYPE r) Source #

Presents a right-associative fold as a Foldable sequence.

Similar to the FRList example in the documentation for Data.Foldable, but for generality the element type may be unlifted. For compatibility with the Foldable type class and to avoid limitations on runtime representation polymorphism, the fold supports only lifted results.

Constructors

FoldR 

Fields

Instances

Instances details
Foldable (FoldR :: Type -> Type) Source # 
Instance details

Defined in Proto3.Wire.FoldR

Methods

fold :: Monoid m => FoldR m -> m #

foldMap :: Monoid m => (a -> m) -> FoldR a -> m #

foldMap' :: Monoid m => (a -> m) -> FoldR a -> m #

foldr :: (a -> b -> b) -> b -> FoldR a -> b #

foldr' :: (a -> b -> b) -> b -> FoldR a -> b #

foldl :: (b -> a -> b) -> b -> FoldR a -> b #

foldl' :: (b -> a -> b) -> b -> FoldR a -> b #

foldr1 :: (a -> a -> a) -> FoldR a -> a #

foldl1 :: (a -> a -> a) -> FoldR a -> a #

toList :: FoldR a -> [a] #

null :: FoldR a -> Bool #

length :: FoldR a -> Int #

elem :: Eq a => a -> FoldR a -> Bool #

maximum :: Ord a => FoldR a -> a #

minimum :: Ord a => FoldR a -> a #

sum :: Num a => FoldR a -> a #

product :: Num a => FoldR a -> a #

Functor (FoldR :: Type -> Type) Source # 
Instance details

Defined in Proto3.Wire.FoldR

Methods

fmap :: (a -> b) -> FoldR a -> FoldR b #

(<$) :: a -> FoldR b -> FoldR a #

IsList (FoldR a) Source # 
Instance details

Defined in Proto3.Wire.FoldR

Associated Types

type Item (FoldR a) 
Instance details

Defined in Proto3.Wire.FoldR

type Item (FoldR a) = a

Methods

fromList :: [Item (FoldR a)] -> FoldR a #

fromListN :: Int -> [Item (FoldR a)] -> FoldR a #

toList :: FoldR a -> [Item (FoldR a)] #

Read a => Read (FoldR a) Source # 
Instance details

Defined in Proto3.Wire.FoldR

Show a => Show (FoldR a) Source # 
Instance details

Defined in Proto3.Wire.FoldR

Methods

showsPrec :: Int -> FoldR a -> ShowS #

show :: FoldR a -> String #

showList :: [FoldR a] -> ShowS #

Eq a => Eq (FoldR a) Source # 
Instance details

Defined in Proto3.Wire.FoldR

Methods

(==) :: FoldR a -> FoldR a -> Bool #

(/=) :: FoldR a -> FoldR a -> Bool #

Ord a => Ord (FoldR a) Source # 
Instance details

Defined in Proto3.Wire.FoldR

Methods

compare :: FoldR a -> FoldR a -> Ordering #

(<) :: FoldR a -> FoldR a -> Bool #

(<=) :: FoldR a -> FoldR a -> Bool #

(>) :: FoldR a -> FoldR a -> Bool #

(>=) :: FoldR a -> FoldR a -> Bool #

max :: FoldR a -> FoldR a -> FoldR a #

min :: FoldR a -> FoldR a -> FoldR a #

type Item (FoldR a) Source # 
Instance details

Defined in Proto3.Wire.FoldR

type Item (FoldR a) = a

fromFoldR :: Foldable t => t a -> FoldR a Source #

Creates a FoldR from the foldr of the given Foldable sequence.