----------------------------------------------------------------------------- -- | -- Module : CSPM.FiringRules.EnumerateEventsList -- Copyright : (c) Fontaine 2010 -- License : BSD -- -- Maintainer : fontaine@cs.uni-duesseldorf.de -- Stability : experimental -- Portability : GHC-only -- -- Reexport of the functions from EnumerateEvents with a List interface. ----------------------------------------------------------------------------- {-# LANGUAGE ScopedTypeVariables #-} module CSPM.FiringRules.EnumerateEventsList ( computeTransitions ,eventTransitions ,tauTransitions ,tickTransitions ) where import CSPM.CoreLanguage import CSPM.CoreLanguage.Event import CSPM.FiringRules.Rules import qualified CSPM.FiringRules.EnumerateEvents as EE import CSPM.FiringRules.Search (runSearch) -- | Compute all possible transitions (via an event from Sigma) for a Process. computeTransitions :: forall i. BL i => Sigma i -> Process i -> [Rule i] computeTransitions events p = runSearch $ EE.computeTransitions events p eventTransitions :: forall i. BL i => Sigma i -> Process i -> [RuleEvent i] eventTransitions sigma p = runSearch $ EE.eventTransitions sigma p tauTransitions :: forall i. BL i => Process i -> [RuleTau i] tauTransitions = runSearch . EE.tauTransitions tickTransitions :: BL i => Process i -> [RuleTick i] tickTransitions = runSearch . EE.tickTransitions