Spec-Zone.ru › Haskell 7

Data.Dynamic

Copyright (c) The University of Glasgow 2001
License BSD-style (see the file libraries/base/LICENSE)
Maintainer libraries@haskell.org
Stability experimental
Portability portable
Safe Haskell Trustworthy
Language Haskell2010

Содержание

  • Тип Dynamic
  • Преобразование в Dynamic и обратно
  • Применение функций динамического типа

Описание

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

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

module Data.Typeable

Тип Dynamic

data Dynamic Source

Значение типа Dynamic — это объект, инкапсулированный вместе со своим типом.

Значение типа Dynamic может представлять только мономорфное значение; попытка создать значение типа Dynamic из полиморфного выражения приведёт к ошибке неоднозначности (см. toDyn).

Вывод типа значения типа Dynamic возвращает красиво отформатированное представление типа объекта; полезно для отладки.

Примеры

Show Dynamic
Exception Dynamic

Преобразование в Dynamic и обратно

toDyn :: Typeable a => a -> Dynamic Source

Преобразует произвольное значение в объект типа Dynamic.

Тип объекта должен быть экземпляром Typeable, что гарантирует, что в Dynamic могут быть преобразованы только объекты мономорфного типа. Для преобразования полиморфного объекта в Dynamic, присвойте ему мономорфную сигнатуру типа. Например:

   toDyn (id :: Int -> Int)

fromDyn Source

Аргументы

:: Typeable a
=> Dynamic

объект динамического типа

-> a

значение по умолчанию

-> a

возвращает: значение первого аргумента, если у него правильный тип, иначе значение второго аргумента.

Преобразует объект типа Dynamic обратно в обычное значение Haskell правильного типа. См. также fromDynamic.

fromDynamic Source

Аргументы

:: Typeable a
=> Dynamic

объект динамического типа

-> Maybe a

возвращает: Just a, если объект динамического типа имеет правильный тип (и a — это его значение), или Nothing в противном случае.

Преобразует объект типа Dynamic обратно в обычное значение Haskell правильного типа. См. также fromDyn.

Применение функций динамического типа

dynApply :: Dynamic -> Dynamic -> Maybe Dynamic Source

dynApp :: Dynamic -> Dynamic -> Dynamic Source

dynTypeRep :: Dynamic -> TypeRep Source

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/7.10.3/docs/html/libraries/base-4.8.2.0/Data-Dynamic.html

Spec-Zone.ru

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