HORIZON HASKELLDocslts/ghc-9.14.x7a6c33e2026-10-12Search packagesCtrl K
Theme: |

GHC 9.14.1 · lts/ghc-9.14.x · 7a6c33e · 2026-10-12

Moduleth-desugar-1.19Haskell2010

Language.Haskell.TH.Desugar.OSet

An OSet behaves much like a Set, with all the same asymptotics, but also remembers the order that values were inserted.

This module offers a simplified version of the Data.Set.Ordered API that assumes left-biased indices everywhere.

Contents
  1. Trivial sets
  2. Insertion
  3. Query
  4. Deletion
  5. Indexing
  6. List conversions
  7. Set conversion
Synopsis
  • Packageth-desugar-1.19
  • Exports20
  • LanguageHaskell2010
  • LicenceBSD-3-Clause
  • SourceOSet.hs
newtypenewtype OSet a

An ordered set whose insertPre, insertPost, intersection, and union operations are biased towards leftmost indices when when breaking ties between keys.

Instances8Foldable, Eq, Data, Ord, Read, Show, …
  • Foldable OSetDefined in th-desugar-1.19 · Language.Haskell.TH.Desugar.OSet
  • Eq a => Eq (OSet a)Defined in th-desugar-1.19 · Language.Haskell.TH.Desugar.OSet
  • (Data a, Ord a) => Data (OSet a)Defined in th-desugar-1.19 · Language.Haskell.TH.Desugar.OSet
  • Ord a => Ord (OSet a)Defined in th-desugar-1.19 · Language.Haskell.TH.Desugar.OSet
  • (Ord a, Read a) => Read (OSet a)Defined in th-desugar-1.19 · Language.Haskell.TH.Desugar.OSet
  • Show a => Show (OSet a)Defined in th-desugar-1.19 · Language.Haskell.TH.Desugar.OSet
  • Ord a => Semigroup (OSet a)Defined in th-desugar-1.19 · Language.Haskell.TH.Desugar.OSet
  • Ord a => Monoid (OSet a)Defined in th-desugar-1.19 · Language.Haskell.TH.Desugar.OSet

Trivial sets

Insertion

Query

Deletion

Indexing

typetype Index = Int

A 0-based index, much like the indices used by lists' !! operation. All indices are with respect to insertion order.

List conversions

Set conversion