Spec-Zone.ru › Haskell 7

Data.Fixed

Copyright (c) Ashley Yakeley 2005, 2006, 2009
License BSD-style (see the file libraries/base/LICENSE)
Maintainer Ashley Yakeley <ashley@semantic.org>
Stability experimental
Portability portable
Safe Haskell Trustworthy
Language Haskell2010

Описание

Этот модуль определяет тип "Fixed" для арифметики с фиксированной точностью. Параметром Fixed является любой тип, который является экземпляром HasResolution. HasResolution имеет единственный метод, который возвращает разрешение типа Fixed.

Этот модуль также содержит обобщения div, mod и divmod для работы с любым экземпляром Real.

div' :: (Real a, Integral b) => a -> a -> b Source

обобщение div для любого экземпляра Real

mod' :: Real a => a -> a -> a Source

обобщение mod для любого экземпляра Real

divMod' :: (Real a, Integral b) => a -> a -> (b, a) Source

обобщение divMod для любого экземпляра Real

newtype Fixed a Source

Параметр типа должен быть экземпляром HasResolution.

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

MkFixed Integer

Since: 4.7.0.0

Экземпляры

Enum (Fixed a)
Eq (Fixed a)
HasResolution a => Fractional (Fixed a)
Typeable * a => Data (Fixed a)
HasResolution a => Num (Fixed a)
Ord (Fixed a)
HasResolution a => Read (Fixed a)
HasResolution a => Real (Fixed a)
HasResolution a => RealFrac (Fixed a)
HasResolution a => Show (Fixed a)

class HasResolution a where Source

Методы

resolution :: p a -> Integer Source

Экземпляры

HasResolution E12
HasResolution E9
HasResolution E6
HasResolution E3
HasResolution E2
HasResolution E1
HasResolution E0

showFixed :: HasResolution a => Bool -> Fixed a -> String Source

Первый аргумент — нужно ли отбрасывать конечные нули

data E0 Source

Экземпляры

HasResolution E0

type Uni = Fixed E0 Source

разрешение 1, работает так же, как Integer

data E1 Source

Экземпляры

HasResolution E1

type Deci = Fixed E1 Source

разрешение 10^-1 = .1

data E2 Source

Экземпляры

HasResolution E2

type Centi = Fixed E2 Source

разрешение 10^-2 = .01, полезно для многих валют

data E3 Source

Экземпляры

HasResolution E3

type Milli = Fixed E3 Source

разрешение 10^-3 = .001

data E6 Source

Экземпляры

HasResolution E6

type Micro = Fixed E6 Source

разрешение 10^-6 = .000001

data E9 Source

Экземпляры

HasResolution E9

type Nano = Fixed E9 Source

разрешение 10^-9 = 0.000000001

data E12 Source

Примеры использования

HasResolution E12

type Pico = Fixed E12 Source

разрешение 10^-12 = 0.000000000001

© 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-Fixed.html

Spec-Zone.ru

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