Spec-Zone.ru › Haskell 9

Type.Reflection.Unsafe

Авторское право (c) The University of Glasgow CWI 2001--2015
Лицензия BSD-style (см. файл libraries/base/LICENSE)
Безопасный Haskell Нет
Язык Haskell2010

Содержание

  • Представления типов
  • Представления родов
  • Конструкторы типов

Описание

Представления типов TyCon и TypeRep, а также функция mkTyCon, используемая производными экземплярами Typeable для создания TyConов.

Имейте в виду: эти функции можно использовать для создания представлений типов с некорректными родами.

Представления типов

data TypeRep (a :: k) Источник

TypeRep — конкретное представление (мономорфного) типа. TypeRep поддерживает достаточно эффективное сравнение на равенство. См. примечание [Grand plan for Typeable] в GHC.Tc.Instance.Typeable

Экземпляры
Сведения об экземплярах
TestEquality (TypeRep :: k -> Type) Источник
Сведения об экземпляре

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

Методы

testEquality :: forall (a :: k) (b :: k). TypeRep a -> TypeRep b -> Maybe (a :~: b) Источник

Eq (TypeRep a) Источник

Начиная с: base-2.1

Сведения об экземпляре

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

Методы

(==) :: TypeRep a -> TypeRep a -> Bool Источник

(/=) :: TypeRep a -> TypeRep a -> Bool Источник

Ord (TypeRep a) Источник

Начиная с: base-4.4.0.0

Сведения об экземпляре

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

Методы

compare :: TypeRep a -> TypeRep a -> Ordering Источник

(<) :: TypeRep a -> TypeRep a -> Bool Источник

(<=) :: TypeRep a -> TypeRep a -> Bool Источник

(>) :: TypeRep a -> TypeRep a -> Bool Источник

(>=) :: TypeRep a -> TypeRep a -> Bool Источник

max :: TypeRep a -> TypeRep a -> TypeRep a Источник

min :: TypeRep a -> TypeRep a -> TypeRep a Источник

Show (TypeRep a) Источник
Сведения об экземпляре

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

Методы

showsPrec :: Int -> TypeRep a -> ShowS Источник

show :: TypeRep a -> String Источник

showList :: [TypeRep a] -> ShowS Источник

mkTrApp :: forall k1 k2 (a :: k1 -> k2) (b :: k1). TypeRep a -> TypeRep b -> TypeRep (a b) Источник

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

mkTyCon Источник

Аргументы

:: String

имя пакета

-> String

имя модуля

-> String

имя конструктора типа

-> Int

число переменных рода

-> KindRep

представление рода

-> TyCon

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

Невероятно небезопасно.

typeRepFingerprint :: forall {k} (a :: k). TypeRep a -> Fingerprint Источник

Получить Fingerprint представления типа

Начиная с: base-4.8.0.0

someTypeRepFingerprint :: SomeTypeRep -> Fingerprint Источник

Представления родов

data KindRep Источник

Представление, создаваемое GHC для получения рода TypeRep.

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

KindRepTyConApp TyCon [KindRep]
KindRepVar !KindBndr
KindRepApp KindRep KindRep
KindRepFun KindRep KindRep
KindRepTYPE !RuntimeRep
KindRepTypeLitS TypeLitSort Addr#
KindRepTypeLitD TypeLitSort [Char]

Объединённые шаблоны

pattern KindRepTypeLit :: TypeLitSort -> String -> KindRep
Экземпляры
Сведения об экземплярах
Show KindRep Источник
Сведения об экземпляре

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

Методы

showsPrec :: Int -> KindRep -> ShowS Источник

show :: KindRep -> String Источник

showList :: [KindRep] -> ShowS Источник

data TypeLitSort Источник

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

TypeLitSymbol
TypeLitNat
TypeLitChar
Экземпляры
Сведения об экземплярах
Show TypeLitSort Источник

Начиная с: base-4.11.0.0

Сведения об экземпляре

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

Методы

showsPrec :: Int -> TypeLitSort -> ShowS Источник

show :: TypeLitSort -> String Источник

showList :: [TypeLitSort] -> ShowS Источник

Конструкторы типов

data TyCon Источник

Экземпляры
Сведения об экземплярах
Eq TyCon Источник
Сведения об экземпляре

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

Методы

(==) :: TyCon -> TyCon -> Bool Источник

(/=) :: TyCon -> TyCon -> Bool Источник

Ord TyCon Источник
Сведения об экземпляре

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

Методы

compare :: TyCon -> TyCon -> Ordering Источник

(<) :: TyCon -> TyCon -> Bool Источник

(<=) :: TyCon -> TyCon -> Bool Источник

(>) :: TyCon -> TyCon -> Bool Источник

(>=) :: TyCon -> TyCon -> Bool Источник

max :: TyCon -> TyCon -> TyCon Источник

min :: TyCon -> TyCon -> TyCon Источник

Show TyCon Источник

Начиная с: base-2.1

Сведения об экземпляре

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

Методы

showsPrec :: Int -> TyCon -> ShowS Источник

show :: TyCon -> String Источник

showList :: [TyCon] -> ShowS Источник

mkTrCon :: forall k (a :: k). TyCon -> [SomeTypeRep] -> TypeRep a Источник

Создаёт представление для конструктора типа, применённого к мономорфному роду.

Обратите внимание: это небезопасно, поскольку позволяет создавать типы с некорректными родами.

tyConKindRep :: TyCon -> KindRep Источник

tyConKindArgs :: TyCon -> Int Источник

tyConFingerprint :: TyCon -> Fingerprint Источник

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/9.14.1/docs/libraries/base-4.22.0.0-66f8/Type-Reflection-Unsafe.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API