Spec-Zone.ru › Haskell 9

Type.Reflection.Unsafe

Авторские права (c) Университет Глазго, CWI 2001--2015
Лицензия BSD-стиль (см. файл libraries/base/LICENSE)
Безопасный Haskell Нет
Язык Haskell2010

Содержание

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

Описание

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

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

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

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

TypeRep — это конкретное представление (мономорфного) типа. TypeRep поддерживает достаточно эффективное равенство. См. Примечание [Большой план для Typeable] в GHC.Tc.Instance.Typeable

Экземпляры
Детали экземпляров

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

mkTyCon Источник

TestEquality (TypeRep :: k -> Type) Источник
Детали экземпляра

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

Методы

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

Show (TypeRep a) Источник
Детали экземпляра

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

Методы

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

show :: TypeRep a -> Строка Источник

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

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

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

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

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

Методы

(==) :: TypeRep a -> TypeRep a -> Булево Источник

(/=) :: TypeRep a -> TypeRep a -> Булево Источник

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

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

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

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

Методы

compare :: TypeRep a -> TypeRep a -> Порядок Источник

(<) :: TypeRep a -> TypeRep a -> Булево Источник

(<=) :: TypeRep a -> TypeRep a -> Булево Источник

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

(>=) :: TypeRep a -> TypeRep a -> Булево Источник

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

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

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

Аргументы

:: Строка

имя пакета

-> Строка

имя модуля

-> Строка

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

-> Целое число

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

-> KindRep

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

-> TyCon

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

Исключительно небезопасно.

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

Наблюдайте за Fingerprint представления типа.

С момента выпуска: base-4.8.0.0

someTypeRepFingerprint :: SomeTypeRep -> Отпечаток Источник

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

data KindRep Источник

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

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

KindRepTyConApp TyCon [KindRep]
KindRepVar !KindBndr
KindRepApp KindRep KindRep
KindRepFun KindRep KindRep
KindRepTYPE !RuntimeRep
KindRepTypeLitS TypeLitSort Addr#
KindRepTypeLitD TypeLitSort [Символ]

Связанные шаблоны

pattern KindRepTypeLit :: TypeLitSort -> Строка -> KindRep
Примеры
Подробности примеров
Вывод KindRep Источник
Подробности примера

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

Методы

showsPrec :: Целое число -> KindRep -> ShowS Источник

show :: KindRep -> Строка Источник

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

data TypeLitSort Источник

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

TypeLitSymbol
TypeLitNat
TypeLitChar
Примеры
Подробности примеров
Вывод TypeLitSort Источник

С момента выпуска: base-4.11.0.0

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

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

Методы

showsPrec :: Целое число -> TypeLitSort -> ShowS Источник

show :: TypeLitSort -> Строка Источник

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

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

data TyCon Источник

Примеры использования
Подробности примеров использования
Show TyCon Исходный код

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

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

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

Методы

showsPrec :: Int -> TyCon -> ShowS Исходный код

show :: TyCon -> Строка Исходный код

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

Eq TyCon Исходный код
Подробности примера

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

Методы

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

(/=) :: TyCon -> TyCon -> Булево Исходный код

Ord TyCon Исходный код
Подробности примера

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

Методы

compare :: TyCon -> TyCon -> Порядок Исходный код

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

(<=) :: TyCon -> TyCon -> Булево Исходный код

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

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

max :: TyCon -> TyCon -> TyCon Исходный код

min :: TyCon -> TyCon -> TyCon Исходный код

mkTrCon :: forall k (a :: k). TyCon -> [SomeTypeRep] -> TypeRep a Исходный код

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

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

tyConKindRep :: TyCon -> KindRep Исходный код

tyConKindArgs :: TyCon -> Int Исходный код

tyConFingerprint :: TyCon -> Отпечаток Исходный код

© 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/Type-Reflection-Unsafe.html

Spec-Zone.ru

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