Spec-Zone.ru › Haskell 8

Text.Read

Авторские права (с) Университет Глазго 2001
Лицензия BSD-стиль (см. файл libraries/base/LICENSE)
Поддержка libraries@haskell.org
Стабильность предварительная
Переносимость непереносимая (использует Text.ParserCombinators.ReadP)
Безопасный Haskell Надежный
Язык Haskell2010

Содержание

  • Класс Read
  • Функции Haskell 2010
  • Новые функции парсинга

Описание

Преобразование строк в значения.

Библиотека Text.Read — это стандартная библиотека для импорта возможностей класса Read. Только для GHC, она предлагает расширенный и значительно улучшенный класс Read, который представляет собой предлагаемую альтернативу классу Haskell 2010 Read. В частности, написание парсеров становится проще, а парсеры намного эффективнее.

Класс Read

class Read a where Исходный код

Парсинг String , производящий значения.

Производные экземпляры Read делают следующие предположения, которым подчиняются производные экземпляры Show:

  • Если конструктор определен как инфиксный оператор, то производный экземпляр Read будет парсить только инфиксные применения конструктора (а не префиксную форму).
  • Ассоциативность не используется для сокращения скобок, хотя приоритет может использоваться.
  • Если конструктор определен с помощью синтаксиса записей, производный экземпляр Read будет парсить только форму синтаксиса записей, и, более того, поля должны быть указаны в том же порядке, что и в исходном объявлении.
  • Производный экземпляр Read позволяет использовать произвольные отступы Haskell между токенами входной строки. Допускаются дополнительные скобки.

Например, при наличии объявлений

infixr 5 :^:
data Tree a =  Leaf a  |  Tree a :^: Tree a

производный экземпляр Read в Haskell 2010 эквивалентен

instance (Read a) => Read (Tree a) where

        readsPrec d r =  readParen (d > app_prec)
                         (\r -> [(Leaf m,t) |
                                 ("Leaf",s) <- lex r,
                                 (m,t) <- readsPrec (app_prec+1) s]) r

                      ++ readParen (d > up_prec)
                         (\r -> [(u:^:v,w) |
                                 (u,s) <- readsPrec (up_prec+1) r,
                                 (":^:",t) <- lex s,
                                 (v,w) <- readsPrec (up_prec+1) t]) r

          where app_prec = 10
                up_prec = 5

Обратите внимание, что правоассоциативность :^: не используется.

Производный экземпляр в GHC эквивалентен

instance (Read a) => Read (Tree a) where

        readPrec = parens $ (prec app_prec $ do
                                 Ident "Leaf" <- lexP
                                 m <- step readPrec
                                 return (Leaf m))

                     +++ (prec up_prec $ do
                                 u <- step readPrec
                                 Symbol ":^:" <- lexP
                                 v <- step readPrec
                                 return (u :^: v))

          where app_prec = 10
                up_prec = 5

        readListPrec = readListPrecDefault

Почему существуют как readsPrec, так и readPrec, и почему GHC выбирает реализацию readPrec в производных экземплярах Read вместо readsPrec? Причина в том, что readsPrec основана на типе ReadS, и хотя ReadS упоминается в отчете Haskell 2010, это не очень эффективный парсер-данных.

readPrec, с другой стороны, основана на гораздо более эффективном типе данных ReadPrec (также известном как "парсеры нового стиля"), но его определение основано на использовании языка расширения RankNTypes. Поэтому readPrec (и его кузен readListPrec) помечены как GHC-специфичные. Тем не менее, рекомендуется использовать readPrec вместо readsPrec всякий раз, когда это возможно, для повышения эффективности.

Как упоминалось выше, производные экземпляры Read в GHC будут реализовывать readPrec вместо readsPrec . По умолчанию реализации readsPrec (и его кузена readList ) просто используют readPrec под капотом. Если вы пишете экземпляр Read вручную, рекомендуется писать его так:

instance Read T where
  readPrec     = ...
  readListPrec = readListPrecDefault

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

readsPrec | readPrec

Методы

readsPrec Исходный код

Аргументы

:: Int

приоритет оператора окружающего контекста (число от 0 до 11). Приоритет применения функции 10.

-> ReadS a

пытается разобрать значение из начала строки, возвращая список пар (разборное значение, оставшаяся строка). Если успешного разбора нет, возвращаемый список пустой.

Производные экземпляры Read и Show удовлетворяют следующим условиям:

  • (x,"") является элементом (readsPrec d (showsPrec d x "")).

То есть, readsPrec разбирает строку, созданную showsPrec, и предоставляет значение, с которым showsPrec стартовало.

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

Метод readList предоставляется, чтобы позволить программисту указать специализированный способ разбора списков значений. Например, это используется экземпляром Read предварительно определенного типа Char, где ожидается, что значения типа String должны использовать двойные кавычки, а не квадратные скобки.

readPrec :: ReadPrec a Исходный код

Предлагаемая замена readsPrec с использованием парсеров нового стиля (только GHC).

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

Предлагаемая замена readList с использованием парсеров нового стиля (только GHC). По умолчанию определение использует readList. Экземпляры, которые определяют readPrec, должны также определить readListPrec как readListPrecDefault.

Примеры
Подробности примеров
Read Bool

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

Подробности примера

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

Методы

readsPrec :: Int -> ReadS Bool Исходный код

readList :: ReadS [Bool] Исходный код

readPrec :: ReadPrec Bool Исходный код

readListPrec :: ReadPrec [Bool] Исходный код

Read Символ

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

Подробности примера

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

Методы

readsPrec :: Int -> ReadS Символ Исходный код

readList :: ReadS [Символ] Исходный код

readPrec :: ReadPrec Символ Исходный код

readListPrec :: ReadPrec [Символ] Исходный код

Read Вещественное число двойной точности

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

Подробности примера

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

Методы

readsPrec :: Int -> ReadS Вещественное число двойной точности Исходный код

readList :: ReadS [Вещественное число двойной точности] Исходный код

readPrec :: ReadPrec Вещественное число двойной точности Исходный код

readListPrec :: ReadPrec [Вещественное число двойной точности] Исходный код

Read Число с плавающей точкой

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

Подробности примера

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

Методы

readsPrec :: Int -> ReadS Число с плавающей точкой Исходный код

readList :: ReadS [Число с плавающей точкой] Исходный код

readPrec :: ReadPrec Число с плавающей точкой Исходный код

readListPrec :: ReadPrec [Число с плавающей точкой] Исходный код

Read Целое число

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

Подробности примера

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

Методы

readsPrec :: Int -> ReadS Целое число Исходный код

readList :: ReadS [Целое число] Исходный код

readPrec :: ReadPrec Целое число Исходный код

readListPrec :: ReadPrec [Целое число] Исходный код

Read Int8

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

Подробности примера

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

Методы

readsPrec :: Int -> ReadS Int8 Исходный код

readList :: ReadS [Int8] Исходный код

readPrec :: ReadPrec Int8 Исходный код

readListPrec :: ReadPrec [Int8] Исходный код

Read Int16

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

Детали экземпляра

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

Методы

readsPrec :: Int -> ReadS Int16 Исходный код

readList :: ReadS [Int16] Исходный код

readPrec :: ReadPrec Int16 Исходный код

readListPrec :: ReadPrec [Int16] Исходный код

Read Int32

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

Детали экземпляра

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

Методы

readsPrec :: Int -> ReadS Int32 Исходный код

readList :: ReadS [Int32] Исходный код

readPrec :: ReadPrec Int32 Исходный код

readListPrec :: ReadPrec [Int32] Исходный код

Read Int64

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

Детали экземпляра

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

Методы

readsPrec :: Int -> ReadS Int64 Исходный код

readList :: ReadS [Int64] Исходный код

readPrec :: ReadPrec Int64 Исходный код

readListPrec :: ReadPrec [Int64] Исходный код

Read Integer

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

Детали экземпляра

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

Методы

readsPrec :: Int -> ReadS Integer Исходный код

readList :: ReadS [Integer] Исходный код

readPrec :: ReadPrec Integer Исходный код

readListPrec :: ReadPrec [Integer] Исходный код

Read Natural

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

Детали экземпляра

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

Методы

readsPrec :: Int -> ReadS Natural Исходный код

readList :: ReadS [Natural] Исходный код

readPrec :: ReadPrec Natural Исходный код

readListPrec :: ReadPrec [Natural] Исходный код

Read Ordering

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

Детали экземпляра

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

Методы

readsPrec :: Int -> ReadS Ordering Исходный код

readList :: ReadS [Ordering] Исходный код

readPrec :: ReadPrec Ordering Исходный код

readListPrec :: ReadPrec [Ordering] Исходный код

Read Word

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

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

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

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

readsPrec :: Int -> ReadS Word Source

readList :: ReadS [Word] Source

readPrec :: ReadPrec Word Source

readListPrec :: ReadPrec [Word] Source

Read Word8

Since: base-2.1

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

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

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

readsPrec :: Int -> ReadS Word8 Source

readList :: ReadS [Word8] Source

readPrec :: ReadPrec Word8 Source

readListPrec :: ReadPrec [Word8] Source

Read Word16

Since: base-2.1

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

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

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

readsPrec :: Int -> ReadS Word16 Source

readList :: ReadS [Word16] Source

readPrec :: ReadPrec Word16 Source

readListPrec :: ReadPrec [Word16] Source

Read Word32

Since: base-2.1

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

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

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

readsPrec :: Int -> ReadS Word32 Source

readList :: ReadS [Word32] Source

readPrec :: ReadPrec Word32 Source

readListPrec :: ReadPrec [Word32] Source

Read Word64

Since: base-2.1

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

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

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

readsPrec :: Int -> ReadS Word64 Source

readList :: ReadS [Word64] Source

readPrec :: ReadPrec Word64 Source

readListPrec :: ReadPrec [Word64] Source

Read ()

Since: base-2.1

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

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

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

readsPrec :: Int -> ReadS () Source

readList :: ReadS [()] Source

readPrec :: ReadPrec () Source

readListPrec :: ReadPrec [()] Source

Read GeneralCategory

Since: base-2.1

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

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

Методы

readsPrec :: Int -> ReadS GeneralCategory Источник

readList :: ReadS [GeneralCategory] Источник

readPrec :: ReadPrec GeneralCategory Источник

readListPrec :: ReadPrec [GeneralCategory] Источник

Read Lexeme

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

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

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

Методы

readsPrec :: Int -> ReadS Lexeme Источник

readList :: ReadS [Lexeme] Источник

readPrec :: ReadPrec Lexeme Источник

readListPrec :: ReadPrec [Lexeme] Источник

Read IOMode

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

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

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

Методы

readsPrec :: Int -> ReadS IOMode Источник

readList :: ReadS [IOMode] Источник

readPrec :: ReadPrec IOMode Источник

readListPrec :: ReadPrec [IOMode] Источник

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

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

Методы

readsPrec :: Int -> ReadS IntPtr Источник

readList :: ReadS [IntPtr] Источник

readPrec :: ReadPrec IntPtr Источник

readListPrec :: ReadPrec [IntPtr] Источник

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

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

Методы

readsPrec :: Int -> ReadS WordPtr Источник

readList :: ReadS [WordPtr] Источник

readPrec :: ReadPrec WordPtr Источник

readListPrec :: ReadPrec [WordPtr] Источник

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

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

Методы

readsPrec :: Int -> ReadS CUIntMax Источник

readList :: ReadS [CUIntMax] Источник

readPrec :: ReadPrec CUIntMax Источник

readListPrec :: ReadPrec [CUIntMax] Источник

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

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

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

readsPrec :: Int -> ReadS CIntMax Source

readList :: ReadS [CIntMax] Source

readPrec :: ReadPrec CIntMax Source

readListPrec :: ReadPrec [CIntMax] Source

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

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

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

readsPrec :: Int -> ReadS CUIntPtr Source

readList :: ReadS [CUIntPtr] Source

readPrec :: ReadPrec CUIntPtr Source

readListPrec :: ReadPrec [CUIntPtr] Source

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

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

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

readsPrec :: Int -> ReadS CIntPtr Source

readList :: ReadS [CIntPtr] Source

readPrec :: ReadPrec CIntPtr Source

readListPrec :: ReadPrec [CIntPtr] Source

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

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

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

readsPrec :: Int -> ReadS CSUSeconds Source

readList :: ReadS [CSUSeconds] Source

readPrec :: ReadPrec CSUSeconds Source

readListPrec :: ReadPrec [CSUSeconds] Source

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

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

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

readsPrec :: Int -> ReadS CUSeconds Source

readList :: ReadS [CUSeconds] Source

readPrec :: ReadPrec CUSeconds Source

readListPrec :: ReadPrec [CUSeconds] Source

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

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

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

readsPrec :: Int -> ReadS CTime Source

readList :: ReadS [CTime] Source

readPrec :: ReadPrec CTime Source

readListPrec :: ReadPrec [CTime] Source

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

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

Методы

readsPrec :: Int -> ReadS CClock Исходный код

readList :: ReadS [CClock] Исходный код

readPrec :: ReadPrec CClock Исходный код

readListPrec :: ReadPrec [CClock] Исходный код

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

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

Методы

readsPrec :: Int -> ReadS CSigAtomic Исходный код

readList :: ReadS [CSigAtomic] Исходный код

readPrec :: ReadPrec CSigAtomic Исходный код

readListPrec :: ReadPrec [CSigAtomic] Исходный код

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

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

Методы

readsPrec :: Int -> ReadS CWchar Исходный код

readList :: ReadS [CWchar] Исходный код

readPrec :: ReadPrec CWchar Исходный код

readListPrec :: ReadPrec [CWchar] Исходный код

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

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

Методы

readsPrec :: Int -> ReadS CSize Исходный код

readList :: ReadS [CSize] Исходный код

readPrec :: ReadPrec CSize Исходный код

readListPrec :: ReadPrec [CSize] Исходный код

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

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

Методы

readsPrec :: Int -> ReadS CPtrdiff Исходный код

readList :: ReadS [CPtrdiff] Исходный код

readPrec :: ReadPrec CPtrdiff Исходный код

readListPrec :: ReadPrec [CPtrdiff] Исходный код

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

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

Методы

readsPrec :: Int -> ReadS CDouble Исходный код

readList :: ReadS [CDouble] Исходный код

readPrec :: ReadPrec CDouble Исходный код

readListPrec :: ReadPrec [CDouble] Исходный код

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

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

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

readsPrec :: Int -> ReadS CFloat Source

readList :: ReadS [CFloat] Source

readPrec :: ReadPrec CFloat Source

readListPrec :: ReadPrec [CFloat] Source

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

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

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

readsPrec :: Int -> ReadS CBool Source

readList :: ReadS [CBool] Source

readPrec :: ReadPrec CBool Source

readListPrec :: ReadPrec [CBool] Source

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

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

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

readsPrec :: Int -> ReadS CULLong Source

readList :: ReadS [CULLong] Source

readPrec :: ReadPrec CULLong Source

readListPrec :: ReadPrec [CULLong] Source

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

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

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

readsPrec :: Int -> ReadS CLLong Source

readList :: ReadS [CLLong] Source

readPrec :: ReadPrec CLLong Source

readListPrec :: ReadPrec [CLLong] Source

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

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

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

readsPrec :: Int -> ReadS CULong Source

readList :: ReadS [CULong] Source

readPrec :: ReadPrec CULong Source

readListPrec :: ReadPrec [CULong] Source

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

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

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

readsPrec :: Int -> ReadS CLong Source

readList :: ReadS [CLong] Source

readPrec :: ReadPrec CLong Source

readListPrec :: ReadPrec [CLong] Source

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

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

Методы

readsPrec :: Int -> ReadS CUInt Исходный код

readList :: ReadS [CUInt] Исходный код

readPrec :: ReadPrec CUInt Исходный код

readListPrec :: ReadPrec [CUInt] Исходный код

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

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

Методы

readsPrec :: Int -> ReadS CInt Исходный код

readList :: ReadS [CInt] Исходный код

readPrec :: ReadPrec CInt Исходный код

readListPrec :: ReadPrec [CInt] Исходный код

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

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

Методы

readsPrec :: Int -> ReadS CUShort Исходный код

readList :: ReadS [CUShort] Исходный код

readPrec :: ReadPrec CUShort Исходный код

readListPrec :: ReadPrec [CUShort] Исходный код

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

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

Методы

readsPrec :: Int -> ReadS CShort Исходный код

readList :: ReadS [CShort] Исходный код

readPrec :: ReadPrec CShort Исходный код

readListPrec :: ReadPrec [CShort] Исходный код

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

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

Методы

readsPrec :: Int -> ReadS CUChar Исходный код

readList :: ReadS [CUChar] Исходный код

readPrec :: ReadPrec CUChar Исходный код

readListPrec :: ReadPrec [CUChar] Исходный код

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

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

Методы

readsPrec :: Int -> ReadS CSChar Исходный код

readList :: ReadS [CSChar] Исходный код

readPrec :: ReadPrec CSChar Исходный код

readListPrec :: ReadPrec [CSChar] Исходный код

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

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

Методы

readsPrec :: Int -> ReadS CChar Исходный код

readList :: ReadS [CChar] Исходный код

readPrec :: ReadPrec CChar Исходный код

readListPrec :: ReadPrec [CChar] Исходный код

Read SomeNat

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

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

Определено в GHC.TypeNats

Методы

readsPrec :: Int -> ReadS SomeNat Исходный код

readList :: ReadS [SomeNat] Исходный код

readPrec :: ReadPrec SomeNat Исходный код

readListPrec :: ReadPrec [SomeNat] Исходный код

Read SomeSymbol

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

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

Определено в GHC.TypeLits

Методы

readsPrec :: Int -> ReadS SomeSymbol Исходный код

readList :: ReadS [SomeSymbol] Исходный код

readPrec :: ReadPrec SomeSymbol Исходный код

readListPrec :: ReadPrec [SomeSymbol] Исходный код

Read DecidedStrictness

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

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

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

Методы

readsPrec :: Int -> ReadS DecidedStrictness Исходный код

readList :: ReadS [DecidedStrictness] Исходный код

readPrec :: ReadPrec DecidedStrictness Исходный код

readListPrec :: ReadPrec [DecidedStrictness] Исходный код

Read SourceStrictness

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

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

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

Методы

readsPrec :: Int -> ReadS SourceStrictness Исходный код

readList :: ReadS [SourceStrictness] Исходный код

readPrec :: ReadPrec SourceStrictness Исходный код

readListPrec :: ReadPrec [SourceStrictness] Исходный код

Read SourceUnpackedness

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

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

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

Методы

readsPrec :: Int -> ReadS SourceUnpackedness Исходный код

readList :: ReadS [SourceUnpackedness] Исходный код

readPrec :: ReadPrec SourceUnpackedness Исходный код

readListPrec :: ReadPrec [SourceUnpackedness] Исходный код

Read Associativity

Since: base-4.6.0.0

Instance details

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

Методы

readsPrec :: Int -> ReadS Associativity Source

readList :: ReadS [Associativity] Source

readPrec :: ReadPrec Associativity Source

readListPrec :: ReadPrec [Associativity] Source

Read Fixity

Since: base-4.6.0.0

Instance details

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

Методы

readsPrec :: Int -> ReadS Fixity Source

readList :: ReadS [Fixity] Source

readPrec :: ReadPrec Fixity Source

readListPrec :: ReadPrec [Fixity] Source

Read Any

Since: base-2.1

Instance details

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

Методы

readsPrec :: Int -> ReadS Any Source

readList :: ReadS [Any] Source

readPrec :: ReadPrec Any Source

readListPrec :: ReadPrec [Any] Source

Read All

Since: base-2.1

Instance details

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

Методы

readsPrec :: Int -> ReadS All Source

readList :: ReadS [All] Source

readPrec :: ReadPrec All Source

readListPrec :: ReadPrec [All] Source

Read SeekMode

Since: base-4.2.0.0

Instance details

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

Методы

readsPrec :: Int -> ReadS SeekMode Source

readList :: ReadS [SeekMode] Source

readPrec :: ReadPrec SeekMode Source

readListPrec :: ReadPrec [SeekMode] Source

Read NewlineMode

Since: base-4.3.0.0

Instance details

Определено в GHC.IO.Handle.Types

Методы

readsPrec :: Int -> ReadS NewlineMode Source

readList :: ReadS [NewlineMode] Source

readPrec :: ReadPrec NewlineMode Source

readListPrec :: ReadPrec [NewlineMode] Source

Read ПереносСтроки

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

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

Определено в GHC.IO.Handle.Types

Методы

readsPrec :: Int -> ReadS ПереносСтроки Исходный код

readList :: ReadS [ПереносСтроки] Исходный код

readPrec :: ReadPrec ПереносСтроки Исходный код

readListPrec :: ReadPrec [ПереносСтроки] Исходный код

Read РежимБуфера

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

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

Определено в GHC.IO.Handle.Types

Методы

readsPrec :: Int -> ReadS РежимБуфера Исходный код

readList :: ReadS [РежимБуфера] Исходный код

readPrec :: ReadPrec РежимБуфера Исходный код

readListPrec :: ReadPrec [РежимБуфера] Исходный код

Read КодВыхода
Подробности экземпляра

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

Методы

readsPrec :: Int -> ReadS КодВыхода Исходный код

readList :: ReadS [КодВыхода] Исходный код

readPrec :: ReadPrec КодВыхода Исходный код

readListPrec :: ReadPrec [КодВыхода] Исходный код

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

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

Методы

readsPrec :: Int -> ReadS ДескрипторФайла Исходный код

readList :: ReadS [ДескрипторФайла] Исходный код

readPrec :: ReadPrec ДескрипторФайла Исходный код

readListPrec :: ReadPrec [ДескрипторФайла] Исходный код

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

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

Методы

readsPrec :: Int -> ReadS CNfds Исходный код

readList :: ReadS [CNfds] Исходный код

readPrec :: ReadPrec CNfds Исходный код

readListPrec :: ReadPrec [CNfds] Исходный код

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

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

Методы

readsPrec :: Int -> ReadS CSocklen Исходный код

readList :: ReadS [CSocklen] Исходный код

readPrec :: ReadPrec CSocklen Исходный код

readListPrec :: ReadPrec [CSocklen] Исходный код

Read CKey
Instance details

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

Методы

readsPrec :: Int -> ReadS CKey Source

readList :: ReadS [CKey] Source

readPrec :: ReadPrec CKey Source

readListPrec :: ReadPrec [CKey] Source

Read CId
Instance details

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

Методы

readsPrec :: Int -> ReadS CId Source

readList :: ReadS [CId] Source

readPrec :: ReadPrec CId Source

readListPrec :: ReadPrec [CId] Source

Read CFsFilCnt
Instance details

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

Методы

readsPrec :: Int -> ReadS CFsFilCnt Source

readList :: ReadS [CFsFilCnt] Source

readPrec :: ReadPrec CFsFilCnt Source

readListPrec :: ReadPrec [CFsFilCnt] Source

Read CFsBlkCnt
Instance details

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

Методы

readsPrec :: Int -> ReadS CFsBlkCnt Source

readList :: ReadS [CFsBlkCnt] Source

readPrec :: ReadPrec CFsBlkCnt Source

readListPrec :: ReadPrec [CFsBlkCnt] Source

Read CClockId
Instance details

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

Методы

readsPrec :: Int -> ReadS CClockId Source

readList :: ReadS [CClockId] Source

readPrec :: ReadPrec CClockId Source

readListPrec :: ReadPrec [CClockId] Source

Read CBlkCnt
Instance details

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

Методы

readsPrec :: Int -> ReadS CBlkCnt Source

readList :: ReadS [CBlkCnt] Source

readPrec :: ReadPrec CBlkCnt Source

readListPrec :: ReadPrec [CBlkCnt] Source

Read CBlkSize
Информация о экземпляре

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

Методы

readsPrec :: Int -> ReadS CBlkSize Source

readList :: ReadS [CBlkSize] Source

readPrec :: ReadPrec CBlkSize Source

readListPrec :: ReadPrec [CBlkSize] Source

Read CRLim
Информация о экземпляре

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

Методы

readsPrec :: Int -> ReadS CRLim Source

readList :: ReadS [CRLim] Source

readPrec :: ReadPrec CRLim Source

readListPrec :: ReadPrec [CRLim] Source

Read CTcflag
Информация о экземпляре

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

Методы

readsPrec :: Int -> ReadS CTcflag Source

readList :: ReadS [CTcflag] Source

readPrec :: ReadPrec CTcflag Source

readListPrec :: ReadPrec [CTcflag] Source

Read CSpeed
Информация о экземпляре

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

Методы

readsPrec :: Int -> ReadS CSpeed Source

readList :: ReadS [CSpeed] Source

readPrec :: ReadPrec CSpeed Source

readListPrec :: ReadPrec [CSpeed] Source

Read CCc
Информация о экземпляре

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

Методы

readsPrec :: Int -> ReadS CCc Source

readList :: ReadS [CCc] Source

readPrec :: ReadPrec CCc Source

readListPrec :: ReadPrec [CCc] Source

Read CUid
Информация о экземпляре

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

Методы

readsPrec :: Int -> ReadS CUid Source

readList :: ReadS [CUid] Source

readPrec :: ReadPrec CUid Source

readListPrec :: ReadPrec [CUid] Source

Read CNlink
Информация о экземпляре

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

Методы

readsPrec :: Int -> ReadS CNlink Source

readList :: ReadS [CNlink] Source

readPrec :: ReadPrec CNlink Source

readListPrec :: ReadPrec [CNlink] Source

Read CGid
Информация о экземпляре

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

Методы

readsPrec :: Int -> ReadS CGid Source

readList :: ReadS [CGid] Source

readPrec :: ReadPrec CGid Source

readListPrec :: ReadPrec [CGid] Source

Read CSsize
Информация о экземпляре

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

Методы

readsPrec :: Int -> ReadS CSsize Source

readList :: ReadS [CSsize] Source

readPrec :: ReadPrec CSsize Source

readListPrec :: ReadPrec [CSsize] Source

Read CPid
Информация о экземпляре

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

Методы

readsPrec :: Int -> ReadS CPid Source

readList :: ReadS [CPid] Source

readPrec :: ReadPrec CPid Source

readListPrec :: ReadPrec [CPid] Source

Read COff
Информация о экземпляре

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

Методы

readsPrec :: Int -> ReadS COff Source

readList :: ReadS [COff] Source

readPrec :: ReadPrec COff Source

readListPrec :: ReadPrec [COff] Source

Read CMode
Информация о экземпляре

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

Методы

readsPrec :: Int -> ReadS CMode Source

readList :: ReadS [CMode] Source

readPrec :: ReadPrec CMode Source

readListPrec :: ReadPrec [CMode] Source

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

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

Методы

readsPrec :: Int -> ReadS CIno Исходный код

readList :: ReadS [CIno] Исходный код

readPrec :: ReadPrec CIno Исходный код

readListPrec :: ReadPrec [CIno] Исходный код

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

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

Методы

readsPrec :: Int -> ReadS CDev Исходный код

readList :: ReadS [CDev] Исходный код

readPrec :: ReadPrec CDev Исходный код

readListPrec :: ReadPrec [CDev] Исходный код

Read Версия

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

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

Определено в Data.Version

Методы

readsPrec :: Int -> ReadS Версия Исходный код

readList :: ReadS [Версия] Исходный код

readPrec :: ReadPrec Версия Исходный код

readListPrec :: ReadPrec [Версия] Исходный код

Read Порядок байтов

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

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

Определено в GHC.ByteOrder

Методы

readsPrec :: Int -> ReadS Порядок байтов Исходный код

readList :: ReadS [Порядок байтов] Исходный код

readPrec :: ReadPrec Порядок байтов Исходный код

readListPrec :: ReadPrec [Порядок байтов] Исходный код

Read Подробности сборки мусора

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

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

Определено в GHC.Stats

Методы

readsPrec :: Int -> ReadS Подробности сборки мусора Исходный код

readList :: ReadS [Подробности сборки мусора] Исходный код

readPrec :: ReadPrec Подробности сборки мусора Исходный код

readListPrec :: ReadPrec [Подробности сборки мусора] Исходный код

Read Статистика RTS

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

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

Определено в GHC.Stats

Методы

readsPrec :: Int -> ReadS Статистика RTS Исходный код

readList :: ReadS [Статистика RTS] Исходный код

readPrec :: ReadPrec Статистика RTS Исходный код

readListPrec :: ReadPrec [Статистика RTS] Исходный код

Read Void

Чтение значения Void всегда приводит к ошибке разбора, рассматривая Void как тип данных без конструкторов.

Since: base-4.8.0.0

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

Определено в Data.Void

Методы

readsPrec :: Int -> ReadS Void Исходный код

readList :: ReadS [Void] Исходный код

readPrec :: ReadPrec Void Исходный код

readListPrec :: ReadPrec [Void] Исходный код

Read a => Read [a]

Since: base-2.1

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

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

Методы

readsPrec :: Int -> ReadS [a] Исходный код

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

readPrec :: ReadPrec [a] Исходный код

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

Read a => Read (Maybe a)

Since: base-2.1

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

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

Методы

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

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

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

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

(Integral a, Read a) => Read (Ratio a)

Since: base-2.1

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

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

Методы

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

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

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

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

Read p => Read (Par1 p)

Since: base-4.7.0.0

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

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

Методы

readsPrec :: Int -> ReadS (Par1 p) Исходный код

readList :: ReadS [Par1 p] Исходный код

readPrec :: ReadPrec (Par1 p) Исходный код

readListPrec :: ReadPrec [Par1 p] Исходный код

Read a => Read (NonEmpty a)

Since: base-4.11.0.0

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

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

Методы

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

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

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

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

Read a => Read (Down a)

Этот экземпляр был бы эквивалентен производным экземплярам нового типа Down если бы поле getDown было удалено

С версии: base-4.7.0.0

Instance details

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

Methods

readsPrec :: Int -> ReadS (Down a) Source

readList :: ReadS [Down a] Source

readPrec :: ReadPrec (Down a) Source

readListPrec :: ReadPrec [Down a] Source

Read a => Read (Product a)

С версии: base-2.1

Instance details

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

Methods

readsPrec :: Int -> ReadS (Product a) Source

readList :: ReadS [Product a] Source

readPrec :: ReadPrec (Product a) Source

readListPrec :: ReadPrec [Product a] Source

Read a => Read (Sum a)

С версии: base-2.1

Instance details

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

Methods

readsPrec :: Int -> ReadS (Sum a) Source

readList :: ReadS [Sum a] Source

readPrec :: ReadPrec (Sum a) Source

readListPrec :: ReadPrec [Sum a] Source

Read a => Read (Dual a)

С версии: base-2.1

Instance details

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

Methods

readsPrec :: Int -> ReadS (Dual a) Source

readList :: ReadS [Dual a] Source

readPrec :: ReadPrec (Dual a) Source

readListPrec :: ReadPrec [Dual a] Source

Read a => Read (Last a)

С версии: base-2.1

Instance details

Определено в Data.Monoid

Methods

readsPrec :: Int -> ReadS (Last a) Source

readList :: ReadS [Last a] Source

readPrec :: ReadPrec (Last a) Source

readListPrec :: ReadPrec [Last a] Source

Read a => Read (First a)

С версии: base-2.1

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

Определено в Data.Monoid

Методы

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

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

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

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

Read a => Read (Identity a)

Этот экземпляр был бы эквивалентен производным экземплярам Identity newtype, если бы поле runIdentity было удалено

С версии: base-4.8.0.0

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

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

Методы

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

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

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

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

Read a => Read (ZipList a)

С версии: base-4.7.0.0

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

Определено в Control.Applicative

Методы

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

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

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

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

Read a => Read (Option a)

С версии: base-4.9.0.0

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

Определено в Data.Semigroup

Методы

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

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

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

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

Read m => Read (WrappedMonoid m)

С версии: base-4.9.0.0

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

Определено в Data.Semigroup

Методы

readsPrec :: Int -> ReadS (WrappedMonoid m) Исходный код

readList :: ReadS [WrappedMonoid m] Исходный код

readPrec :: ReadPrec (WrappedMonoid m) Исходный код

readListPrec :: ReadPrec [WrappedMonoid m] Исходный код

Read a => Read (Last a)

С версии: base-4.9.0.0

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

Определено в Data.Semigroup

Методы

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

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

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

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

Read a => Read (First a)

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

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

Определено в Data.Semigroup

Методы

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

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

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

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

Read a => Read (Max a)

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

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

Определено в Data.Semigroup

Методы

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

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

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

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

Read a => Read (Min a)

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

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

Определено в Data.Semigroup

Методы

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

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

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

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

Read a => Read (Complex a)

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

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

Определено в Data.Complex

Методы

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

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

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

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

(Read a, Read b) => Read (Either a b)

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

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

Определено в Data.Either

Методы

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

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

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

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

Read (V1 p)

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

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

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

Методы

readsPrec :: Int -> ReadS (V1 p) Исходный код

readList :: ReadS [V1 p] Исходный код

readPrec :: ReadPrec (V1 p) Исходный код

readListPrec :: ReadPrec [V1 p] Исходный код

Read (U1 p)

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

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

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

Методы

readsPrec :: Int -> ReadS (U1 p) Исходный код

readList :: ReadS [U1 p] Исходный код

readPrec :: ReadPrec (U1 p) Исходный код

readListPrec :: ReadPrec [U1 p] Исходный код

(Read a, Read b) => Read (a, b)

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

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

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

Методы

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

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

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

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

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

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

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

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

Методы

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

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

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

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

Read (Proxy t)

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

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

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

Методы

readsPrec :: Int -> ReadS (Proxy t) Исходный код

readList :: ReadS [Proxy t] Исходный код

readPrec :: ReadPrec (Proxy t) Исходный код

readListPrec :: ReadPrec [Proxy t] Исходный код

(Read a, Read b) => Read (Arg a b)

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

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

Определено в Data.Semigroup

Методы

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

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

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

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

HasResolution a => Read (Fixed a)

Since: base-4.3.0.0

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

Определено в Data.Fixed

Методы

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

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

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

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

Read (f p) => Read (Rec1 f p)

Since: base-4.7.0.0

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

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

Методы

readsPrec :: Int -> ReadS (Rec1 f p) Исходный код

readList :: ReadS [Rec1 f p] Исходный код

readPrec :: ReadPrec (Rec1 f p) Исходный код

readListPrec :: ReadPrec [Rec1 f p] Исходный код

(Read a, Read b, Read c) => Read (a, b, c)

Since: base-2.1

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

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

Методы

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

readList :: ReadS [(a, b, c)] Исходный код

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

readListPrec :: ReadPrec [(a, b, c)] Исходный код

a ~ b => Read (a :~: b)

Since: base-4.7.0.0

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

Определено в Data.Type.Equality

Методы

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

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

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

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

Coercible a b => Read (Coercion a b)

Since: base-4.7.0.0

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

Определено в Data.Type.Coercion

Методы

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

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

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

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

Read (f a) => Read (Alt f a)

Since: base-4.8.0.0

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

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

Методы

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

readList :: ReadS [Alt f a] Исходный код

readPrec :: ReadPrec (Alt f a) Исходный код

readListPrec :: ReadPrec [Alt f a] Исходный код

Read (f a) => Read (Ap f a)

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

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

Определено в Data.Monoid

Методы

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

readList :: ReadS [Ap f a] Исходный код

readPrec :: ReadPrec (Ap f a) Исходный код

readListPrec :: ReadPrec [Ap f a] Исходный код

Read a => Read (Const a b)

Этот экземпляр был бы эквивалентен производным экземплярам Const newtype, если бы поле getConst было удалено

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

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

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

Методы

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

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

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

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

Read c => Read (K1 i c p)

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

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

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

Методы

readsPrec :: Int -> ReadS (K1 i c p) Исходный код

readList :: ReadS [K1 i c p] Исходный код

readPrec :: ReadPrec (K1 i c p) Исходный код

readListPrec :: ReadPrec [K1 i c p] Исходный код

(Read (f p), Read (g p)) => Read ((f :+: g) p)

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

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

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

Методы

readsPrec :: Int -> ReadS ((f :+: g) p) Исходный код

readList :: ReadS [(f :+: g) p] Исходный код

readPrec :: ReadPrec ((f :+: g) p) Исходный код

readListPrec :: ReadPrec [(f :+: g) p] Исходный код

(Read (f p), Read (g p)) => Read ((f :*: g) p)

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

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

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

Методы

readsPrec :: Int -> ReadS ((f :*: g) p) Исходный код

readList :: ReadS [(f :*: g) p] Исходный код

readPrec :: ReadPrec ((f :*: g) p) Исходный код

readListPrec :: ReadPrec [(f :*: g) p] Исходный код

(Read a, Read b, Read c, Read d) => Read (a, b, c, d)

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

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

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

Методы

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

readList :: ReadS [(a, b, c, d)] Исходный код

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

readListPrec :: ReadPrec [(a, b, c, d)] Исходный код

a ~~ b => Read (a :~~: b)

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

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

Определено в Data.Type.Equality

Методы

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

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

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

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

(Read1 f, Read1 g, Read a) => Read (Sum f g a)

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

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

Определено в Data.Functor.Sum

Методы

readsPrec :: Int -> ReadS (Sum f g a) Исходный код

readList :: ReadS [Sum f g a] Исходный код

readPrec :: ReadPrec (Sum f g a) Исходный код

readListPrec :: ReadPrec [Sum f g a] Исходный код

(Read1 f, Read1 g, Read a) => Read (Product f g a)

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

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

Определено в Data.Functor.Product

Методы

readsPrec :: Int -> ReadS (Product f g a) Исходный код

readList :: ReadS [Product f g a] Исходный код

readPrec :: ReadPrec (Product f g a) Исходный код

readListPrec :: ReadPrec [Product f g a] Исходный код

Read (f p) => Read (M1 i c f p)

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

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

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

Методы

readsPrec :: Int -> ReadS (M1 i c f p) Исходный код

readList :: ReadS [M1 i c f p] Исходный код

readPrec :: ReadPrec (M1 i c f p) Исходный код

readListPrec :: ReadPrec [M1 i c f p] Исходный код

Read (f (g p)) => Read ((f :.: g) p)

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

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

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

Методы

readsPrec :: Int -> ReadS ((f :.: g) p) Исходный код

readList :: ReadS [(f :.: g) p] Исходный код

readPrec :: ReadPrec ((f :.: g) p) Исходный код

readListPrec :: ReadPrec [(f :.: g) p] Исходный код

(Read a, Read b, Read c, Read d, Read e) => Read (a, b, c, d, e)

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

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

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

Методы

readsPrec :: Int -> ReadS (a, b, c, d, e) Исходный код

readList :: ReadS [(a, b, c, d, e)] Исходный код

readPrec :: ReadPrec (a, b, c, d, e) Исходный код

readListPrec :: ReadPrec [(a, b, c, d, e)] Исходный код

(Read1 f, Read1 g, Read a) => Read (Compose f g a)

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

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

Определено в Data.Functor.Compose

Методы

readsPrec :: Int -> ReadS (Compose f g a) Исходный код

readList :: ReadS [Compose f g a] Исходный код

readPrec :: ReadPrec (Compose f g a) Исходный код

readListPrec :: ReadPrec [Compose f g a] Исходный код

(Read a, Read b, Read c, Read d, Read e, Read f) => Read (a, b, c, d, e, f)

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

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

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

Методы

readsPrec :: Int -> ReadS (a, b, c, d, e, f) Исходный код

readList :: ReadS [(a, b, c, d, e, f)] Исходный код

readPrec :: ReadPrec (a, b, c, d, e, f) Исходный код

readListPrec :: ReadPrec [(a, b, c, d, e, f)] Исходный код

(Read a, Read b, Read c, Read d, Read e, Read f, Read g) => Read (a, b, c, d, e, f, g)

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

Instance details

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

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

readsPrec :: Int -> ReadS (a, b, c, d, e, f, g) Source

readList :: ReadS [(a, b, c, d, e, f, g)] Source

readPrec :: ReadPrec (a, b, c, d, e, f, g) Source

readListPrec :: ReadPrec [(a, b, c, d, e, f, g)] Source

(Read a, Read b, Read c, Read d, Read e, Read f, Read g) => Read (a, b, c, d, e, f, g)

Since: base-2.1

Instance details

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

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

readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h) Source

readList :: ReadS [(a, b, c, d, e, f, g, h)] Source

readPrec :: ReadPrec (a, b, c, d, e, f, g, h) Source

readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h)] Source

(Read a, Read b, Read c, Read d, Read e, Read f, Read g, Read h) => Read (a, b, c, d, e, f, g, h)

Since: base-2.1

Instance details

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

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

readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h, i) Source

readList :: ReadS [(a, b, c, d, e, f, g, h, i)] Source

readPrec :: ReadPrec (a, b, c, d, e, f, g, h, i) Source

readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h, i)] Source

(Read a, Read b, Read c, Read d, Read e, Read f, Read g, Read h, Read i) => Read (a, b, c, d, e, f, g, h, i)

Since: base-2.1

Instance details

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

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

readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h, i, j) Source

readList :: ReadS [(a, b, c, d, e, f, g, h, i, j)] Source

readPrec :: ReadPrec (a, b, c, d, e, f, g, h, i, j) Source

readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h, i, j)] Source

(Read a, Read b, Read c, Read d, Read e, Read f, Read g, Read h, Read i, Read j) => Read (a, b, c, d, e, f, g, h, i, j)

Since: base-2.1

Instance details

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

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

readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h, i, j, k) Source

readList :: ReadS [(a, b, c, d, e, f, g, h, i, j, k)] Source

readPrec :: ReadPrec (a, b, c, d, e, f, g, h, i, j, k) Source

readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h, i, j, k)] Source

(Read a, Read b, Read c, Read d, Read e, Read f, Read g, Read h, Read i, Read j, Read k) => Read (a, b, c, d, e, f, g, h, i, j, k)

Since: base-2.1

Instance details

Defined in GHC.Read

Методы

readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h, i, j, k, l) Source

readList :: ReadS [(a, b, c, d, e, f, g, h, i, j, k, l)] Source

readPrec :: ReadPrec (a, b, c, d, e, f, g, h, i, j, k, l) Source

readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h, i, j, k, l)] Source

(Read a, Read b, Read c, Read d, Read e, Read f, Read g, Read h, Read i, Read j, Read k, Read l, Read m) => Read (a, b, c, d, e, f, g, h, i, j, k, l, m)

Since: base-2.1

Instance details

Defined in GHC.Read

Методы

readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h, i, j, k, l, m) Source

readList :: ReadS [(a, b, c, d, e, f, g, h, i, j, k, l, m)] Source

readPrec :: ReadPrec (a, b, c, d, e, f, g, h, i, j, k, l, m) Source

readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h, i, j, k, l, m)] Source

(Read a, Read b, Read c, Read d, Read e, Read f, Read g, Read h, Read i, Read j, Read k, Read l, Read m, Read n) => Read (a, b, c, d, e, f, g, h, i, j, k, l, m, n)

Since: base-2.1

Instance details

Defined in GHC.Read

Методы

readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h, i, j, k, l, m, n) Source

readList :: ReadS [(a, b, c, d, e, f, g, h, i, j, k, l, m, n)] Source

readPrec :: ReadPrec (a, b, c, d, e, f, g, h, i, j, k, l, m, n) Source

readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h, i, j, k, l, m, n)] Source

(Read a, Read b, Read c, Read d, Read e, Read f, Read g, Read h, Read i, Read j, Read k, Read l, Read m, Read n, Read o) => Read (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)

Since: base-2.1

Instance details

Defined in GHC.Read

Методы

readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) Source

readList :: ReadS [(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)] Source

readPrec :: ReadPrec (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) Source

readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)] Source

type ReadS a = String -> [(a, String)] Source

Парсер для типа a, представленный как функция, которая принимает String и возвращает список возможных разборов в виде пар (a,String).

Обратите внимание, что этот тип парсера с возвратом назад очень неэффективен; чтение большой структуры может быть довольно медленным (см. ReadP).

Функции Haskell 2010

reads :: Read a => ReadS a Source

эквивалентно readsPrec с приоритетом 0.

read :: Read a => String -> a Source

Функция read считывает входные данные из строки, которая должна быть полностью использована процессом ввода. read завершается с ошибкой error, если разбор не удался, поэтому его использование в реальных приложениях не рекомендуется. Используйте readMaybe или readEither в качестве безопасных альтернатив.

>>> read "123" :: Int
123
>>> read "hello" :: Int
*** Exception: Prelude.read: no parse

readParen :: Bool -> ReadS a -> ReadS a Source

readParen True p разбирает то, что разбирает p, но заключенное в скобки.

readParen False p парсит то, что парсит p, но необязательно заключённое в скобки.

lex :: ReadS Строка Исходный код

Функция lex считывает один лексем из входных данных, отбрасывает начальные пробелы и возвращает символы, составляющие лексем. Если входная строка содержит только пробелы, то lex возвращает один успешный `лексем`, состоящий из пустой строки. (Таким образом lex "" = [("","")].) Если в начале входной строки нет законного лексема, то lex терпит неудачу (т.е. возвращает []).

Этот лексический анализатор не полностью соответствует синтаксису Haskell в следующих аспектах:

  • Квалифицированные имена не обрабатываются должным образом
  • Восьмеричные и шестнадцатеричные числа не распознаются как один токен
  • Комментарии не обрабатываются должным образом

Новые функции разбора

module Text.ParserCombinators.ReadPrec

data Лексема Исходный код

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

Символ Символ

Символьный литерал

Строка Строка

Строковый литерал, с интерпретацией экранирования

Пункт Строка

Пунктуация или зарезервированный символ, например (, ::

Идентификатор Строка

Идентификатор Haskell, например foo, Baz

Символ Строка

Символ Haskell, например >>, :%

Число Число

С версии: base-4.6.0.0

КОНЕЦ_ФАЙЛА
Примеры
Подробности примеров
Eq Лексема

С версии: base-2.1

Подробности примеров

Определено в Text.Read.Lex

Методы

равно :: Лексема -> Лексема -> Булево Исходный код

не равно :: Лексема -> Лексема -> Булево Исходный код

Read Лексема

С версии: base-2.1

Подробности примеров

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

Методы

readsPrec :: Целое -> ReadS Лексема Исходный код

readList :: ReadS [Лексема] Исходный код

readPrec :: ReadPrec Лексема Исходный код

readListPrec :: ReadPrec [Лексема] Исходный код

Show Лексема

С версии: base-2.1

Подробности примеров

Определено в Text.Read.Lex

Методы

showsPrec :: Целое -> Лексема -> ShowS Исходный код

отображение :: Лексема -> Строка Исходный код

отображение_списка :: [Лексема] -> ShowS Исходный код

lexP :: ReadPrec Лексема Исходный код

Разбор одного лексема

скобки :: ReadPrec a -> ReadPrec a Исходный код

(parens p) парсит "P", "(P0)", "((P0))", и т.д., где p парсит "P" в текущем контексте приоритета и парсит "P0" в контексте приоритета ноль

readListDefault :: Read a => ReadS [a] Исходный код

Возможная замена определения метода readList (только GHC). Это необходимо только для GHC, и даже тогда только для Read случаев, где readListPrec не определено как readListPrecDefault.

readListPrecDefault :: Read a => ReadPrec [a] Исходный код

Возможная замена определения метода readListPrec, определённого с использованием readPrec (только GHC).

readEither :: Read a => Строка -> Either Строка a Исходный код

Разбор строки с помощью примера Read. Успешно, если существует ровно один допустимый результат. Значение Left указывает на ошибку разбора.

>>> readEither "123" :: Either String Int
Right 123
>>> readEither "hello" :: Either String Int
Left "Prelude.read: no parse"

С версии: base-4.6.0.0

readMaybe :: Read a => Строка -> Может a Исходный код

Разбор строки с помощью примера Read. Успешно, если существует ровно один допустимый результат.

>>> readMaybe "123" :: Maybe Int
Just 123
>>> readMaybe "hello" :: Maybe Int
Nothing

С версии: base-4.6.0.0

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/8.10.2/docs/html/libraries/base-4.14.1.0/Text-Read.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API