Spec-Zone.ru › Haskell 9

Data.Bool

Авторское право (c) The University of Glasgow 2001
Лицензия в стиле BSD (см. файл libraries/base/LICENSE)
Сопровождающий libraries@haskell.org
Стабильность стабильный
Переносимость переносимый
Безопасный Haskell Safe
Язык Haskell2010

Содержание

  • Логические значения
    • Операции

Описание

Тип Bool и связанные с ним функции.

Логические значения

data Bool Источник

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

False
True
Экземпляры
Сведения об экземплярах
Bits Bool Исходный код

Интерпретировать Bool как одноразрядное битовое поле

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

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

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

Методы

(.&.) :: Bool -> Bool -> Bool Исходный код

(.|.) :: Bool -> Bool -> Bool Исходный код

xor :: Bool -> Bool -> Bool Исходный код

complement :: Bool -> Bool Исходный код

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

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

zeroBits :: Bool Исходный код

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

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

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

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

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

bitSizeMaybe :: Bool -> Maybe Int Исходный код

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

isSigned :: Bool -> Bool Исходный код

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

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

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

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

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

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

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

FiniteBits Bool Исходный код

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

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

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

Методы

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

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

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

Eq Bool Исходный код
Сведения об экземпляре

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

Методы

(==) :: Bool -> Bool -> Bool Исходный код

(/=) :: Bool -> Bool -> Bool Исходный код

Ord Bool Исходный код
Сведения об экземпляре

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

Методы

compare :: Bool -> Bool -> Ordering Исходный код

(<) :: Bool -> Bool -> Bool Исходный код

(<=) :: Bool -> Bool -> Bool Исходный код

(>) :: Bool -> Bool -> Bool Исходный код

(>=) :: Bool -> Bool -> Bool Исходный код

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

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

Data Bool Исходный код

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

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

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

Методы

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Bool -> c Bool Исходный код

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Bool Исходный код

toConstr :: Bool -> Constr Исходный код

dataTypeOf :: Bool -> DataType Исходный код

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Bool) Исходный код

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Bool) Исходный код

gmapT :: (forall b. Data b => b -> b) -> Bool -> Bool Исходный код

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Bool -> r Исходный код

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Bool -> r Исходный код

gmapQ :: (forall d. Data d => d -> u) -> Bool -> [u] Исходный код

gmapQi :: Int -> (forall d. Data d => d -> u) -> Bool -> u Исходный код

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Bool -> m Bool Исходный код

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Bool -> m Bool Исходный код

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Bool -> m Bool Исходный код

Bounded Bool Исходный код

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

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

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

Методы

minBound :: Bool Исходный код

maxBound :: Bool Исходный код

Enum Bool Исходный код

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

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

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

Методы

succ :: Bool -> Bool Исходный код

pred :: Bool -> Bool Исходный код

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

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

enumFrom :: Bool -> [Bool] Исходный код

enumFromThen :: Bool -> Bool -> [Bool] Исходный код

enumFromTo :: Bool -> Bool -> [Bool] Исходный код

enumFromThenTo :: Bool -> Bool -> Bool -> [Bool] Исходный код

Storable Bool Исходный код

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

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

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

Методы

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

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

peekElemOff :: Ptr Bool -> Int -> IO Bool Исходный код

pokeElemOff :: Ptr Bool -> Int -> Bool -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO Bool Исходный код

pokeByteOff :: Ptr b -> Int -> Bool -> IO () Исходный код

peek :: Ptr Bool -> IO Bool Исходный код

poke :: Ptr Bool -> Bool -> IO () Исходный код

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

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

Связанные типы

type Rep Bool

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

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

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

type Rep Bool = D1 ('MetaData "Bool" "GHC.Internal.Types" "ghc-internal" 'False) (C1 ('MetaCons "False" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "True" 'PrefixI 'False) (U1 :: Type -> Type))

Методы

from :: Bool -> Rep Bool x Источник

to :: Rep Bool x -> Bool Источник

SingKind Bool

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

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

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

Связанные типы

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

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

type DemoteRep Bool = Bool

Методы

fromSing :: forall (a :: Bool). Sing a -> DemoteRep Bool

Ix Bool Источник

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

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

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

Методы

range :: (Bool, Bool) -> [Bool] Источник

index :: (Bool, Bool) -> Bool -> Int Источник

unsafeIndex :: (Bool, Bool) -> Bool -> Int Источник

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

rangeSize :: (Bool, Bool) -> Int Источник

unsafeRangeSize :: (Bool, Bool) -> Int Источник

Read Bool Источник

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

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

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

Методы

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

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

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

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

Show Bool Источник

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

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

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

Методы

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

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

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

SingI 'False

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

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

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

Методы

sing :: Sing 'False

SingI 'True

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

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

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

Методы

sing :: Sing 'True

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

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

Методы

lift :: Quote m => Bool -> m Exp Источник

liftTyped :: forall (m :: Type -> Type). Quote m => Bool -> Code m Bool Источник

type DemoteRep Bool Источник
Подробности экземпляра

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

type DemoteRep Bool = Bool
type Rep Bool Источник

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

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

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

type Rep Bool = D1 ('MetaData "Bool" "GHC.Internal.Types" "ghc-internal" 'False) (C1 ('MetaCons "False" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "True" 'PrefixI 'False) (U1 :: Type -> Type))
data Sing (a :: Bool) Источник
Подробности экземпляра

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

data Sing (a :: Bool) where
  • STrue :: Sing 'True
  • SFalse :: Sing 'False

Операции

(&&) :: Bool -> Bool -> Bool infixr 3 Источник

Логическое «и», ленивое по второму аргументу

(||) :: Bool -> Bool -> Bool infixr 2 Источник

Логическое «или», ленивое по второму аргументу

not :: Bool -> Bool Источник

Логическое «не»

otherwise :: Bool Источник

otherwise определяется как значение True. Это помогает сделать защитные условия более читаемыми. Например:

 f x | x < 0     = ...
     | otherwise = ...

bool :: a -> a -> Bool -> a Источник

Анализ случаев для типа Bool. bool f t p вычисляется в f, когда p равно False, и вычисляется в t, когда p равно True.

Это эквивалентно if p then t else f; то есть это можно рассматривать как конструкцию if-then-else с переставленными аргументами.

Примеры
Развернуть

Базовое использование:

>>> bool "foo" "bar" True
"bar"
>>> bool "foo" "bar" False
"foo"

Убедитесь, что bool f t p и if p then t else f эквивалентны:

>>> let p = True; f = "bar"; t = "foo"
>>> bool f t p == if p then t else f
True
>>> let p = False
>>> bool f t p == if p then t else f
True

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

© 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/Data-Bool.html

Spec-Zone.ru

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