Agda-2.6.4: A dependently typed functional programming language and proof assistant
Safe HaskellSafe-Inferred
LanguageHaskell2010

Agda.Utils.SmallSet

Description

Small sets represented as a bitmask for fast membership checking.

With the exception of converting to/from lists, all operations are O(1).

Mimics the interface of Set.

Import as: import qualified Agda.Utils.SmallSet as SmallSet import Agda.Utils.SmallSet (SmallSet)

Synopsis

Documentation

data SmallSet a Source #

Instances

Instances details
SmallSetElement a => Collection a (SmallSet a) Source # 
Instance details

Defined in Agda.Utils.Singleton

Methods

fromList :: [a] -> SmallSet a Source #

SmallSetElement a => Singleton a (SmallSet a) Source # 
Instance details

Defined in Agda.Utils.Singleton

Methods

singleton :: a -> SmallSet a Source #

SmallSetElement a => Null (SmallSet a) Source # 
Instance details

Defined in Agda.Utils.SmallSet

SmallSetElement a => Monoid (SmallSet a) Source # 
Instance details

Defined in Agda.Utils.SmallSet

Methods

mempty :: SmallSet a #

mappend :: SmallSet a -> SmallSet a -> SmallSet a #

mconcat :: [SmallSet a] -> SmallSet a #

SmallSetElement a => Semigroup (SmallSet a) Source # 
Instance details

Defined in Agda.Utils.SmallSet

Methods

(<>) :: SmallSet a -> SmallSet a -> SmallSet a #

sconcat :: NonEmpty (SmallSet a) -> SmallSet a #

stimes :: Integral b => b -> SmallSet a -> SmallSet a #

Show (SmallSet a) Source # 
Instance details

Defined in Agda.Utils.SmallSet

Methods

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

show :: SmallSet a -> String #

showList :: [SmallSet a] -> ShowS #

NFData (SmallSet a) Source # 
Instance details

Defined in Agda.Utils.SmallSet

Methods

rnf :: SmallSet a -> () #

Eq (SmallSet a) Source # 
Instance details

Defined in Agda.Utils.SmallSet

Methods

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

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

Ord (SmallSet a) Source # 
Instance details

Defined in Agda.Utils.SmallSet

Methods

compare :: SmallSet a -> SmallSet a -> Ordering #

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

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

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

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

max :: SmallSet a -> SmallSet a -> SmallSet a #

min :: SmallSet a -> SmallSet a -> SmallSet a #

class (Bounded a, Ix a) => SmallSetElement a Source #

An element in a small set.

This must implement Bounded and Ix, and contain at most 64 values.

Instances

Instances details
SmallSetElement AllowedReduction Source # 
Instance details

Defined in Agda.TypeChecking.Monad.Base

class Ord a => Ix a #

The Ix class is used to map a contiguous subrange of values in a type onto integers. It is used primarily for array indexing (see the array package).

The first argument (l,u) of each of these operations is a pair specifying the lower and upper bounds of a contiguous subrange of values.

An implementation is entitled to assume the following laws about these operations:

Minimal complete definition

range, (index | unsafeIndex), inRange

Instances

Instances details
Ix AllowedReduction Source # 
Instance details

Defined in Agda.TypeChecking.Monad.Base

Ix BlinkSpeed 
Instance details

Defined in System.Console.ANSI.Types

Ix Color 
Instance details

Defined in System.Console.ANSI.Types

Ix ColorIntensity 
Instance details

Defined in System.Console.ANSI.Types

Ix ConsoleIntensity 
Instance details

Defined in System.Console.ANSI.Types

Ix ConsoleLayer 
Instance details

Defined in System.Console.ANSI.Types

Ix Underlining 
Instance details

Defined in System.Console.ANSI.Types

Ix Void

Since: base-4.8.0.0

Instance details

Defined in Data.Void

Methods

range :: (Void, Void) -> [Void] #

index :: (Void, Void) -> Void -> Int #

unsafeIndex :: (Void, Void) -> Void -> Int #

inRange :: (Void, Void) -> Void -> Bool #

rangeSize :: (Void, Void) -> Int #

unsafeRangeSize :: (Void, Void) -> Int #

Ix CBool 
Instance details

Defined in Foreign.C.Types

Ix CChar 
Instance details

Defined in Foreign.C.Types

Ix CInt 
Instance details

Defined in Foreign.C.Types

Methods

range :: (CInt, CInt) -> [CInt] #

index :: (CInt, CInt) -> CInt -> Int #

unsafeIndex :: (CInt, CInt) -> CInt -> Int #

inRange :: (CInt, CInt) -> CInt -> Bool #

rangeSize :: (CInt, CInt) -> Int #

unsafeRangeSize :: (CInt, CInt) -> Int #

Ix CIntMax 
Instance details

Defined in Foreign.C.Types

Ix CIntPtr 
Instance details

Defined in Foreign.C.Types

Ix CLLong 
Instance details

Defined in Foreign.C.Types

Ix CLong 
Instance details

Defined in Foreign.C.Types

Ix CPtrdiff 
Instance details

Defined in Foreign.C.Types

Ix CSChar 
Instance details

Defined in Foreign.C.Types

Ix CShort 
Instance details

Defined in Foreign.C.Types

Ix CSigAtomic 
Instance details

Defined in Foreign.C.Types

Ix CSize 
Instance details

Defined in Foreign.C.Types

Ix CUChar 
Instance details

Defined in Foreign.C.Types

Ix CUInt 
Instance details

Defined in Foreign.C.Types

Ix CUIntMax 
Instance details

Defined in Foreign.C.Types

Ix CUIntPtr 
Instance details

Defined in Foreign.C.Types

Ix CULLong 
Instance details

Defined in Foreign.C.Types

Ix CULong 
Instance details

Defined in Foreign.C.Types

Ix CUShort 
Instance details

Defined in Foreign.C.Types

Ix CWchar 
Instance details

Defined in Foreign.C.Types

Ix IntPtr 
Instance details

Defined in Foreign.Ptr

Ix WordPtr 
Instance details

Defined in Foreign.Ptr

Ix Associativity

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Ix DecidedStrictness

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Ix SourceStrictness

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Ix SourceUnpackedness

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Ix SeekMode

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.Device

Ix IOMode

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.IOMode

Ix Int16

Since: base-2.1

Instance details

Defined in GHC.Int

Ix Int32

Since: base-2.1

Instance details

Defined in GHC.Int

Ix Int64

Since: base-2.1

Instance details

Defined in GHC.Int

Ix Int8

Since: base-2.1

Instance details

Defined in GHC.Int

Methods

range :: (Int8, Int8) -> [Int8] #

index :: (Int8, Int8) -> Int8 -> Int #

unsafeIndex :: (Int8, Int8) -> Int8 -> Int #

inRange :: (Int8, Int8) -> Int8 -> Bool #

rangeSize :: (Int8, Int8) -> Int #

unsafeRangeSize :: (Int8, Int8) -> Int #

Ix GeneralCategory

Since: base-2.1

Instance details

Defined in GHC.Unicode

Ix Word16

Since: base-2.1

Instance details

Defined in GHC.Word

Ix Word32

Since: base-2.1

Instance details

Defined in GHC.Word

Ix Word64

Since: base-2.1

Instance details

Defined in GHC.Word

Ix Word8

Since: base-2.1

Instance details

Defined in GHC.Word

Ix CBlkCnt 
Instance details

Defined in System.Posix.Types

Ix CBlkSize 
Instance details

Defined in System.Posix.Types

Ix CClockId 
Instance details

Defined in System.Posix.Types

Ix CDev 
Instance details

Defined in System.Posix.Types

Methods

range :: (CDev, CDev) -> [CDev] #

index :: (CDev, CDev) -> CDev -> Int #

unsafeIndex :: (CDev, CDev) -> CDev -> Int #

inRange :: (CDev, CDev) -> CDev -> Bool #

rangeSize :: (CDev, CDev) -> Int #

unsafeRangeSize :: (CDev, CDev) -> Int #

Ix CFsBlkCnt 
Instance details

Defined in System.Posix.Types

Ix CFsFilCnt 
Instance details

Defined in System.Posix.Types

Ix CGid 
Instance details

Defined in System.Posix.Types

Methods

range :: (CGid, CGid) -> [CGid] #

index :: (CGid, CGid) -> CGid -> Int #

unsafeIndex :: (CGid, CGid) -> CGid -> Int #

inRange :: (CGid, CGid) -> CGid -> Bool #

rangeSize :: (CGid, CGid) -> Int #

unsafeRangeSize :: (CGid, CGid) -> Int #

Ix CId 
Instance details

Defined in System.Posix.Types

Methods

range :: (CId, CId) -> [CId] #

index :: (CId, CId) -> CId -> Int #

unsafeIndex :: (CId, CId) -> CId -> Int #

inRange :: (CId, CId) -> CId -> Bool #

rangeSize :: (CId, CId) -> Int #

unsafeRangeSize :: (CId, CId) -> Int #

Ix CIno 
Instance details

Defined in System.Posix.Types

Methods

range :: (CIno, CIno) -> [CIno] #

index :: (CIno, CIno) -> CIno -> Int #

unsafeIndex :: (CIno, CIno) -> CIno -> Int #

inRange :: (CIno, CIno) -> CIno -> Bool #

rangeSize :: (CIno, CIno) -> Int #

unsafeRangeSize :: (CIno, CIno) -> Int #

Ix CKey 
Instance details

Defined in System.Posix.Types

Methods

range :: (CKey, CKey) -> [CKey] #

index :: (CKey, CKey) -> CKey -> Int #

unsafeIndex :: (CKey, CKey) -> CKey -> Int #

inRange :: (CKey, CKey) -> CKey -> Bool #

rangeSize :: (CKey, CKey) -> Int #

unsafeRangeSize :: (CKey, CKey) -> Int #

Ix CMode 
Instance details

Defined in System.Posix.Types

Ix CNfds 
Instance details

Defined in System.Posix.Types

Ix CNlink 
Instance details

Defined in System.Posix.Types

Ix COff 
Instance details

Defined in System.Posix.Types

Methods

range :: (COff, COff) -> [COff] #

index :: (COff, COff) -> COff -> Int #

unsafeIndex :: (COff, COff) -> COff -> Int #

inRange :: (COff, COff) -> COff -> Bool #

rangeSize :: (COff, COff) -> Int #

unsafeRangeSize :: (COff, COff) -> Int #

Ix CPid 
Instance details

Defined in System.Posix.Types

Methods

range :: (CPid, CPid) -> [CPid] #

index :: (CPid, CPid) -> CPid -> Int #

unsafeIndex :: (CPid, CPid) -> CPid -> Int #

inRange :: (CPid, CPid) -> CPid -> Bool #

rangeSize :: (CPid, CPid) -> Int #

unsafeRangeSize :: (CPid, CPid) -> Int #

Ix CRLim 
Instance details

Defined in System.Posix.Types

Ix CSocklen 
Instance details

Defined in System.Posix.Types

Ix CSsize 
Instance details

Defined in System.Posix.Types

Ix CTcflag 
Instance details

Defined in System.Posix.Types

Ix CUid 
Instance details

Defined in System.Posix.Types

Methods

range :: (CUid, CUid) -> [CUid] #

index :: (CUid, CUid) -> CUid -> Int #

unsafeIndex :: (CUid, CUid) -> CUid -> Int #

inRange :: (CUid, CUid) -> CUid -> Bool #

rangeSize :: (CUid, CUid) -> Int #

unsafeRangeSize :: (CUid, CUid) -> Int #

Ix Fd 
Instance details

Defined in System.Posix.Types

Methods

range :: (Fd, Fd) -> [Fd] #

index :: (Fd, Fd) -> Fd -> Int #

unsafeIndex :: (Fd, Fd) -> Fd -> Int #

inRange :: (Fd, Fd) -> Fd -> Bool #

rangeSize :: (Fd, Fd) -> Int #

unsafeRangeSize :: (Fd, Fd) -> Int #

Ix Ordering

Since: base-2.1

Instance details

Defined in GHC.Ix

Ix Peano 
Instance details

Defined in Data.Peano

Ix Day 
Instance details

Defined in Data.Time.Calendar.Days

Methods

range :: (Day, Day) -> [Day] #

index :: (Day, Day) -> Day -> Int #

unsafeIndex :: (Day, Day) -> Day -> Int #

inRange :: (Day, Day) -> Day -> Bool #

rangeSize :: (Day, Day) -> Int #

unsafeRangeSize :: (Day, Day) -> Int #

Ix Month 
Instance details

Defined in Data.Time.Calendar.Month

Ix Quarter 
Instance details

Defined in Data.Time.Calendar.Quarter

Ix QuarterOfYear 
Instance details

Defined in Data.Time.Calendar.Quarter

Ix DayOfWeek 
Instance details

Defined in Data.Time.Calendar.Week

Ix Integer

Since: base-2.1

Instance details

Defined in GHC.Ix

Ix Natural

Since: base-4.8.0.0

Instance details

Defined in GHC.Ix

Ix ()

Since: base-2.1

Instance details

Defined in GHC.Ix

Methods

range :: ((), ()) -> [()] #

index :: ((), ()) -> () -> Int #

unsafeIndex :: ((), ()) -> () -> Int #

inRange :: ((), ()) -> () -> Bool #

rangeSize :: ((), ()) -> Int #

unsafeRangeSize :: ((), ()) -> Int #

Ix Bool

Since: base-2.1

Instance details

Defined in GHC.Ix

Methods

range :: (Bool, Bool) -> [Bool] #

index :: (Bool, Bool) -> Bool -> Int #

unsafeIndex :: (Bool, Bool) -> Bool -> Int #

inRange :: (Bool, Bool) -> Bool -> Bool #

rangeSize :: (Bool, Bool) -> Int #

unsafeRangeSize :: (Bool, Bool) -> Int #

Ix Char

Since: base-2.1

Instance details

Defined in GHC.Ix

Methods

range :: (Char, Char) -> [Char] #

index :: (Char, Char) -> Char -> Int #

unsafeIndex :: (Char, Char) -> Char -> Int #

inRange :: (Char, Char) -> Char -> Bool #

rangeSize :: (Char, Char) -> Int #

unsafeRangeSize :: (Char, Char) -> Int #

Ix Int

Since: base-2.1

Instance details

Defined in GHC.Ix

Methods

range :: (Int, Int) -> [Int] #

index :: (Int, Int) -> Int -> Int #

unsafeIndex :: (Int, Int) -> Int -> Int #

inRange :: (Int, Int) -> Int -> Bool #

rangeSize :: (Int, Int) -> Int #

unsafeRangeSize :: (Int, Int) -> Int #

Ix Word

Since: base-4.6.0.0

Instance details

Defined in GHC.Ix

Methods

range :: (Word, Word) -> [Word] #

index :: (Word, Word) -> Word -> Int #

unsafeIndex :: (Word, Word) -> Word -> Int #

inRange :: (Word, Word) -> Word -> Bool #

rangeSize :: (Word, Word) -> Int #

unsafeRangeSize :: (Word, Word) -> Int #

Ix i => Ix (MIx i) Source # 
Instance details

Defined in Agda.Termination.SparseMatrix

Methods

range :: (MIx i, MIx i) -> [MIx i] #

index :: (MIx i, MIx i) -> MIx i -> Int #

unsafeIndex :: (MIx i, MIx i) -> MIx i -> Int #

inRange :: (MIx i, MIx i) -> MIx i -> Bool #

rangeSize :: (MIx i, MIx i) -> Int #

unsafeRangeSize :: (MIx i, MIx i) -> Int #

Ix a => Ix (Identity a)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Identity

Ix a => Ix (Down a)

Since: base-4.14.0.0

Instance details

Defined in Data.Ord

Methods

range :: (Down a, Down a) -> [Down a] #

index :: (Down a, Down a) -> Down a -> Int #

unsafeIndex :: (Down a, Down a) -> Down a -> Int #

inRange :: (Down a, Down a) -> Down a -> Bool #

rangeSize :: (Down a, Down a) -> Int #

unsafeRangeSize :: (Down a, Down a) -> Int #

Ix a => Ix (a) 
Instance details

Defined in GHC.Ix

Methods

range :: ((a), (a)) -> [(a)] #

index :: ((a), (a)) -> (a) -> Int #

unsafeIndex :: ((a), (a)) -> (a) -> Int #

inRange :: ((a), (a)) -> (a) -> Bool #

rangeSize :: ((a), (a)) -> Int #

unsafeRangeSize :: ((a), (a)) -> Int #

Ix (Proxy s)

Since: base-4.7.0.0

Instance details

Defined in Data.Proxy

Methods

range :: (Proxy s, Proxy s) -> [Proxy s] #

index :: (Proxy s, Proxy s) -> Proxy s -> Int #

unsafeIndex :: (Proxy s, Proxy s) -> Proxy s -> Int #

inRange :: (Proxy s, Proxy s) -> Proxy s -> Bool #

rangeSize :: (Proxy s, Proxy s) -> Int #

unsafeRangeSize :: (Proxy s, Proxy s) -> Int #

(Ix a, Ix b) => Ix (Pair a b) 
Instance details

Defined in Data.Strict.Tuple

Methods

range :: (Pair a b, Pair a b) -> [Pair a b] #

index :: (Pair a b, Pair a b) -> Pair a b -> Int #

unsafeIndex :: (Pair a b, Pair a b) -> Pair a b -> Int #

inRange :: (Pair a b, Pair a b) -> Pair a b -> Bool #

rangeSize :: (Pair a b, Pair a b) -> Int #

unsafeRangeSize :: (Pair a b, Pair a b) -> Int #

(Ix a, Ix b) => Ix (a, b)

Since: base-2.1

Instance details

Defined in GHC.Ix

Methods

range :: ((a, b), (a, b)) -> [(a, b)] #

index :: ((a, b), (a, b)) -> (a, b) -> Int #

unsafeIndex :: ((a, b), (a, b)) -> (a, b) -> Int #

inRange :: ((a, b), (a, b)) -> (a, b) -> Bool #

rangeSize :: ((a, b), (a, b)) -> Int #

unsafeRangeSize :: ((a, b), (a, b)) -> Int #

Ix a => Ix (Const a b)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Const

Methods

range :: (Const a b, Const a b) -> [Const a b] #

index :: (Const a b, Const a b) -> Const a b -> Int #

unsafeIndex :: (Const a b, Const a b) -> Const a b -> Int #

inRange :: (Const a b, Const a b) -> Const a b -> Bool #

rangeSize :: (Const a b, Const a b) -> Int #

unsafeRangeSize :: (Const a b, Const a b) -> Int #

Ix b => Ix (Tagged s b) 
Instance details

Defined in Data.Tagged

Methods

range :: (Tagged s b, Tagged s b) -> [Tagged s b] #

index :: (Tagged s b, Tagged s b) -> Tagged s b -> Int #

unsafeIndex :: (Tagged s b, Tagged s b) -> Tagged s b -> Int #

inRange :: (Tagged s b, Tagged s b) -> Tagged s b -> Bool #

rangeSize :: (Tagged s b, Tagged s b) -> Int #

unsafeRangeSize :: (Tagged s b, Tagged s b) -> Int #

(Ix a1, Ix a2, Ix a3) => Ix (a1, a2, a3)

Since: base-2.1

Instance details

Defined in GHC.Ix

Methods

range :: ((a1, a2, a3), (a1, a2, a3)) -> [(a1, a2, a3)] #

index :: ((a1, a2, a3), (a1, a2, a3)) -> (a1, a2, a3) -> Int #

unsafeIndex :: ((a1, a2, a3), (a1, a2, a3)) -> (a1, a2, a3) -> Int #

inRange :: ((a1, a2, a3), (a1, a2, a3)) -> (a1, a2, a3) -> Bool #

rangeSize :: ((a1, a2, a3), (a1, a2, a3)) -> Int #

unsafeRangeSize :: ((a1, a2, a3), (a1, a2, a3)) -> Int #

(Ix a1, Ix a2, Ix a3, Ix a4) => Ix (a1, a2, a3, a4)

Since: base-2.1

Instance details

Defined in GHC.Ix

Methods

range :: ((a1, a2, a3, a4), (a1, a2, a3, a4)) -> [(a1, a2, a3, a4)] #

index :: ((a1, a2, a3, a4), (a1, a2, a3, a4)) -> (a1, a2, a3, a4) -> Int #

unsafeIndex :: ((a1, a2, a3, a4), (a1, a2, a3, a4)) -> (a1, a2, a3, a4) -> Int #

inRange :: ((a1, a2, a3, a4), (a1, a2, a3, a4)) -> (a1, a2, a3, a4) -> Bool #

rangeSize :: ((a1, a2, a3, a4), (a1, a2, a3, a4)) -> Int #

unsafeRangeSize :: ((a1, a2, a3, a4), (a1, a2, a3, a4)) -> Int #

(Ix a1, Ix a2, Ix a3, Ix a4, Ix a5) => Ix (a1, a2, a3, a4, a5)

Since: base-2.1

Instance details

Defined in GHC.Ix

Methods

range :: ((a1, a2, a3, a4, a5), (a1, a2, a3, a4, a5)) -> [(a1, a2, a3, a4, a5)] #

index :: ((a1, a2, a3, a4, a5), (a1, a2, a3, a4, a5)) -> (a1, a2, a3, a4, a5) -> Int #

unsafeIndex :: ((a1, a2, a3, a4, a5), (a1, a2, a3, a4, a5)) -> (a1, a2, a3, a4, a5) -> Int #

inRange :: ((a1, a2, a3, a4, a5), (a1, a2, a3, a4, a5)) -> (a1, a2, a3, a4, a5) -> Bool #

rangeSize :: ((a1, a2, a3, a4, a5), (a1, a2, a3, a4, a5)) -> Int #

unsafeRangeSize :: ((a1, a2, a3, a4, a5), (a1, a2, a3, a4, a5)) -> Int #

(Ix a1, Ix a2, Ix a3, Ix a4, Ix a5, Ix a6) => Ix (a1, a2, a3, a4, a5, a6)

Since: base-4.15.0.0

Instance details

Defined in GHC.Ix

Methods

range :: ((a1, a2, a3, a4, a5, a6), (a1, a2, a3, a4, a5, a6)) -> [(a1, a2, a3, a4, a5, a6)] #

index :: ((a1, a2, a3, a4, a5, a6), (a1, a2, a3, a4, a5, a6)) -> (a1, a2, a3, a4, a5, a6) -> Int #

unsafeIndex :: ((a1, a2, a3, a4, a5, a6), (a1, a2, a3, a4, a5, a6)) -> (a1, a2, a3, a4, a5, a6) -> Int #

inRange :: ((a1, a2, a3, a4, a5, a6), (a1, a2, a3, a4, a5, a6)) -> (a1, a2, a3, a4, a5, a6) -> Bool #

rangeSize :: ((a1, a2, a3, a4, a5, a6), (a1, a2, a3, a4, a5, a6)) -> Int #

unsafeRangeSize :: ((a1, a2, a3, a4, a5, a6), (a1, a2, a3, a4, a5, a6)) -> Int #

(Ix a1, Ix a2, Ix a3, Ix a4, Ix a5, Ix a6, Ix a7) => Ix (a1, a2, a3, a4, a5, a6, a7)

Since: base-4.15.0.0

Instance details

Defined in GHC.Ix

Methods

range :: ((a1, a2, a3, a4, a5, a6, a7), (a1, a2, a3, a4, a5, a6, a7)) -> [(a1, a2, a3, a4, a5, a6, a7)] #

index :: ((a1, a2, a3, a4, a5, a6, a7), (a1, a2, a3, a4, a5, a6, a7)) -> (a1, a2, a3, a4, a5, a6, a7) -> Int #

unsafeIndex :: ((a1, a2, a3, a4, a5, a6, a7), (a1, a2, a3, a4, a5, a6, a7)) -> (a1, a2, a3, a4, a5, a6, a7) -> Int #

inRange :: ((a1, a2, a3, a4, a5, a6, a7), (a1, a2, a3, a4, a5, a6, a7)) -> (a1, a2, a3, a4, a5, a6, a7) -> Bool #

rangeSize :: ((a1, a2, a3, a4, a5, a6, a7), (a1, a2, a3, a4, a5, a6, a7)) -> Int #

unsafeRangeSize :: ((a1, a2, a3, a4, a5, a6, a7), (a1, a2, a3, a4, a5, a6, a7)) -> Int #

(Ix a1, Ix a2, Ix a3, Ix a4, Ix a5, Ix a6, Ix a7, Ix a8) => Ix (a1, a2, a3, a4, a5, a6, a7, a8)

Since: base-4.15.0.0

Instance details

Defined in GHC.Ix

Methods

range :: ((a1, a2, a3, a4, a5, a6, a7, a8), (a1, a2, a3, a4, a5, a6, a7, a8)) -> [(a1, a2, a3, a4, a5, a6, a7, a8)] #

index :: ((a1, a2, a3, a4, a5, a6, a7, a8), (a1, a2, a3, a4, a5, a6, a7, a8)) -> (a1, a2, a3, a4, a5, a6, a7, a8) -> Int #

unsafeIndex :: ((a1, a2, a3, a4, a5, a6, a7, a8), (a1, a2, a3, a4, a5, a6, a7, a8)) -> (a1, a2, a3, a4, a5, a6, a7, a8) -> Int #

inRange :: ((a1, a2, a3, a4, a5, a6, a7, a8), (a1, a2, a3, a4, a5, a6, a7, a8)) -> (a1, a2, a3, a4, a5, a6, a7, a8) -> Bool #

rangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8), (a1, a2, a3, a4, a5, a6, a7, a8)) -> Int #

unsafeRangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8), (a1, a2, a3, a4, a5, a6, a7, a8)) -> Int #

(Ix a1, Ix a2, Ix a3, Ix a4, Ix a5, Ix a6, Ix a7, Ix a8, Ix a9) => Ix (a1, a2, a3, a4, a5, a6, a7, a8, a9)

Since: base-4.15.0.0

Instance details

Defined in GHC.Ix

Methods

range :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9), (a1, a2, a3, a4, a5, a6, a7, a8, a9)) -> [(a1, a2, a3, a4, a5, a6, a7, a8, a9)] #

index :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9), (a1, a2, a3, a4, a5, a6, a7, a8, a9)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9) -> Int #

unsafeIndex :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9), (a1, a2, a3, a4, a5, a6, a7, a8, a9)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9) -> Int #

inRange :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9), (a1, a2, a3, a4, a5, a6, a7, a8, a9)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9) -> Bool #

rangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9), (a1, a2, a3, a4, a5, a6, a7, a8, a9)) -> Int #

unsafeRangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9), (a1, a2, a3, a4, a5, a6, a7, a8, a9)) -> Int #

(Ix a1, Ix a2, Ix a3, Ix a4, Ix a5, Ix a6, Ix a7, Ix a8, Ix a9, Ix aA) => Ix (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA)

Since: base-4.15.0.0

Instance details

Defined in GHC.Ix

Methods

range :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA)) -> [(a1, a2, a3, a4, a5, a6, a7, a8, a9, aA)] #

index :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA) -> Int #

unsafeIndex :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA) -> Int #

inRange :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA) -> Bool #

rangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA)) -> Int #

unsafeRangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA)) -> Int #

(Ix a1, Ix a2, Ix a3, Ix a4, Ix a5, Ix a6, Ix a7, Ix a8, Ix a9, Ix aA, Ix aB) => Ix (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB)

Since: base-4.15.0.0

Instance details

Defined in GHC.Ix

Methods

range :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB)) -> [(a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB)] #

index :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB) -> Int #

unsafeIndex :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB) -> Int #

inRange :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB) -> Bool #

rangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB)) -> Int #

unsafeRangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB)) -> Int #

(Ix a1, Ix a2, Ix a3, Ix a4, Ix a5, Ix a6, Ix a7, Ix a8, Ix a9, Ix aA, Ix aB, Ix aC) => Ix (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC)

Since: base-4.15.0.0

Instance details

Defined in GHC.Ix

Methods

range :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC)) -> [(a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC)] #

index :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC) -> Int #

unsafeIndex :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC) -> Int #

inRange :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC) -> Bool #

rangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC)) -> Int #

unsafeRangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC)) -> Int #

(Ix a1, Ix a2, Ix a3, Ix a4, Ix a5, Ix a6, Ix a7, Ix a8, Ix a9, Ix aA, Ix aB, Ix aC, Ix aD) => Ix (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD)

Since: base-4.15.0.0

Instance details

Defined in GHC.Ix

Methods

range :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD)) -> [(a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD)] #

index :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD) -> Int #

unsafeIndex :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD) -> Int #

inRange :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD) -> Bool #

rangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD)) -> Int #

unsafeRangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD)) -> Int #

(Ix a1, Ix a2, Ix a3, Ix a4, Ix a5, Ix a6, Ix a7, Ix a8, Ix a9, Ix aA, Ix aB, Ix aC, Ix aD, Ix aE) => Ix (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE)

Since: base-4.15.0.0

Instance details

Defined in GHC.Ix

Methods

range :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE)) -> [(a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE)] #

index :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE) -> Int #

unsafeIndex :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE) -> Int #

inRange :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE) -> Bool #

rangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE)) -> Int #

unsafeRangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE)) -> Int #

(Ix a1, Ix a2, Ix a3, Ix a4, Ix a5, Ix a6, Ix a7, Ix a8, Ix a9, Ix aA, Ix aB, Ix aC, Ix aD, Ix aE, Ix aF) => Ix (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF)

Since: base-4.15.0.0

Instance details

Defined in GHC.Ix

Methods

range :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF)) -> [(a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF)] #

index :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF) -> Int #

unsafeIndex :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF) -> Int #

inRange :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF)) -> (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF) -> Bool #

rangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF)) -> Int #

unsafeRangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD, aE, aF)) -> Int #

(\\) :: SmallSetElement a => SmallSet a -> SmallSet a -> SmallSet a Source #

Time O(1).

delete :: SmallSetElement a => a -> SmallSet a -> SmallSet a Source #

Time O(1).

elems :: SmallSetElement a => SmallSet a -> [a] Source #

Time O(n).

empty :: SmallSetElement a => SmallSet a Source #

The empty set. Time O(1).

fromList :: SmallSetElement a => [a] -> SmallSet a Source #

Time O(n).

fromAscList :: SmallSetElement a => [a] -> SmallSet a Source #

Time O(n).

insert :: SmallSetElement a => a -> SmallSet a -> SmallSet a Source #

Time O(1).

member :: SmallSetElement a => a -> SmallSet a -> Bool Source #

Time O(1).

notMember :: SmallSetElement a => a -> SmallSet a -> Bool Source #

not . member a. Time O(1).

null :: SmallSetElement a => SmallSet a -> Bool Source #

Time O(1).

singleton :: SmallSetElement a => a -> SmallSet a Source #

A singleton set. Time O(1).

toList :: SmallSetElement a => SmallSet a -> [a] Source #

Time O(n).

toAscList :: SmallSetElement a => SmallSet a -> [a] Source #

Time O(n).

total :: forall a. SmallSetElement a => SmallSet a Source #

The full set. Time O(1).

union :: SmallSetElement a => SmallSet a -> SmallSet a -> SmallSet a Source #

Time O(n).