chalmers-lava2000-1.6.1: Hardware description EDSL

Safe HaskellNone
LanguageHaskell98

Lava.Signal

Documentation

newtype Signal a Source #

Constructors

Signal Symbol 
Instances
SignalInt a => Enum (Signal a) # 
Instance details

Defined in Lava.Operators

Methods

succ :: Signal a -> Signal a #

pred :: Signal a -> Signal a #

toEnum :: Int -> Signal a #

fromEnum :: Signal a -> Int #

enumFrom :: Signal a -> [Signal a] #

enumFromThen :: Signal a -> Signal a -> [Signal a] #

enumFromTo :: Signal a -> Signal a -> [Signal a] #

enumFromThenTo :: Signal a -> Signal a -> Signal a -> [Signal a] #

Eq (Signal a) Source # 
Instance details

Defined in Lava.Signal

Methods

(==) :: Signal a -> Signal a -> Bool #

(/=) :: Signal a -> Signal a -> Bool #

SignalInt a => Fractional (Signal a) # 
Instance details

Defined in Lava.Operators

Methods

(/) :: Signal a -> Signal a -> Signal a #

recip :: Signal a -> Signal a #

fromRational :: Rational -> Signal a #

SignalInt a => Num (Signal a) # 
Instance details

Defined in Lava.Operators

Methods

(+) :: Signal a -> Signal a -> Signal a #

(-) :: Signal a -> Signal a -> Signal a #

(*) :: Signal a -> Signal a -> Signal a #

negate :: Signal a -> Signal a #

abs :: Signal a -> Signal a #

signum :: Signal a -> Signal a #

fromInteger :: Integer -> Signal a #

SignalInt a => Ord (Signal a) # 
Instance details

Defined in Lava.Operators

Methods

compare :: Signal a -> Signal a -> Ordering #

(<) :: Signal a -> Signal a -> Bool #

(<=) :: Signal a -> Signal a -> Bool #

(>) :: Signal a -> Signal a -> Bool #

(>=) :: Signal a -> Signal a -> Bool #

max :: Signal a -> Signal a -> Signal a #

min :: Signal a -> Signal a -> Signal a #

Show (Signal a) Source # 
Instance details

Defined in Lava.Signal

Methods

showsPrec :: Int -> Signal a -> ShowS #

show :: Signal a -> String #

showList :: [Signal a] -> ShowS #

Choice (Signal a) Source # 
Instance details

Defined in Lava.Generic

Methods

ifThenElse :: Signal Bool -> (Signal a, Signal a) -> Signal a Source #

FiniteSig a => Finite (Signal a) Source # 
Instance details

Defined in Lava.Generic

Methods

domain :: [Signal a] Source #

ConstructiveSig a => Constructive (Signal a) Source # 
Instance details

Defined in Lava.Generic

Generic (Signal a) Source # 
Instance details

Defined in Lava.Generic

ShowModel (Signal a) Source # 
Instance details

Defined in Lava.Property

Methods

showModel :: Model -> Signal a -> [String] Source #

Checkable a => Checkable (Signal a) Source # 
Instance details

Defined in Lava.Property

ChoiceWithSig a => CoFresh (Signal a) Source # 
Instance details

Defined in Lava.Property

Methods

cofresh :: (Choice b, Fresh b) => Gen b -> Gen (Signal a -> b) Source #

ConstructiveSig a => Fresh (Signal a) Source # 
Instance details

Defined in Lava.Property

Methods

fresh :: Gen (Signal a) Source #

newtype Symbol Source #

Constructors

Symbol (Ref (S Symbol)) 
Instances
Show Symbol Source # 
Instance details

Defined in Lava.Signal

Choice Symbol Source # 
Instance details

Defined in Lava.Generic

Generic Symbol Source # 
Instance details

Defined in Lava.Generic

data S s Source #

Constructors

Bool Bool 
Inv s 
And [s] 
Or [s] 
Xor [s] 
VarBool String 
DelayBool s s 
Int Int 
Neg s 
Div s s 
Mod s s 
Plus [s] 
Times [s] 
Gte s s 
Equal [s] 
If s s s 
VarInt String 
DelayInt s s 
Instances
Functor S Source # 
Instance details

Defined in Lava.Signal

Methods

fmap :: (a -> b) -> S a -> S b #

(<$) :: a -> S b -> S a #

Sequent S Source # 
Instance details

Defined in Lava.Signal

Methods

sequent :: Monad m => S (m a) -> m (S a) Source #

Show a => Show (S a) Source # 
Instance details

Defined in Lava.Signal

Methods

showsPrec :: Int -> S a -> ShowS #

show :: S a -> String #

showList :: [S a] -> ShowS #

lift1 :: (Symbol -> S Symbol) -> Signal a -> Signal b Source #

lift2 :: (Symbol -> Symbol -> S Symbol) -> Signal a -> Signal b -> Signal c Source #

lift3 :: (Symbol -> Symbol -> Symbol -> S Symbol) -> Signal a -> Signal b -> Signal c -> Signal d Source #

liftl :: ([Symbol] -> S Symbol) -> [Signal a] -> Signal c Source #

eval :: S (S a) -> S a Source #

evalLazy :: S (Maybe (S a)) -> Maybe (S a) Source #

arguments :: S a -> [a] Source #

zips :: S [a] -> [S a] Source #