netwire-3.1.0: Fast generic automaton arrow transformer for AFRP

MaintainerErtugrul Soeylemez <es@ertes.de>

Control.Wire.Trans.Combine

Contents

Description

Wire transformers for combining wires.

Synopsis

Context-sensitive evolution

class Arrow >~ => WContext (>~) whereSource

Make the given wire context-sensitive. The right signal is a context and the wire will evolve individually for each context.

  • Depends: Like context wire (left), current instant (right).
  • Inhibits: Like context wire.

Methods

context :: Ord k => Wire e >~ (a, k) b -> Wire e >~ (a, k) bSource

Instances

class Arrow >~ => WContextLimit t (>~) | >~ -> t whereSource

Same as context, but with a time limit. The third signal specifies a maximum age. Contexts not used for longer than the maximum age are forgotten.

  • Depends: Like context wire (left), current instant (right).
  • Inhibits: Like context wire.

Methods

contextLimit :: Ord k => Wire e >~ (a, k) b -> Wire e >~ ((a, k), t) bSource

Instances

Distribute

class Arrow >~ => WDistribute (>~) whereSource

Distribute the input signal over the given wires, evolving each of them individually. Discards all inhibited signals.

  • Depends: as strict as the strictest subwire.

Methods

distribute :: [Wire e >~ a b] -> Wire e >~ a [b]Source

Instances