base Data.List Data.Foldable, protolude Protolude Protolude.Partial, relude Relude.Foldable.Reexport

Left-associative fold of a structure but with strict application of
the operator.
This ensures that each step of the fold is forced to Weak Head Normal
Form before being applied, avoiding the collection of thunks that
would otherwise occur. This is often what you want to strictly reduce
a finite structure to a single strict result (e.g. sum).
For a general Foldable structure this should be semantically
identical to,

foldl' f z = foldl' f z . toList

A strict version of foldl.

foldl' is like foldl, but strict in the accumulator.

unordered-containers Data.HashMap.Internal Data.HashMap.Internal.Strict Data.HashMap.Lazy Data.HashMap.Strict, rio RIO.HashMap

Reduce this map by applying a binary operator to all
elements, using the given starting value (typically the left-identity
of the operator). Each application of the operator is evaluated before
using the result in the next application. This function is strict in
the starting value.

Reduce this set by applying a binary operator to all
elements, using the given starting value (typically the left-identity
of the operator). Each application of the operator is evaluated before
before using the result in the next application. This function is
strict in the starting value.

Strict left fold of the metadatas

Strict left fold over all key-value pairs in the headers map.
Example:

ghci> :set -XOverloadedStrings ghci> import Data.Monoid ghci> let hdrs = H.fromList [("Accept", "text/plain"), ("Accept", "text/html")] ghci> let f (cntr, acc) _ val = (cntr+1, val <> ";" <> acc) ghci> H.foldl' f (0, "") hdrs (2,"text/html;text/plain;")

Left-associative fold of a structure but with strict application of
the operator.
This ensures that each step of the fold is forced to weak head normal
form before being applied, avoiding the collection of thunks that
would otherwise occur. This is often what you want to strictly reduce
a finite list to a single, monolithic result (e.g. length).
For a general Foldable structure this should be semantically
identical to,

foldl' f z = foldl' f z . toList

Synonym for ofoldl'

Strict version of foldl.

Strict version of foldl.

Left associative/strict push fold. `foldl' reduce initial
stream` invokes `reduce` with the accumulator and the next
input in the input stream, using `initial` as the initial value
of the current value of the accumulator. When the input is exhausted
the current value of the accumulator is returned. Make sure to use a
strict data structure for accumulator to not build unnecessary lazy
expressions unless that's what you want. See the previous section for
more details.