parsley-core-2.3.0.0: A fast parser combinator library backed by Typed Template Haskell
LicenseBSD-3-Clause
MaintainerJamie Willis
Stabilityunstable
Safe HaskellSafe-Inferred
LanguageHaskell2010

Parsley.Internal.Common

Description

Since: 0.1.0.0

Synopsis

Documentation

data Queue a Source #

Concrete FIFO Queue, with amortized constant operations.

Since: 1.5.0.0

Instances

Instances details
QueueLike Queue Source # 
Instance details

Defined in Parsley.Internal.Common.Queue

Methods

empty :: Queue a Source #

null :: Queue a -> Bool Source #

size :: Queue a -> Int Source #

enqueue :: a -> Queue a -> Queue a Source #

dequeue :: Queue a -> (a, Queue a) Source #

poke :: (a -> a) -> Queue a -> (a, Queue a) Source #

enqueueAll :: [a] -> Queue a -> Queue a Source #

Show a => Show (Queue a) Source # 
Instance details

Defined in Parsley.Internal.Common.Queue.Impl

Methods

showsPrec :: Int -> Queue a -> ShowS #

show :: Queue a -> String #

showList :: [Queue a] -> ShowS #

Eq a => Eq (Queue a) Source # 
Instance details

Defined in Parsley.Internal.Common.Queue.Impl

Methods

(==) :: Queue a -> Queue a -> Bool #

(/=) :: Queue a -> Queue a -> Bool #

data RewindQueue a Source #

Concrete FIFO Queue, with amortized constant operations.

Also keeps history of dequeued values, which can be undone in a LIFO manner.

Since: 1.5.0.0

Instances

Instances details
QueueLike RewindQueue Source # 
Instance details

Defined in Parsley.Internal.Common.RewindQueue

Show a => Show (RewindQueue a) Source # 
Instance details

Defined in Parsley.Internal.Common.RewindQueue.Impl

Eq a => Eq (RewindQueue a) Source # 
Instance details

Defined in Parsley.Internal.Common.RewindQueue.Impl