-- | An expression on signals
data SignalExpr =
EqLit SignalId String -- ^ Is the given signal equal to the given (VHDL) literal
-- | An expression on signals
data SignalExpr =
EqLit SignalId String -- ^ Is the given signal equal to the given (VHDL) literal
-- | Which signals are used by the given SignalExpr?
sigExprUses :: SignalExpr -> [SignalId]
sigExprUses (EqLit id _) = [id]
-- | Which signals are used by the given SignalExpr?
sigExprUses :: SignalExpr -> [SignalId]
sigExprUses (EqLit id _) = [id]
sigExprUses (Eq a b) = [a, b]
-- Returns the function used by the given SigDef, if any
sigExprUses (Eq a b) = [a, b]
-- Returns the function used by the given SigDef, if any
| SigStateOld StateId -- | Use as the current internal state
| SigStateNew StateId -- | Use as the new internal state
| SigSubState -- | Do not use, state variable is used in a subcircuit
| SigStateOld StateId -- | Use as the current internal state
| SigStateNew StateId -- | Use as the new internal state
| SigSubState -- | Do not use, state variable is used in a subcircuit
-- | Lookup a given signal id in a signal map, and return the associated
-- SignalInfo. Errors out if the signal was not found.
-- | Lookup a given signal id in a signal map, and return the associated
-- SignalInfo. Errors out if the signal was not found.