Spec-Zone.ru › Haskell 9

GHC.Arr

Авторские права (c) Университет Глазго 1994-2000
Лицензия см. libraries/base/LICENSE
Поддержка ghc-devs@haskell.org
Стабильность внутренняя
Переносимость непереносимая (расширения GHC)
Безопасный Haskell Нет
Язык Haskell2010

Содержание

  • Небезопасные операции

Описание

Реализация массивов GHC.

API этого модуля нестабильна и не предназначена для общего использования. Если вам абсолютно необходимо от него зависеть, убедитесь, что вы используете жёсткую верхнюю границу, например, base < 4.X , а не base < 5, так как интерфейс может быстро измениться без предупреждения.

class Ord a => Ix a where Исходный код

Класс Ix используется для отображения непрерывного поддиапазона значений в типе на целые числа. Он используется в основном для индексации массивов (см. пакет массивов).

Первый аргумент (l,u) каждой из этих операций — пара, определяющая нижнюю и верхнюю границы непрерывного поддиапазона значений.

Реализация имеет право предполагать следующие законы о данных операциях:

  • inRange (l,u) i == elem i (range (l,u))
  • range (l,u) !! index (l,u) i == i, когда inRange (l,u) i
  • map (index (l,u)) (range (l,u))) == [0..rangeSize (l,u)-1]
  • rangeSize (l,u) == length (range (l,u))

Минимальное полное определение

range, (index | unsafeIndex), inRange

Методы

range :: (a, a) -> [a] Исходный код

Список значений в поддиапазоне, определяемом парой границ.

index :: (a, a) -> a -> Int Исходный код

Положение индекса в поддиапазоне.

unsafeIndex :: (a, a) -> a -> Int Исходный код

Как index, но без проверки, что значение находится в диапазоне.

inRange :: (a, a) -> a -> Bool Исходный код

Возвращает True, лежит ли данный индекс в диапазоне, определённом парой границ.

rangeSize :: (a, a) -> Int Исходный код

Размер поддиапазона, определяемого парой границ.

unsafeRangeSize :: (a, a) -> Int Исходный код

Как rangeSize, но без проверки, что верхняя граница находится в диапазоне.

Экземпляры
Подробности о экземплярах
Ix Void Источник

С версии: base-4.8.0.0

Подробности о экземпляре

Определено в GHC.Internal.Ix

Методы

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 Источник
Подробности о экземпляре

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CBool, CBool) -> [CBool] Источник

index :: (CBool, CBool) -> CBool -> Int Источник

unsafeIndex :: (CBool, CBool) -> CBool -> Int Источник

inRange :: (CBool, CBool) -> CBool -> Bool Источник

rangeSize :: (CBool, CBool) -> Int Источник

unsafeRangeSize :: (CBool, CBool) -> Int Источник

Ix CChar Источник
Подробности о экземпляре

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CChar, CChar) -> [CChar] Источник

index :: (CChar, CChar) -> CChar -> Int Источник

unsafeIndex :: (CChar, CChar) -> CChar -> Int Источник

inRange :: (CChar, CChar) -> CChar -> Bool Источник

rangeSize :: (CChar, CChar) -> Int Источник

unsafeRangeSize :: (CChar, CChar) -> Int Источник

Ix CInt Источник
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

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 Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CIntMax, CIntMax) -> [CIntMax] Исходный код

index :: (CIntMax, CIntMax) -> CIntMax -> Int Исходный код

unsafeIndex :: (CIntMax, CIntMax) -> CIntMax -> Int Исходный код

inRange :: (CIntMax, CIntMax) -> CIntMax -> Bool Исходный код

rangeSize :: (CIntMax, CIntMax) -> Int Исходный код

unsafeRangeSize :: (CIntMax, CIntMax) -> Int Исходный код

Ix CIntPtr Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CIntPtr, CIntPtr) -> [CIntPtr] Исходный код

index :: (CIntPtr, CIntPtr) -> CIntPtr -> Int Исходный код

unsafeIndex :: (CIntPtr, CIntPtr) -> CIntPtr -> Int Исходный код

inRange :: (CIntPtr, CIntPtr) -> CIntPtr -> Bool Исходный код

rangeSize :: (CIntPtr, CIntPtr) -> Int Исходный код

unsafeRangeSize :: (CIntPtr, CIntPtr) -> Int Исходный код

Ix CLLong Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CLLong, CLLong) -> [CLLong] Исходный код

index :: (CLLong, CLLong) -> CLLong -> Int Исходный код

unsafeIndex :: (CLLong, CLLong) -> CLLong -> Int Исходный код

inRange :: (CLLong, CLLong) -> CLLong -> Bool Исходный код

rangeSize :: (CLLong, CLLong) -> Int Исходный код

unsafeRangeSize :: (CLLong, CLLong) -> Int Исходный код

Ix CLong Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CLong, CLong) -> [CLong] Исходный код

index :: (CLong, CLong) -> CLong -> Int Исходный код

unsafeIndex :: (CLong, CLong) -> CLong -> Int Исходный код

inRange :: (CLong, CLong) -> CLong -> Bool Исходный код

rangeSize :: (CLong, CLong) -> Int Исходный код

unsafeRangeSize :: (CLong, CLong) -> Int Исходный код

Ix CPtrdiff Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CPtrdiff, CPtrdiff) -> [CPtrdiff] Исходный код

index :: (CPtrdiff, CPtrdiff) -> CPtrdiff -> Int Исходный код

unsafeIndex :: (CPtrdiff, CPtrdiff) -> CPtrdiff -> Int Исходный код

inRange :: (CPtrdiff, CPtrdiff) -> CPtrdiff -> Bool Исходный код

rangeSize :: (CPtrdiff, CPtrdiff) -> Int Исходный код

unsafeRangeSize :: (CPtrdiff, CPtrdiff) -> Int Исходный код

Ix CSChar Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CSChar, CSChar) -> [CSChar] Исходный код

index :: (CSChar, CSChar) -> CSChar -> Int Исходный код

unsafeIndex :: (CSChar, CSChar) -> CSChar -> Int Исходный код

inRange :: (CSChar, CSChar) -> CSChar -> Bool Исходный код

rangeSize :: (CSChar, CSChar) -> Int Исходный код

unsafeRangeSize :: (CSChar, CSChar) -> Int Исходный код

Ix CShort Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CShort, CShort) -> [CShort] Исходный код

index :: (CShort, CShort) -> CShort -> Int Исходный код

unsafeIndex :: (CShort, CShort) -> CShort -> Int Исходный код

inRange :: (CShort, CShort) -> CShort -> Bool Исходный код

rangeSize :: (CShort, CShort) -> Int Исходный код

unsafeRangeSize :: (CShort, CShort) -> Int Исходный код

Ix CSigAtomic Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CSigAtomic, CSigAtomic) -> [CSigAtomic] Исходный код

index :: (CSigAtomic, CSigAtomic) -> CSigAtomic -> Int Исходный код

unsafeIndex :: (CSigAtomic, CSigAtomic) -> CSigAtomic -> Int Исходный код

inRange :: (CSigAtomic, CSigAtomic) -> CSigAtomic -> Bool Исходный код

rangeSize :: (CSigAtomic, CSigAtomic) -> Int Исходный код

unsafeRangeSize :: (CSigAtomic, CSigAtomic) -> Int Исходный код

Ix CSize Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CSize, CSize) -> [CSize] Исходный код

index :: (CSize, CSize) -> CSize -> Int Исходный код

unsafeIndex :: (CSize, CSize) -> CSize -> Int Исходный код

inRange :: (CSize, CSize) -> CSize -> Bool Исходный код

rangeSize :: (CSize, CSize) -> Int Исходный код

unsafeRangeSize :: (CSize, CSize) -> Int Исходный код

Ix CUChar Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CUChar, CUChar) -> [CUChar] Исходный код

index :: (CUChar, CUChar) -> CUChar -> Int Исходный код

unsafeIndex :: (CUChar, CUChar) -> CUChar -> Int Исходный код

inRange :: (CUChar, CUChar) -> CUChar -> Bool Исходный код

rangeSize :: (CUChar, CUChar) -> Int Исходный код

unsafeRangeSize :: (CUChar, CUChar) -> Int Исходный код

Ix CUInt Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CUInt, CUInt) -> [CUInt] Исходный код

index :: (CUInt, CUInt) -> CUInt -> Int Исходный код

unsafeIndex :: (CUInt, CUInt) -> CUInt -> Int Исходный код

inRange :: (CUInt, CUInt) -> CUInt -> Bool Исходный код

rangeSize :: (CUInt, CUInt) -> Int Исходный код

unsafeRangeSize :: (CUInt, CUInt) -> Int Исходный код

Ix CUIntMax Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CUIntMax, CUIntMax) -> [CUIntMax] Исходный код

index :: (CUIntMax, CUIntMax) -> CUIntMax -> Int Исходный код

unsafeIndex :: (CUIntMax, CUIntMax) -> CUIntMax -> Int Исходный код

inRange :: (CUIntMax, CUIntMax) -> CUIntMax -> Bool Исходный код

rangeSize :: (CUIntMax, CUIntMax) -> Int Исходный код

unsafeRangeSize :: (CUIntMax, CUIntMax) -> Int Исходный код

Ix CUIntPtr Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CUIntPtr, CUIntPtr) -> [CUIntPtr] Исходный код

index :: (CUIntPtr, CUIntPtr) -> CUIntPtr -> Int Исходный код

unsafeIndex :: (CUIntPtr, CUIntPtr) -> CUIntPtr -> Int Исходный код

inRange :: (CUIntPtr, CUIntPtr) -> CUIntPtr -> Bool Исходный код

rangeSize :: (CUIntPtr, CUIntPtr) -> Int Исходный код

unsafeRangeSize :: (CUIntPtr, CUIntPtr) -> Int Исходный код

Ix CULLong Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CULLong, CULLong) -> [CULLong] Исходный код

index :: (CULLong, CULLong) -> CULLong -> Int Исходный код

unsafeIndex :: (CULLong, CULLong) -> CULLong -> Int Исходный код

inRange :: (CULLong, CULLong) -> CULLong -> Bool Исходный код

rangeSize :: (CULLong, CULLong) -> Int Исходный код

unsafeRangeSize :: (CULLong, CULLong) -> Int Исходный код

Ix CULong Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CULong, CULong) -> [CULong] Исходный код

index :: (CULong, CULong) -> CULong -> Int Исходный код

unsafeIndex :: (CULong, CULong) -> CULong -> Int Исходный код

inRange :: (CULong, CULong) -> CULong -> Bool Исходный код

rangeSize :: (CULong, CULong) -> Int Исходный код

unsafeRangeSize :: (CULong, CULong) -> Int Исходный код

Ix CUShort Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CUShort, CUShort) -> [CUShort] Исходный код

index :: (CUShort, CUShort) -> CUShort -> Int Исходный код

unsafeIndex :: (CUShort, CUShort) -> CUShort -> Int Исходный код

inRange :: (CUShort, CUShort) -> CUShort -> Bool Исходный код

rangeSize :: (CUShort, CUShort) -> Int Исходный код

unsafeRangeSize :: (CUShort, CUShort) -> Int Исходный код

Ix CWchar Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.C.Types

Методы

range :: (CWchar, CWchar) -> [CWchar] Исходный код

index :: (CWchar, CWchar) -> CWchar -> Int Исходный код

unsafeIndex :: (CWchar, CWchar) -> CWchar -> Int Исходный код

inRange :: (CWchar, CWchar) -> CWchar -> Bool Исходный код

rangeSize :: (CWchar, CWchar) -> Int Исходный код

unsafeRangeSize :: (CWchar, CWchar) -> Int Исходный код

Ix IntPtr Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.Ptr

Методы

range :: (IntPtr, IntPtr) -> [IntPtr] Исходный код

index :: (IntPtr, IntPtr) -> IntPtr -> Int Исходный код

unsafeIndex :: (IntPtr, IntPtr) -> IntPtr -> Int Исходный код

inRange :: (IntPtr, IntPtr) -> IntPtr -> Bool Исходный код

rangeSize :: (IntPtr, IntPtr) -> Int Исходный код

unsafeRangeSize :: (IntPtr, IntPtr) -> Int Исходный код

Ix WordPtr Исходный код
Подробности экземпляра

Определено в GHC.Internal.Foreign.Ptr

Методы

range :: (WordPtr, WordPtr) -> [WordPtr] Исходный код

index :: (WordPtr, WordPtr) -> WordPtr -> Int Исходный код

unsafeIndex :: (WordPtr, WordPtr) -> WordPtr -> Int Исходный код

inRange :: (WordPtr, WordPtr) -> WordPtr -> Bool Исходный код

rangeSize :: (WordPtr, WordPtr) -> Int Исходный код

unsafeRangeSize :: (WordPtr, WordPtr) -> Int Исходный код

Ix Associativity Исходный код

С момента: base-4.9.0.0

Подробности экземпляра

Определено в GHC.Internal.Generics

Методы

range :: (Associativity, Associativity) -> [Associativity] Исходный код

index :: (Associativity, Associativity) -> Associativity -> Int Исходный код

unsafeIndex :: (Associativity, Associativity) -> Associativity -> Int Исходный код

inRange :: (Associativity, Associativity) -> Associativity -> Bool Исходный код

rangeSize :: (Associativity, Associativity) -> Int Исходный код

unsafeRangeSize :: (Associativity, Associativity) -> Int Исходный код

Ix DecidedStrictness Исходный код

С момента: base-4.9.0.0

Подробности экземпляра

Определено в GHC.Internal.Generics

Методы

range :: (DecidedStrictness, DecidedStrictness) -> [DecidedStrictness] Исходный код

index :: (DecidedStrictness, DecidedStrictness) -> DecidedStrictness -> Int Исходный код

unsafeIndex :: (DecidedStrictness, DecidedStrictness) -> DecidedStrictness -> Int Исходный код

inRange :: (DecidedStrictness, DecidedStrictness) -> DecidedStrictness -> Bool Исходный код

rangeSize :: (DecidedStrictness, DecidedStrictness) -> Int Исходный код

unsafeRangeSize :: (DecidedStrictness, DecidedStrictness) -> Int Исходный код

Ix SourceStrictness Исходный код

С момента: base-4.9.0.0

Подробности экземпляра

Определено в GHC.Internal.Generics

Методы

range :: (SourceStrictness, SourceStrictness) -> [SourceStrictness] Исходный код

index :: (SourceStrictness, SourceStrictness) -> SourceStrictness -> Int Исходный код

unsafeIndex :: (SourceStrictness, SourceStrictness) -> SourceStrictness -> Int Исходный код

inRange :: (SourceStrictness, SourceStrictness) -> SourceStrictness -> Bool Исходный код

rangeSize :: (SourceStrictness, SourceStrictness) -> Int Исходный код

unsafeRangeSize :: (SourceStrictness, SourceStrictness) -> Int Исходный код

Ix SourceUnpackedness Исходный код

С момента: base-4.9.0.0

Подробности экземпляра

Определено в GHC.Internal.Generics

Методы

range :: (SourceUnpackedness, SourceUnpackedness) -> [SourceUnpackedness] Исходный код

index :: (SourceUnpackedness, SourceUnpackedness) -> SourceUnpackedness -> Int Исходный код

unsafeIndex :: (SourceUnpackedness, SourceUnpackedness) -> SourceUnpackedness -> Int Исходный код

inRange :: (SourceUnpackedness, SourceUnpackedness) -> SourceUnpackedness -> Bool Исходный код

rangeSize :: (SourceUnpackedness, SourceUnpackedness) -> Int Исходный код

unsafeRangeSize :: (SourceUnpackedness, SourceUnpackedness) -> Int Исходный код

Ix SeekMode Исходный код

С момента: base-4.2.0.0

Подробности экземпляра

Определено в GHC.Internal.IO.Device

Методы

range :: (Режим поиска, Режим поиска) -> [Режим поиска] Исходный код

index :: (Режим поиска, Режим поиска) -> Режим поиска -> Целое Исходный код

unsafeIndex :: (Режим поиска, Режим поиска) -> Режим поиска -> Целое Исходный код

inRange :: (Режим поиска, Режим поиска) -> Режим поиска -> Булево Исходный код

rangeSize :: (Режим поиска, Режим поиска) -> Целое Исходный код

unsafeRangeSize :: (Режим поиска, Режим поиска) -> Целое Исходный код

Ix Режим Ввода/Вывода Исходный код

С момента: base-4.2.0.0

Подробности экземпляра

Определено в GHC.Internal.IO.IOMode

Методы

range :: (Режим Ввода/Вывода, Режим Ввода/Вывода) -> [Режим Ввода/Вывода] Исходный код

index :: (Режим Ввода/Вывода, Режим Ввода/Вывода) -> Режим Ввода/Вывода -> Целое Исходный код

unsafeIndex :: (Режим Ввода/Вывода, Режим Ввода/Вывода) -> Режим Ввода/Вывода -> Целое Исходный код

inRange :: (Режим Ввода/Вывода, Режим Ввода/Вывода) -> Режим Ввода/Вывода -> Булево Исходный код

rangeSize :: (Режим Ввода/Вывода, Режим Ввода/Вывода) -> Целое Исходный код

unsafeRangeSize :: (Режим Ввода/Вывода, Режим Ввода/Вывода) -> Целое Исходный код

Ix Int16 Исходный код

С момента: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Int

Методы

range :: (Int16, Int16) -> [Int16] Исходный код

index :: (Int16, Int16) -> Int16 -> Целое Исходный код

unsafeIndex :: (Int16, Int16) -> Int16 -> Целое Исходный код

inRange :: (Int16, Int16) -> Int16 -> Булево Исходный код

rangeSize :: (Int16, Int16) -> Целое Исходный код

unsafeRangeSize :: (Int16, Int16) -> Целое Исходный код

Ix Int32 Исходный код

С момента: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Int

Методы

range :: (Int32, Int32) -> [Int32] Исходный код

index :: (Int32, Int32) -> Int32 -> Int Исходный код

unsafeIndex :: (Int32, Int32) -> Int32 -> Int Исходный код

inRange :: (Int32, Int32) -> Int32 -> Bool Исходный код

rangeSize :: (Int32, Int32) -> Int Исходный код

unsafeRangeSize :: (Int32, Int32) -> Int Исходный код

Ix Int64 Исходный код

С момента: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Int

Методы

range :: (Int64, Int64) -> [Int64] Исходный код

index :: (Int64, Int64) -> Int64 -> Int Исходный код

unsafeIndex :: (Int64, Int64) -> Int64 -> Int Исходный код

inRange :: (Int64, Int64) -> Int64 -> Bool Исходный код

rangeSize :: (Int64, Int64) -> Int Исходный код

unsafeRangeSize :: (Int64, Int64) -> Int Исходный код

Ix Int8 Исходный код

С момента: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Int

Методы

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 CBlkCnt Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

range :: (CBlkCnt, CBlkCnt) -> [CBlkCnt] Исходный код

index :: (CBlkCnt, CBlkCnt) -> CBlkCnt -> Int Исходный код

unsafeIndex :: (CBlkCnt, CBlkCnt) -> CBlkCnt -> Int Исходный код

inRange :: (CBlkCnt, CBlkCnt) -> CBlkCnt -> Bool Исходный код

rangeSize :: (CBlkCnt, CBlkCnt) -> Int Исходный код

unsafeRangeSize :: (CBlkCnt, CBlkCnt) -> Int Исходный код

Ix CBlkSize Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

range :: (CBlkSize, CBlkSize) -> [CBlkSize] Исходный код

index :: (CBlkSize, CBlkSize) -> CBlkSize -> Int Исходный код

unsafeIndex :: (CBlkSize, CBlkSize) -> CBlkSize -> Int Исходный код

inRange :: (CBlkSize, CBlkSize) -> CBlkSize -> Bool Исходный код

rangeSize :: (CBlkSize, CBlkSize) -> Int Исходный код

unsafeRangeSize :: (CBlkSize, CBlkSize) -> Int Исходный код

Ix CClockId Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

range :: (CClockId, CClockId) -> [CClockId] Исходный код

index :: (CClockId, CClockId) -> CClockId -> Int Исходный код

unsafeIndex :: (CClockId, CClockId) -> CClockId -> Int Исходный код

inRange :: (CClockId, CClockId) -> CClockId -> Bool Исходный код

rangeSize :: (CClockId, CClockId) -> Int Исходный код

unsafeRangeSize :: (CClockId, CClockId) -> Int Исходный код

Ix CDev Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

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 Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

range :: (CFsBlkCnt, CFsBlkCnt) -> [CFsBlkCnt] Источник

index :: (CFsBlkCnt, CFsBlkCnt) -> CFsBlkCnt -> Int Источник

unsafeIndex :: (CFsBlkCnt, CFsBlkCnt) -> CFsBlkCnt -> Int Источник

inRange :: (CFsBlkCnt, CFsBlkCnt) -> CFsBlkCnt -> Bool Источник

rangeSize :: (CFsBlkCnt, CFsBlkCnt) -> Int Источник

unsafeRangeSize :: (CFsBlkCnt, CFsBlkCnt) -> Int Источник

Ix CFsFilCnt Источник
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

range :: (CFsFilCnt, CFsFilCnt) -> [CFsFilCnt] Источник

index :: (CFsFilCnt, CFsFilCnt) -> CFsFilCnt -> Int Источник

unsafeIndex :: (CFsFilCnt, CFsFilCnt) -> CFsFilCnt -> Int Источник

inRange :: (CFsFilCnt, CFsFilCnt) -> CFsFilCnt -> Bool Источник

rangeSize :: (CFsFilCnt, CFsFilCnt) -> Int Источник

unsafeRangeSize :: (CFsFilCnt, CFsFilCnt) -> Int Источник

Ix CGid Источник
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

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 Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

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 Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

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 Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

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 Исходный код
Подробные сведения об экземпляре

Определено в GHC.Internal.System.Posix.Types

Методы

range :: (CMode, CMode) -> [CMode] Исходный код

index :: (CMode, CMode) -> CMode -> Int Исходный код

unsafeIndex :: (CMode, CMode) -> CMode -> Int Исходный код

inRange :: (CMode, CMode) -> CMode -> Bool Исходный код

rangeSize :: (CMode, CMode) -> Int Исходный код

unsafeRangeSize :: (CMode, CMode) -> Int Исходный код

Ix CNfds Исходный код
Подробные сведения об экземпляре

Определено в GHC.Internal.System.Posix.Types

Методы

range :: (CNfds, CNfds) -> [CNfds] Исходный код

index :: (CNfds, CNfds) -> CNfds -> Int Исходный код

unsafeIndex :: (CNfds, CNfds) -> CNfds -> Int Исходный код

inRange :: (CNfds, CNfds) -> CNfds -> Bool Исходный код

rangeSize :: (CNfds, CNfds) -> Int Исходный код

unsafeRangeSize :: (CNfds, CNfds) -> Int Исходный код

Ix CNlink Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

range :: (CNlink, CNlink) -> [CNlink] Исходный код

index :: (CNlink, CNlink) -> CNlink -> Int Исходный код

unsafeIndex :: (CNlink, CNlink) -> CNlink -> Int Исходный код

inRange :: (CNlink, CNlink) -> CNlink -> Bool Исходный код

rangeSize :: (CNlink, CNlink) -> Int Исходный код

unsafeRangeSize :: (CNlink, CNlink) -> Int Исходный код

Ix COff Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

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 Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

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 Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

range :: (CRLim, CRLim) -> [CRLim] Исходный код

index :: (CRLim, CRLim) -> CRLim -> Int Исходный код

unsafeIndex :: (CRLim, CRLim) -> CRLim -> Int Исходный код

inRange :: (CRLim, CRLim) -> CRLim -> Bool Исходный код

rangeSize :: (CRLim, CRLim) -> Int Исходный код

unsafeRangeSize :: (CRLim, CRLim) -> Int Исходный код

Ix CSocklen Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

range :: (CSocklen, CSocklen) -> [CSocklen] Исходный код

index :: (CSocklen, CSocklen) -> CSocklen -> Int Исходный код

unsafeIndex :: (CSocklen, CSocklen) -> CSocklen -> Int Исходный код

inRange :: (CSocklen, CSocklen) -> CSocklen -> Bool Исходный код

rangeSize :: (CSocklen, CSocklen) -> Int Исходный код

unsafeRangeSize :: (CSocklen, CSocklen) -> Int Исходный код

Ix CSsize Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

range :: (CSsize, CSsize) -> [CSsize] Исходный код

index :: (CSsize, CSsize) -> CSsize -> Int Исходный код

unsafeIndex :: (CSsize, CSsize) -> CSsize -> Int Исходный код

inRange :: (CSsize, CSsize) -> CSsize -> Bool Исходный код

rangeSize :: (CSsize, CSsize) -> Int Исходный код

unsafeRangeSize :: (CSsize, CSsize) -> Int Исходный код

Ix CTcflag Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

range :: (CTcflag, CTcflag) -> [CTcflag] Исходный код

index :: (CTcflag, CTcflag) -> CTcflag -> Int Исходный код

unsafeIndex :: (CTcflag, CTcflag) -> CTcflag -> Int Исходный код

inRange :: (CTcflag, CTcflag) -> CTcflag -> Bool Исходный код

rangeSize :: (CTcflag, CTcflag) -> Int Исходный код

unsafeRangeSize :: (CTcflag, CTcflag) -> Int Исходный код

Ix CUid Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

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 Исходный код
Подробности экземпляра

Определено в GHC.Internal.System.Posix.Types

Методы

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 GeneralCategory Исходный код

С момента: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Unicode

Методы

range :: (GeneralCategory, GeneralCategory) -> [GeneralCategory] Исходный код

index :: (GeneralCategory, GeneralCategory) -> GeneralCategory -> Int Исходный код

unsafeIndex :: (GeneralCategory, GeneralCategory) -> GeneralCategory -> Int Исходный код

inRange :: (GeneralCategory, GeneralCategory) -> GeneralCategory -> Bool Исходный код

rangeSize :: (GeneralCategory, GeneralCategory) -> Int Исходный код

unsafeRangeSize :: (GeneralCategory, GeneralCategory) -> Int Исходный код

Ix Word16 Исходный код

С момента: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Word

Методы

range :: (Word16, Word16) -> [Word16] Исходный код

index :: (Word16, Word16) -> Word16 -> Int Исходный код

unsafeIndex :: (Word16, Word16) -> Word16 -> Int Исходный код

inRange :: (Word16, Word16) -> Word16 -> Bool Исходный код

rangeSize :: (Word16, Word16) -> Int Исходный код

unsafeRangeSize :: (Word16, Word16) -> Int Исходный код

Ix Word32 Source

Since: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Word

Методы

range :: (Word32, Word32) -> [Word32] Source

index :: (Word32, Word32) -> Word32 -> Int Source

unsafeIndex :: (Word32, Word32) -> Word32 -> Int Source

inRange :: (Word32, Word32) -> Word32 -> Bool Source

rangeSize :: (Word32, Word32) -> Int Source

unsafeRangeSize :: (Word32, Word32) -> Int Source

Ix Word64 Source

Since: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Word

Методы

range :: (Word64, Word64) -> [Word64] Source

index :: (Word64, Word64) -> Word64 -> Int Source

unsafeIndex :: (Word64, Word64) -> Word64 -> Int Source

inRange :: (Word64, Word64) -> Word64 -> Bool Source

rangeSize :: (Word64, Word64) -> Int Source

unsafeRangeSize :: (Word64, Word64) -> Int Source

Ix Word8 Source

Since: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Word

Методы

range :: (Word8, Word8) -> [Word8] Source

index :: (Word8, Word8) -> Word8 -> Int Source

unsafeIndex :: (Word8, Word8) -> Word8 -> Int Source

inRange :: (Word8, Word8) -> Word8 -> Bool Source

rangeSize :: (Word8, Word8) -> Int Source

unsafeRangeSize :: (Word8, Word8) -> Int Source

Ix Ordering Source

Since: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Ix

Методы

range :: (Порядок, Порядок) -> [Порядок] Исходный код

index :: (Порядок, Порядок) -> Порядок -> Целое Исходный код

unsafeIndex :: (Порядок, Порядок) -> Порядок -> Целое Исходный код

inRange :: (Порядок, Порядок) -> Порядок -> Булево Исходный код

rangeSize :: (Порядок, Порядок) -> Целое Исходный код

unsafeRangeSize :: (Порядок, Порядок) -> Целое Исходный код

Ix Целое Исходный код

С момента: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Ix

Методы

range :: (Целое, Целое) -> [Целое] Исходный код

index :: (Целое, Целое) -> Целое -> Целое Исходный код

unsafeIndex :: (Целое, Целое) -> Целое -> Целое Исходный код

inRange :: (Целое, Целое) -> Целое -> Булево Исходный код

rangeSize :: (Целое, Целое) -> Целое Исходный код

unsafeRangeSize :: (Целое, Целое) -> Целое Исходный код

Ix Натуральное Исходный код

С момента: base-4.8.0.0

Подробности экземпляра

Определено в GHC.Internal.Ix

Методы

range :: (Натуральное, Натуральное) -> [Натуральное] Исходный код

index :: (Натуральное, Натуральное) -> Натуральное -> Целое Исходный код

unsafeIndex :: (Натуральное, Натуральное) -> Натуральное -> Целое Исходный код

inRange :: (Натуральное, Натуральное) -> Натуральное -> Булево Исходный код

rangeSize :: (Натуральное, Натуральное) -> Целое Исходный код

unsafeRangeSize :: (Натуральное, Натуральное) -> Целое Исходный код

Ix () Исходный код

С момента: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Ix

Методы

range :: ((), ()) -> [()] Исходный код

index :: ((), ()) -> () -> Целое Исходный код

unsafeIndex :: ((), ()) -> () -> Целое Исходный код

inRange :: ((), ()) -> () -> Булево Исходный код

rangeSize :: ((), ()) -> Целое Исходный код

unsafeRangeSize :: ((), ()) -> Целое Исходный код

Ix Bool Source

Since: base-2.1

Подробные сведения об экземпляре

Определено в GHC.Internal.Ix

Методы

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

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

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

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

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

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

Ix Char Source

Since: base-2.1

Подробные сведения об экземпляре

Определено в GHC.Internal.Ix

Методы

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

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

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

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

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

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

Ix Int Source

Since: base-2.1

Подробные сведения об экземпляре

Определено в GHC.Internal.Ix

Методы

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

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

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

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

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

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

Ix Word Source

Since: base-4.6.0.0

Подробности экземпляра

Определено в GHC.Internal.Ix

Методы

range :: (Слово, Слово) -> [Слово] Источник

index :: (Слово, Слово) -> Слово -> Целое Источник

unsafeIndex :: (Слово, Слово) -> Слово -> Целое Источник

inRange :: (Слово, Слово) -> Слово -> Булево Источник

rangeSize :: (Слово, Слово) -> Целое Источник

unsafeRangeSize :: (Слово, Слово) -> Целое Источник

Ix a => Ix (Identity a) Источник

С момента: base-4.9.0.0

Подробности экземпляра

Определено в GHC.Internal.Data.Functor.Identity

Методы

range :: (Identity a, Identity a) -> [Identity a] Источник

index :: (Identity a, Identity a) -> Identity a -> Целое Источник

unsafeIndex :: (Identity a, Identity a) -> Identity a -> Целое Источник

inRange :: (Identity a, Identity a) -> Identity a -> Булево Источник

rangeSize :: (Identity a, Identity a) -> Целое Источник

unsafeRangeSize :: (Identity a, Identity a) -> Целое Источник

Ix a => Ix (Down a) Источник

С момента: base-4.14.0.0

Подробности экземпляра

Определено в GHC.Internal.Data.Ord

Методы

range :: (Down a, Down a) -> [Down a] Источник

index :: (Down a, Down a) -> Down a -> Целое Источник

unsafeIndex :: (Down a, Down a) -> Down a -> Целое Источник

inRange :: (Down a, Down a) -> Down a -> Булево Источник

rangeSize :: (Down a, Down a) -> Целое Источник

unsafeRangeSize :: (Down a, Down a) -> Целое Источник

Ix a => Ix (Solo a) Источник
Подробности экземпляра

Определено в GHC.Internal.Ix

Методы

range :: (Solo a, Solo a) -> [Solo a] Исходный код

index :: (Solo a, Solo a) -> Solo a -> Int Исходный код

unsafeIndex :: (Solo a, Solo a) -> Solo a -> Int Исходный код

inRange :: (Solo a, Solo a) -> Solo a -> Bool Исходный код

rangeSize :: (Solo a, Solo a) -> Int Исходный код

unsafeRangeSize :: (Solo a, Solo a) -> Int Исходный код

Ix (Proxy s) Исходный код

С момента: base-4.7.0.0

Подробности экземпляра

Определено в GHC.Internal.Data.Proxy

Методы

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 (a, b) Исходный код

С момента: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Ix

Методы

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) Исходный код

С момента: base-4.9.0.0

Информация о реализации

Определено в GHC.Internal.Data.Functor.Const

Краткое описание методов

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 a1, Ix a2, Ix a3) => Ix (a1, a2, a3) Исходный код

С версии: base-2.1

Информация о реализации

Определено в GHC.Internal.Ix

Краткое описание методов

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) Исходный код

С версии: base-2.1

Информация о реализации

Определено в GHC.Internal.Ix

Краткое описание методов

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) Исходный код

С версии: base-2.1

Информация о реализации

Определено в GHC.Internal.Ix

Краткое описание методов

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) Source

Since: base-4.15.0.0

Instance details

Defined in GHC.Internal.Ix

Methods

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

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

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

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

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

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

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

Since: base-4.15.0.0

Instance details

Defined in GHC.Internal.Ix

Methods

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

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

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

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

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

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

(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) Source

Since: base-4.15.0.0

Instance details

Defined in GHC.Internal.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)] Source

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 Source

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 Source

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 Source

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

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

(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) Source

Since: base-4.15.0.0

Подробности экземпляра

Определено в GHC.Internal.Ix

Методы

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) -> Целое Исходный код

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) -> Целое Исходный код

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) -> Булево Исходный код

rangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9), (a1, a2, a3, a4, a5, a6, a7, a8, a9)) -> Целое Исходный код

unsafeRangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9), (a1, a2, a3, a4, a5, a6, a7, a8, a9)) -> Целое Исходный код

(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) Исходный код

С: base-4.15.0.0

Подробности экземпляра

Определено в GHC.Internal.Ix

Методы

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) -> Целое Исходный код

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) -> Целое Исходный код

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) -> Булево Исходный код

rangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA)) -> Целое Исходный код

unsafeRangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA)) -> Целое Исходный код

(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) Исходный код

С: base-4.15.0.0

Подробности экземпляра

Определено в GHC.Internal.Ix

Методы

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) -> Целое Исходный код

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) -> Целое Исходный код

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) -> Булево Исходный код

rangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB)) -> Целое Исходный код

unsafeRangeSize :: ((a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB), (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB)) -> Целое Исходный код

(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) Исходный код

С: base-4.15.0.0

Подробности экземпляра

Определено в GHC.Internal.Ix

Методы

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 (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC) Источник

С момента: base-4.15.0.0

Подробности экземпляра

Определено в GHC.Internal.Ix

Методы

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 (a1, a2, a3, a4, a5, a6, a7, a8, a9, aA, aB, aC, aD) Источник

С момента: base-4.15.0.0

Подробности экземпляра

Определено в GHC.Internal.Ix

Методы

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) Источник

С момента: base-4.15.0.0

Подробности экземпляра

Определено в GHC.Internal.Ix

Методы

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 Исходный код

data Array i e Исходный код

Тип неизменяемых, нестрогих (упакованных) массивов с индексами в i и элементами в e.

Конструкторы

Array !i !i !Int (Array# e)
Экземпляры
Подробности о экземплярах
Functor (Array i) Источник

С версии: base-2.1

Подробности о экземпляре

Определено в GHC.Internal.Arr

Методы

fmap :: (a -> b) -> Array i a -> Array i b Источник

(<$) :: a -> Array i b -> Array i a Источник

Foldable (Array i) Источник

С версии: base-4.8.0.0

Подробности о экземпляре

Определено в GHC.Internal.Data.Foldable

Методы

fold :: Monoid m => Array i m -> m Источник

foldMap :: Monoid m => (a -> m) -> Array i a -> m Источник

foldMap' :: Monoid m => (a -> m) -> Array i a -> m Источник

foldr :: (a -> b -> b) -> b -> Array i a -> b Источник

foldr' :: (a -> b -> b) -> b -> Array i a -> b Источник

foldl :: (b -> a -> b) -> b -> Array i a -> b Источник

foldl' :: (b -> a -> b) -> b -> Array i a -> b Источник

foldr1 :: (a -> a -> a) -> Array i a -> a Источник

foldl1 :: (a -> a -> a) -> Array i a -> a Источник

toList :: Array i a -> [a] Источник

null :: Array i a -> Bool Источник

length :: Array i a -> Int Источник

elem :: Eq a => a -> Array i a -> Bool Источник

maximum :: Ord a => Array i a -> a Источник

minimum :: Ord a => Array i a -> a Источник

sum :: Num a => Array i a -> a Источник

product :: Num a => Array i a -> a Источник

Ix i => Traversable (Array i) Источник

С версии: base-2.1

Подробности о экземпляре

Определено в GHC.Internal.Data.Traversable

Методы

traverse :: Applicative f => (a -> f b) -> Array i a -> f (Array i b) Источник

sequenceA :: Applicative f => Array i (f a) -> f (Array i a) Источник

mapM :: Monad m => (a -> m b) -> Array i a -> m (Array i b) Источник

sequence :: Monad m => Array i (m a) -> m (Array i a) Источник

(Data a, Data b, Ix a) => Data (Array a b) Источник

С версии: base-4.8.0.0

Подробности экземпляра

Определено в GHC.Internal.Data.Data

Методы

gfoldl :: (forall d b0. Data d => c (d -> b0) -> d -> c b0) -> (forall g. g -> c g) -> Array a b -> c (Array a b) Исходный код

gunfold :: (forall b0 r. Data b0 => c (b0 -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Array a b) Исходный код

toConstr :: Array a b -> Constr Исходный код

dataTypeOf :: Array a b -> DataType Исходный код

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Array a b)) Исходный код

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Array a b)) Исходный код

gmapT :: (forall b0. Data b0 => b0 -> b0) -> Array a b -> Array a b Исходный код

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Array a b -> r Исходный код

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Array a b -> r Исходный код

gmapQ :: (forall d. Data d => d -> u) -> Array a b -> [u] Исходный код

gmapQi :: Int -> (forall d. Data d => d -> u) -> Array a b -> u Исходный код

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Array a b -> m (Array a b) Исходный код

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Array a b -> m (Array a b) Исходный код

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Array a b -> m (Array a b) Исходный код

(Ix a, Read a, Read b) => Read (Array a b) Исходный код

С момента: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Read

Методы

readsPrec :: Int -> ReadS (Array a b) Исходный код

readList :: ReadS [Array a b] Исходный код

readPrec :: ReadPrec (Array a b) Исходный код

readListPrec :: ReadPrec [Array a b] Исходный код

(Ix a, Show a, Show b) => Show (Array a b) Исходный код

С момента: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Arr

Методы

showsPrec :: Int -> Array a b -> ShowS Исходный код

show :: Array a b -> String Исходный код

showList :: [Array a b] -> ShowS Исходный код

(Ix i, Eq e) => Eq (Array i e) Исходный код

С момента: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Arr

Методы

(==) :: Массив i e -> Массив i e -> Булево Исходный код

(/=) :: Массив i e -> Массив i e -> Булево Исходный код

(Ix i, Ord e) => Ord (Массив i e) Исходный код

С момента: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Arr

Методы

compare :: Массив i e -> Массив i e -> Порядок Исходный код

(<) :: Массив i e -> Массив i e -> Булево Исходный код

(<=) :: Массив i e -> Массив i e -> Булево Исходный код

(>) :: Массив i e -> Массив i e -> Булево Исходный код

(>=) :: Массив i e -> Массив i e -> Булево Исходный код

max :: Массив i e -> Массив i e -> Массив i e Исходный код

min :: Массив i e -> Массив i e -> Массив i e Исходный код

тип STМассив s i e Исходный код

Изменяемые, упакованные, нестрогие массивы в ST монаде. Аргументы типа следующие:

  • s: аргумент переменной состояния для типа ST
  • i: тип индекса массива (должен быть экземпляром Ix)
  • e: тип элементов массива.

Конструкторы

STМассив !i !i !Целое (MutableArray# s e)
Экземпляры
Подробности экземпляров
Равенство (STМассив s i e) Исходный код

С момента: base-2.1

Подробности экземпляра

Определено в GHC.Internal.Arr

Методы

(==) :: STМассив s i e -> STМассив s i e -> Булево Исходный код

(/=) :: STМассив s i e -> STМассив s i e -> Булево Исходный код

arrEleBottom :: a Исходный код

массив Исходный код

Аргументы

:: Ix i
=> (i, i)

пара границ, каждая из которых имеет тип индекса массива. Эти границы — наименьший и наибольший индексы в массиве в указанном порядке. Например, вектор с началом от единицы длиной 10 имеет границы (1,10), а матрица с началом от единицы размером 10 на 10 имеет границы ((1,1),(10,10)).

-> [(i, e)]

список сопоставлений вида (индекс, значение). Обычно этот список выражается как выражение. Сопоставление (i, x) определяет значение массива в индексе i как x.

-> Массив i e

Создаёт массив с указанными границами, содержащий значения для заданных индексов в этих границах.

Массив неопределён (т. е. нижний предел) в случае, если какой-либо индекс в списке выходит за границы. Доклад Haskell 2010 далее уточняет, что если какие-либо два сопоставления в списке имеют одинаковый индекс, то значение в этом индексе неопределённо (т. е. нижний предел). Однако в реализации GHC значение в таком индексе равно значению последнего сопоставления с этим индексом в списке.

Поскольку индексы должны проверяться на эти ошибки, array является строгим по отношению к аргументу границ и индексам списка сопоставлений, но нестрогим по отношению к значениям. Таким образом, возможны рекурсии, такие как следующая:

a = array (1,100) ((1,1) : [(i, i * a!(i-1)) | i <- [2..100]])

Не каждый индекс в границах массива должен присутствовать в списке сопоставлений, но значения, связанные с индексами, которые не появляются, будут неопределёнными (т. е. нижними пределами).

Если в любом измерении нижняя граница больше верхней границы, то массив является допустимым, но пустым. Индексирование пустого массива всегда приводит к ошибке границ массива, но bounds всё равно возвращает границы, с которыми был создан массив.

listArray :: Ix i => (i, i) -> [e] -> Массив i e Исходный код

Создаёт массив из пары границ и списка значений в порядке индексов.

(!) :: Ix i => Массив i e -> i -> e infixl 9 Исходный код

Значение по заданному индексу в массиве.

safeRangeSize :: Ix i => (i, i) -> Целое Исходный код

negRange :: Целое Исходный код

safeIndex :: Ix i => (i, i) -> Int -> i -> Int Source

badSafeIndex Source

Аргументы

:: Int

Индекс, искомый для поиска.

-> Int

Максимальная граница массива.

-> Int

Это не Int. Это исключение.

Используется для выброса исключений в функциях проверки границ массива.

⚠ Эта функция выбрасывает SomeException во всех случаях.

Примеры
Развернуть
>>> badSafeIndex 2 5
*** Exception: Error in array index; 2 not in range [0..5)

bounds :: Array i e -> (i, i) Source

Границы, с которыми был создан массив.

numElements :: Array i e -> Int Source

Количество элементов в массиве.

numElementsSTArray :: STArray s i e -> Int Source

indices :: Ix i => Array i e -> [i] Source

Список индексов массива в порядке возрастания.

elems :: Array i e -> [e] Source

Список элементов массива в порядке индексов.

assocs :: Ix i => Array i e -> [(i, e)] Source

Список ассоциаций массива в порядке индексов.

accumArray Source

Аргументы

:: Ix i
=> (e -> a -> e)

Функция накопления

-> e

начальное значение

-> (i, i)

границы массива

-> [(i, a)]

список ассоциаций

-> Array i e

Функция accumArray обрабатывает повторяющиеся индексы в списке ассоциаций, используя функцию накопления, которая объединяет значения ассоциаций с одинаковым индексом.

Например, задан список значений некоторого типа индексов, hist генерирует гистограмму количества появлений каждого индекса в заданном диапазоне:

hist :: (Ix a, Num b) => (a,a) -> [a] -> Array a b
hist bnds is = accumArray (+) 0 bnds [(i, 1) | i<-is, inRange bnds i]

accumArray строго для каждого результата применения функции накопления, хотя она ленива для начального значения. Таким образом, в отличие от массивов, созданных с помощью array, накопленные массивы обычно не должны быть рекурсивными.

adjust :: (e -> a -> e) -> MutableArray# s e -> (Int, a) -> STRep s b -> STRep s b Source

(//) :: Ix i => Array i e -> [(i, e)] -> Array i e infixl 9 Source

Создает массив, идентичный первому аргументу, за исключением того, что он был обновлён ассоциациями в правом аргументе. Например, если m является 1-начальным, n матрицей n, то

m//[((i,i), 0) | i <- [1..n]]

является той же матрицей, за исключением того, что диагональ обнулена.

Повторяющиеся индексы в списке ассоциаций обрабатываются так же, как и для array: Haskell 2010 указывает, что результирующий массив неопределён (т.е. bottom), но реализация GHC использует последнюю ассоциацию для каждого индекса.

accum :: Ix i => (e -> a -> e) -> Array i e -> [(i, a)] -> Array i e Source

accum f принимает массив и список ассоциаций и накапливает пары из списка в массив с помощью функции накопления f. Таким образом, accumArray может быть определён с помощью accum:

accumArray f z b = accum f (array b [(i, z) | i <- range b])

accum строго для всех результатов применения функции накопления. Однако она ленива для начальных значений массива.

amap :: (a -> b) -> Array i a -> Array i b Source

ixmap :: (Ix i, Ix j) => (i, i) -> (i -> j) -> Array j e -> Array i e Source

ixmap позволяет выполнять преобразования над индексами массива. Его можно рассматривать как применение функции композиции справа к отображению, которое воплощает исходный массив.

Аналогичное преобразование значений массива может быть достигнуто с помощью fmap из Array экземпляра Functor класса.

eqArray :: (Ix i, Eq e) => Array i e -> Array i e -> Bool Source

cmpArray :: (Ix i, Ord e) => Array i e -> Array i e -> Ordering Source

cmpIntArray :: Ord e => Array Int e -> Array Int e -> Ordering Source

newSTArray :: Ix i => (i, i) -> e -> ST s (STArray s i e) Source

boundsSTArray :: STArray s i e -> (i, i) Source

readSTArray :: Ix i => STArray s i e -> i -> ST s e Source

writeSTArray :: Ix i => STArray s i e -> i -> e -> ST s () Source

freezeSTArray :: STArray s i e -> ST s (Array i e) Source

thawSTArray :: Array i e -> ST s (STArray s i e) Source

foldlElems :: (b -> a -> b) -> b -> Array i a -> b Source

Левостороннее свёртка по элементам

foldlElems' :: (b -> a -> b) -> b -> Array i a -> b Source

Строгая левосторонняя свёртка по элементам

foldl1Elems :: (a -> a -> a) -> Array i a -> a Source

Левосторонняя свёртка по элементам без начального значения

foldrElems :: (a -> b -> b) -> b -> Array i a -> b Source

Правосторонняя свёртка по элементам

foldrElems' :: (a -> b -> b) -> b -> Array i a -> b Source

Строгая правосторонняя свёртка по элементам

foldr1Elems :: (a -> a -> a) -> Array i a -> a Source

Правосторонняя свёртка по элементам без начального значения

Небезопасные операции

fill :: MutableArray# s e -> (Int, e) -> STRep s a -> STRep s a Source

done :: i -> i -> Int -> MutableArray# s e -> STRep s (Array i e) Source

unsafeArray :: Ix i => (i, i) -> [(Int, e)] -> Array i e Source

unsafeArray' :: (i, i) -> Int -> [(Int, e)] -> Array i e Source

lessSafeIndex :: Ix i => (i, i) -> Int -> i -> Int Source

unsafeAt :: Array i e -> Int -> e Source

unsafeReplace :: Array i e -> [(Int, e)] -> Array i e Source

unsafeAccumArray :: Ix i => (e -> a -> e) -> e -> (i, i) -> [(Int, a)] -> Array i e Source

unsafeAccumArray' :: (e -> a -> e) -> e -> (i, i) -> Int -> [(Int, a)] -> Array i e Source

unsafeAccum :: (e -> a -> e) -> Array i e -> [(Int, a)] -> Array i e Source

unsafeReadSTArray :: STArray s i e -> Int -> ST s e Source

unsafeWriteSTArray :: STArray s i e -> Int -> e -> ST s () Source

unsafeFreezeSTArray :: STArray s i e -> ST s (Array i e) Source

unsafeThawSTArray :: Array i e -> ST s (STArray s i e) Source

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/9.12.1/docs/libraries/base-4.21.0.0-8e62/GHC-Arr.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API