insert-ordered-containers-0.2.5.1: Associative containers retaining insertion order for traversals.
Safe Haskell Trustworthy
Language Haskell2010

Data.HashSet.InsOrd

Description

InsOrdHashSet is like HashMap , but it folds in insertion order.

This module interface mimics Data.HashSet , with some additions.

Synopsis

Documentation

data InsOrdHashSet k Source #

HashSet which tries its best to remember insertion order of elements.

Instances

Instances details
Foldable InsOrdHashSet Source #
Instance details

Defined in Data.HashSet.InsOrd

NFData1 InsOrdHashSet Source #

Since: 0.2.5

Instance details

Defined in Data.HashSet.InsOrd

Methods

liftRnf :: (a -> ()) -> InsOrdHashSet a -> () Source #

( Eq k, Hashable k) => IsList ( InsOrdHashSet k) Source #
Instance details

Defined in Data.HashSet.InsOrd

Associated Types

type Item ( InsOrdHashSet k) Source #

Eq k => Eq ( InsOrdHashSet k) Source #
Instance details

Defined in Data.HashSet.InsOrd

( Data k, Eq k, Hashable k) => Data ( InsOrdHashSet k) Source #
Instance details

Defined in Data.HashSet.InsOrd

Methods

gfoldl :: ( forall d b. Data d => c (d -> b) -> d -> c b) -> ( forall g. g -> c g) -> InsOrdHashSet k -> c ( InsOrdHashSet k) Source #

gunfold :: ( forall b r. Data b => c (b -> r) -> c r) -> ( forall r. r -> c r) -> Constr -> c ( InsOrdHashSet k) Source #

toConstr :: InsOrdHashSet k -> Constr Source #

dataTypeOf :: InsOrdHashSet k -> DataType Source #

dataCast1 :: Typeable t => ( forall d. Data d => c (t d)) -> Maybe (c ( InsOrdHashSet k)) Source #

dataCast2 :: Typeable t => ( forall d e. ( Data d, Data e) => c (t d e)) -> Maybe (c ( InsOrdHashSet k)) Source #

gmapT :: ( forall b. Data b => b -> b) -> InsOrdHashSet k -> InsOrdHashSet k Source #

gmapQl :: (r -> r' -> r) -> r -> ( forall d. Data d => d -> r') -> InsOrdHashSet k -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> ( forall d. Data d => d -> r') -> InsOrdHashSet k -> r Source #

gmapQ :: ( forall d. Data d => d -> u) -> InsOrdHashSet k -> [u] Source #

gmapQi :: Int -> ( forall d. Data d => d -> u) -> InsOrdHashSet k -> u Source #

gmapM :: Monad m => ( forall d. Data d => d -> m d) -> InsOrdHashSet k -> m ( InsOrdHashSet k) Source #

gmapMp :: MonadPlus m => ( forall d. Data d => d -> m d) -> InsOrdHashSet k -> m ( InsOrdHashSet k) Source #

gmapMo :: MonadPlus m => ( forall d. Data d => d -> m d) -> InsOrdHashSet k -> m ( InsOrdHashSet k) Source #

( Eq k, Hashable k, Read k) => Read ( InsOrdHashSet k) Source #
Instance details

Defined in Data.HashSet.InsOrd

Show k => Show ( InsOrdHashSet k) Source #
Instance details

Defined in Data.HashSet.InsOrd

( Eq k, Hashable k) => Semigroup ( InsOrdHashSet k) Source #
Instance details

Defined in Data.HashSet.InsOrd

( Eq k, Hashable k) => Monoid ( InsOrdHashSet k) Source #
Instance details

Defined in Data.HashSet.InsOrd

Hashable k => Hashable ( InsOrdHashSet k) Source #

hashWithSalt salt . toHashSet = hashWithSalt salt .

Instance details

Defined in Data.HashSet.InsOrd

ToJSON a => ToJSON ( InsOrdHashSet a) Source #
Instance details

Defined in Data.HashSet.InsOrd

( Eq a, Hashable a, FromJSON a) => FromJSON ( InsOrdHashSet a) Source #
Instance details

Defined in Data.HashSet.InsOrd

NFData k => NFData ( InsOrdHashSet k) Source #

Since: 0.2.5

Instance details

Defined in Data.HashSet.InsOrd

( Eq a, Hashable a) => Contains ( InsOrdHashSet a) Source #
Instance details

Defined in Data.HashSet.InsOrd

( Eq k, Hashable k) => Ixed ( InsOrdHashSet k) Source #
Instance details

Defined in Data.HashSet.InsOrd

( Eq k, Hashable k) => At ( InsOrdHashSet k) Source #
Instance details

Defined in Data.HashSet.InsOrd

( Eq a, Hashable a) => Contains ( InsOrdHashSet a) Source #
Instance details

Defined in Data.HashSet.InsOrd

( Eq k, Hashable k) => Ixed ( InsOrdHashSet k) Source #
Instance details

Defined in Data.HashSet.InsOrd

Associated Types

type IxKind ( InsOrdHashSet k) Source #

( Eq k, Hashable k) => At ( InsOrdHashSet k) Source #
Instance details

Defined in Data.HashSet.InsOrd

type Item ( InsOrdHashSet k) Source #
Instance details

Defined in Data.HashSet.InsOrd

type Index ( InsOrdHashSet a) Source #
Instance details

Defined in Data.HashSet.InsOrd

type IxValue ( InsOrdHashSet a) Source #
Instance details

Defined in Data.HashSet.InsOrd

type Index ( InsOrdHashSet a) Source #
Instance details

Defined in Data.HashSet.InsOrd

type IxValue ( InsOrdHashSet a) Source #
Instance details

Defined in Data.HashSet.InsOrd

type IxKind ( InsOrdHashSet k) Source #
Instance details

Defined in Data.HashSet.InsOrd

Construction

Basic interface

Combine

Transformations

Unordered

Difference and intersection

Folds

Unordered

Filter

Conversions

Lenses

hashSet :: Iso' ( InsOrdHashSet a) ( HashSet a) Source #

This is a slight lie, as roundtrip doesn't preserve ordering.

Debugging

valid :: InsOrdHashSet a -> Bool Source #

Test if the internal map structure is valid.