aivika-transformers-4.5.1: Transformers for the Aivika simulation library

CopyrightCopyright (c) 2009-2016 David Sorokin <david.sorokin@gmail.com>
LicenseBSD3
MaintainerDavid Sorokin <david.sorokin@gmail.com>
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

Simulation.Aivika.IO.QueueStrategy

Contents

Description

Tested with: GHC 8.0.1

This module defines some queue strategy instances for the MonadIO-based computations.

Orphan instances

(DequeueStrategy m SIRO, MonadComp m, MonadIO m, MonadTemplate m) => DeletingQueueStrategy m SIRO Source #

An implementation of the SIRO queue strategy.

(DequeueStrategy m StaticPriorities, MonadComp m, MonadIO m, MonadTemplate m) => DeletingQueueStrategy m StaticPriorities Source #

An implementation of the StaticPriorities queue strategy.

(DequeueStrategy m LCFS, MonadComp m, MonadIO m, MonadTemplate m) => DeletingQueueStrategy m LCFS Source #

An implementation of the LCFS queue strategy.

(DequeueStrategy m FCFS, MonadComp m, MonadIO m, MonadTemplate m) => DeletingQueueStrategy m FCFS Source #

An implementation of the FCFS queue strategy.

(DequeueStrategy m SIRO, MonadComp m, MonadIO m, MonadTemplate m) => EnqueueStrategy m SIRO Source #

A template-based implementation of the SIRO queue strategy.

Methods

strategyEnqueue :: StrategyQueue m SIRO a -> a -> Event m () Source #

(DequeueStrategy m LCFS, MonadComp m, MonadIO m, MonadTemplate m) => EnqueueStrategy m LCFS Source #

An implementation of the LCFS queue strategy.

Methods

strategyEnqueue :: StrategyQueue m LCFS a -> a -> Event m () Source #

(DequeueStrategy m FCFS, MonadComp m, MonadIO m, MonadTemplate m) => EnqueueStrategy m FCFS Source #

An implementation of the FCFS queue strategy.

Methods

strategyEnqueue :: StrategyQueue m FCFS a -> a -> Event m () Source #

(QueueStrategy m SIRO, MonadComp m, MonadIO m, MonadTemplate m) => DequeueStrategy m SIRO Source #

A template-based implementation of the SIRO queue strategy.

(QueueStrategy m StaticPriorities, MonadComp m, MonadIO m, MonadTemplate m) => DequeueStrategy m StaticPriorities Source #

A template-based implementation of the StaticPriorities queue strategy.

(QueueStrategy m LCFS, MonadComp m, MonadIO m, MonadTemplate m) => DequeueStrategy m LCFS Source #

An implementation of the LCFS queue strategy.

(QueueStrategy m FCFS, MonadComp m, MonadIO m, MonadTemplate m) => DequeueStrategy m FCFS Source #

An implementation of the FCFS queue strategy.

(MonadComp m, MonadIO m, MonadTemplate m) => QueueStrategy m SIRO Source #

A template-based implementation of the SIRO queue strategy.

Associated Types

data StrategyQueue (m :: * -> *) SIRO a :: * Source #

(MonadComp m, MonadIO m, MonadTemplate m) => QueueStrategy m StaticPriorities Source #

A template-based implementation of the StaticPriorities queue strategy.

(MonadComp m, MonadIO m, MonadTemplate m) => QueueStrategy m LCFS Source #

An implementation of the LCFS queue strategy.

Associated Types

data StrategyQueue (m :: * -> *) LCFS a :: * Source #

(Monad m, MonadComp m, MonadIO m, MonadTemplate m) => QueueStrategy m FCFS Source #

An implementation of the FCFS queue strategy.

Associated Types

data StrategyQueue (m :: * -> *) FCFS a :: * Source #

(DequeueStrategy m StaticPriorities, MonadComp m, MonadIO m, MonadTemplate m) => PriorityQueueStrategy m StaticPriorities Double Source #

A template-based implementation of the StaticPriorities queue strategy.