ac-library-hs-1.1.0.0: src/AtCoder/Extra/Monoid.hs
{-# LANGUAGE TypeFamilies #-}
-- | Extra module of pre-defined `SegAct` instances and helpful monoids.
--
-- @since 1.0.0.0
module AtCoder.Extra.Monoid
( -- * Re-exports
-- | It's mainly a list. It is recommended to use specific submodules.
-- ** SegAct
SegAct (..),
-- ** Affine1
Affine1 (..),
Affine1Repr,
-- ** Mat2x2
Mat2x2 (..),
Mat2x2Repr,
V2 (..),
V2Repr,
-- ** Range add
RangeAdd (..),
-- ** Range set
RangeSet (..),
RangeSetRepr,
-- ** Rolling hash
RollingHash,
)
where
import AtCoder.Extra.Monoid.Affine1 (Affine1 (..), Affine1Repr)
import AtCoder.Extra.Monoid.Mat2x2 (Mat2x2 (..), Mat2x2Repr)
import AtCoder.Extra.Monoid.RangeAdd (RangeAdd (..))
import AtCoder.Extra.Monoid.RangeSet (RangeSet (..), RangeSetRepr)
import AtCoder.Extra.Monoid.RollingHash (RollingHash)
import AtCoder.Extra.Monoid.V2 (V2 (..), V2Repr)
import AtCoder.LazySegTree (SegAct (..))