-- | Haskell implementations of hydra/lib/logic (logic and control flow) primitives

module Hydra.Lib.Logic where

import Hydra.Core

import Data.Int


and :: Bool -> Bool -> Bool
and :: Bool -> Bool -> Bool
and Bool
x Bool
y = Bool
x Bool -> Bool -> Bool
&& Bool
y

ifElse :: a -> a -> Bool -> a
ifElse :: forall a. a -> a -> Bool -> a
ifElse a
x a
y Bool
b = if Bool
b then a
x else a
y

not :: Bool -> Bool
not :: Bool -> Bool
not = Bool -> Bool
Prelude.not

or :: Bool -> Bool -> Bool
or :: Bool -> Bool -> Bool
or Bool
x Bool
y = Bool
x Bool -> Bool -> Bool
|| Bool
y