{-# OPTIONS -Wall #-}
----------------------------------------------------------------------
-- |
-- Module      :  FRP.Reactive
-- Copyright   :  (c) Conal Elliott 2008
-- License     :  BSD3
-- 
-- Maintainer  :  conal@conal.net
-- Stability   :  experimental
-- 
-- A library for programming with functional reactive behaviors.
----------------------------------------------------------------------

module FRP.Reactive
  (
    -- * Events
    TimeT, ITime
  , EventG, Event
  , accumE
  , withTimeE, withTimeE_
  , pairE, scanlE, monoidE
  , stateE, stateE_, countE, countE_, diffE
  , withPrevE, withPrevEWith
  , whenE, eitherE
    -- ** More esoteric
  , listE, atTimes, atTime, once
  , firstRestE, firstE, restE, snapRemainderE
  , withRestE, untilE
  , splitE, switchE
    -- ** Useful with events.
  , joinMaybes, filterMP
    -- * Behaviors
  , BehaviorG, Behavior
  , time
  , stepper, switcher --, select
  , snapshotWith, snapshot, snapshot_
  , accumB
  , scanlB, monoidB, maybeB, flipFlop, countB
  , sumB, integral
  ) where

-- Reactive.Reactive exports reactive values as well.  Filter them out.

import FRP.Reactive.Reactive hiding
  (stepper,switcher,snapshotWith,snapshot,snapshot_,flipFlop,integral)
import FRP.Reactive.Behavior
