telomare-0.1.0.0: A simple but robust virtual machine
Safe HaskellSafe-Inferred
LanguageHaskell2010

Telomare.Possible

Documentation

debugTrace :: String -> a -> a Source #

anaM' :: (Monad m, Corecursive t, x ~ Base t, Traversable x) => (a -> m (Base t a)) -> a -> m t Source #

data PartExprF f Source #

Constructors

ZeroSF 
PairSF f f 
EnvSF 
SetEnvSF f 
GateSF f f 
LeftSF f 
RightSF f 

Instances

Instances details
Foldable PartExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

fold :: Monoid m => PartExprF m -> m Source #

foldMap :: Monoid m => (a -> m) -> PartExprF a -> m Source #

foldMap' :: Monoid m => (a -> m) -> PartExprF a -> m Source #

foldr :: (a -> b -> b) -> b -> PartExprF a -> b Source #

foldr' :: (a -> b -> b) -> b -> PartExprF a -> b Source #

foldl :: (b -> a -> b) -> b -> PartExprF a -> b Source #

foldl' :: (b -> a -> b) -> b -> PartExprF a -> b Source #

foldr1 :: (a -> a -> a) -> PartExprF a -> a Source #

foldl1 :: (a -> a -> a) -> PartExprF a -> a Source #

toList :: PartExprF a -> [a] Source #

null :: PartExprF a -> Bool Source #

length :: PartExprF a -> Int Source #

elem :: Eq a => a -> PartExprF a -> Bool Source #

maximum :: Ord a => PartExprF a -> a Source #

minimum :: Ord a => PartExprF a -> a Source #

sum :: Num a => PartExprF a -> a Source #

product :: Num a => PartExprF a -> a Source #

Eq1 PartExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

liftEq :: (a -> b -> Bool) -> PartExprF a -> PartExprF b -> Bool Source #

Show1 PartExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> PartExprF a -> ShowS Source #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [PartExprF a] -> ShowS Source #

Traversable PartExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

traverse :: Applicative f => (a -> f b) -> PartExprF a -> f (PartExprF b) Source #

sequenceA :: Applicative f => PartExprF (f a) -> f (PartExprF a) Source #

mapM :: Monad m => (a -> m b) -> PartExprF a -> m (PartExprF b) Source #

sequence :: Monad m => PartExprF (m a) -> m (PartExprF a) Source #

Functor PartExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

fmap :: (a -> b) -> PartExprF a -> PartExprF b Source #

(<$) :: a -> PartExprF b -> PartExprF a Source #

PrettyPrintable1 PartExprF Source # 
Instance details

Defined in Telomare.Possible

Show f => Show (PartExprF f) Source # 
Instance details

Defined in Telomare.Possible

Eq f => Eq (PartExprF f) Source # 
Instance details

Defined in Telomare.Possible

Ord f => Ord (PartExprF f) Source # 
Instance details

Defined in Telomare.Possible

newtype FunctionIndex Source #

Constructors

FunctionIndex 

Fields

Instances

Instances details
Enum FunctionIndex Source # 
Instance details

Defined in Telomare.Possible

Show FunctionIndex Source # 
Instance details

Defined in Telomare.Possible

Eq FunctionIndex Source # 
Instance details

Defined in Telomare.Possible

Ord FunctionIndex Source # 
Instance details

Defined in Telomare.Possible

PrettyPrintable FunctionIndex Source # 
Instance details

Defined in Telomare.Possible

data StuckF f Source #

Constructors

DeferSF FunctionIndex f 

Instances

Instances details
Foldable StuckF Source # 
Instance details

Defined in Telomare.Possible

Methods

fold :: Monoid m => StuckF m -> m Source #

foldMap :: Monoid m => (a -> m) -> StuckF a -> m Source #

foldMap' :: Monoid m => (a -> m) -> StuckF a -> m Source #

foldr :: (a -> b -> b) -> b -> StuckF a -> b Source #

foldr' :: (a -> b -> b) -> b -> StuckF a -> b Source #

foldl :: (b -> a -> b) -> b -> StuckF a -> b Source #

foldl' :: (b -> a -> b) -> b -> StuckF a -> b Source #

foldr1 :: (a -> a -> a) -> StuckF a -> a Source #

foldl1 :: (a -> a -> a) -> StuckF a -> a Source #

toList :: StuckF a -> [a] Source #

null :: StuckF a -> Bool Source #

length :: StuckF a -> Int Source #

elem :: Eq a => a -> StuckF a -> Bool Source #

maximum :: Ord a => StuckF a -> a Source #

minimum :: Ord a => StuckF a -> a Source #

sum :: Num a => StuckF a -> a Source #

product :: Num a => StuckF a -> a Source #

Eq1 StuckF Source # 
Instance details

Defined in Telomare.Possible

Methods

liftEq :: (a -> b -> Bool) -> StuckF a -> StuckF b -> Bool Source #

Traversable StuckF Source # 
Instance details

Defined in Telomare.Possible

Methods

traverse :: Applicative f => (a -> f b) -> StuckF a -> f (StuckF b) Source #

sequenceA :: Applicative f => StuckF (f a) -> f (StuckF a) Source #

mapM :: Monad m => (a -> m b) -> StuckF a -> m (StuckF b) Source #

sequence :: Monad m => StuckF (m a) -> m (StuckF a) Source #

Functor StuckF Source # 
Instance details

Defined in Telomare.Possible

Methods

fmap :: (a -> b) -> StuckF a -> StuckF b Source #

(<$) :: a -> StuckF b -> StuckF a Source #

PrettyPrintable1 StuckF Source # 
Instance details

Defined in Telomare.Possible

Show f => Show (StuckF f) Source # 
Instance details

Defined in Telomare.Possible

Eq f => Eq (StuckF f) Source # 
Instance details

Defined in Telomare.Possible

Methods

(==) :: StuckF f -> StuckF f -> Bool Source #

(/=) :: StuckF f -> StuckF f -> Bool Source #

Ord f => Ord (StuckF f) Source # 
Instance details

Defined in Telomare.Possible

Methods

compare :: StuckF f -> StuckF f -> Ordering Source #

(<) :: StuckF f -> StuckF f -> Bool Source #

(<=) :: StuckF f -> StuckF f -> Bool Source #

(>) :: StuckF f -> StuckF f -> Bool Source #

(>=) :: StuckF f -> StuckF f -> Bool Source #

max :: StuckF f -> StuckF f -> StuckF f Source #

min :: StuckF f -> StuckF f -> StuckF f Source #

class BasicBase g where Source #

Methods

embedB :: PartExprF x -> g x Source #

extractB :: g x -> Maybe (PartExprF x) Source #

Instances

Instances details
BasicBase AbortExprF Source # 
Instance details

Defined in Telomare.Possible

BasicBase StuckExprF Source # 
Instance details

Defined in Telomare.Possible

BasicBase SuperExprF Source # 
Instance details

Defined in Telomare.Possible

BasicBase UnsizedExprF Source # 
Instance details

Defined in Telomare.Possible

class StuckBase g where Source #

Methods

embedS :: StuckF x -> g x Source #

extractS :: g x -> Maybe (StuckF x) Source #

Instances

Instances details
StuckBase AbortExprF Source # 
Instance details

Defined in Telomare.Possible

StuckBase StuckExprF Source # 
Instance details

Defined in Telomare.Possible

StuckBase SuperExprF Source # 
Instance details

Defined in Telomare.Possible

StuckBase UnsizedExprF Source # 
Instance details

Defined in Telomare.Possible

class SuperBase g where Source #

Instances

Instances details
SuperBase SuperExprF Source # 
Instance details

Defined in Telomare.Possible

SuperBase UnsizedExprF Source # 
Instance details

Defined in Telomare.Possible

class AbortBase g where Source #

Methods

embedA :: AbortableF x -> g x Source #

extractA :: g x -> Maybe (AbortableF x) Source #

Instances

Instances details
AbortBase AbortExprF Source # 
Instance details

Defined in Telomare.Possible

AbortBase SuperExprF Source # 
Instance details

Defined in Telomare.Possible

AbortBase UnsizedExprF Source # 
Instance details

Defined in Telomare.Possible

class UnsizedBase g where Source #

Instances

Instances details
UnsizedBase UnsizedExprF Source # 
Instance details

Defined in Telomare.Possible

pattern BasicFW :: BasicBase g => PartExprF x -> g x Source #

pattern BasicEE :: (Base g ~ f, BasicBase f, Recursive g) => PartExprF g -> g Source #

pattern StuckFW :: StuckBase g => StuckF x -> g x Source #

pattern StuckEE :: (Base g ~ f, StuckBase f, Recursive g) => StuckF g -> g Source #

pattern SuperFW :: SuperBase g => SuperPositionF x -> g x Source #

pattern SuperEE :: (Base g ~ f, SuperBase f, Recursive g) => SuperPositionF g -> g Source #

pattern AbortFW :: AbortBase g => AbortableF x -> g x Source #

pattern AbortEE :: (Base g ~ f, AbortBase f, Recursive g) => AbortableF g -> g Source #

pattern UnsizedEE :: (Base g ~ f, UnsizedBase f, Recursive g) => UnsizedRecursionF g -> g Source #

basicEE :: (Base g ~ f, BasicBase f, Corecursive g) => PartExprF g -> g Source #

stuckEE :: (Base g ~ f, StuckBase f, Corecursive g) => StuckF g -> g Source #

abortEE :: (Base g ~ f, AbortBase f, Corecursive g) => AbortableF g -> g Source #

zeroB :: (Base g ~ f, BasicBase f, Corecursive g) => g Source #

pairB :: (Base g ~ f, BasicBase f, Corecursive g) => g -> g -> g Source #

envB :: (Base g ~ f, BasicBase f, Corecursive g) => g Source #

setEnvB :: (Base g ~ f, BasicBase f, Corecursive g) => g -> g Source #

gateB :: (Base g ~ f, BasicBase f, Corecursive g) => g -> g -> g Source #

leftB :: (Base g ~ f, BasicBase f, Corecursive g) => g -> g Source #

rightB :: (Base g ~ f, BasicBase f, Corecursive g) => g -> g Source #

pattern FillFunction :: (Base g ~ f, BasicBase f, Recursive g) => g -> g -> f g Source #

pattern GateSwitch :: (Base g ~ f, BasicBase f, Recursive g) => g -> g -> g -> f g Source #

fillFunction :: (Base g ~ f, BasicBase f, Corecursive g) => g -> g -> g Source #

gateSwitch :: (Base g ~ f, BasicBase f, Corecursive g) => g -> g -> g -> g Source #

basicStep :: (Base g ~ f, BasicBase f, Corecursive g, Recursive g) => (f g -> g) -> f g -> g Source #

basicStepM :: (Base g ~ f, BasicBase f, Traversable f, Corecursive g, Recursive g, PrettyPrintable g, Monad m) => (f (m g) -> m g) -> f (m g) -> m g Source #

transformNoDefer :: (Base g ~ f, StuckBase f, Recursive g) => (f g -> g) -> g -> g Source #

transformNoDeferM :: (Base g ~ f, StuckBase f, Monad m, Recursive g) => (f (m g) -> m g) -> g -> m g Source #

stuckStep :: (Base a ~ f, StuckBase f, BasicBase f, Recursive a, Corecursive a, PrettyPrintable a) => (f a -> a) -> f a -> a Source #

stuckStepM :: (Base a ~ f, Traversable f, StuckBase f, BasicBase f, Recursive a, Corecursive a, PrettyPrintable a, Monad m) => (f (m a) -> m a) -> f (m a) -> m a Source #

evalBottomUp :: (Base t ~ f, BasicBase f, StuckBase f, Corecursive t, Recursive t, Recursive t) => (Base t t -> t) -> t -> t Source #

superStep :: (Base a ~ f, BasicBase f, SuperBase f, Recursive a, Corecursive a, PrettyPrintable a) => (a -> a -> a) -> (f a -> a) -> (f a -> a) -> f a -> a Source #

superStepM :: (Base a ~ f, Traversable f, BasicBase f, SuperBase f, Recursive a, Corecursive a, PrettyPrintable a, Monad m) => (a -> a -> a) -> (f (m a) -> m a) -> (f (m a) -> m a) -> f (m a) -> m a Source #

abortStep :: (Base a ~ f, BasicBase f, StuckBase f, AbortBase f, Recursive a, Corecursive a) => (f a -> a) -> f a -> a Source #

abortStepM :: (Base a ~ f, Traversable f, BasicBase f, StuckBase f, AbortBase f, Recursive a, Corecursive a, Monad m) => (f (m a) -> m a) -> f (m a) -> m a Source #

anyFunctionStep :: (Base a ~ f, BasicBase f, SuperBase f, Recursive a, Corecursive a) => (f a -> a) -> f a -> a Source #

anyFunctionStepM :: (Base a ~ f, Traversable f, BasicBase f, SuperBase f, Recursive a, Corecursive a, Monad m) => (f (m a) -> m a) -> f (m a) -> m a Source #

data StrictAccum a x Source #

Constructors

StrictAccum !a x 

Instances

Instances details
Monoid a => Applicative (StrictAccum a) Source # 
Instance details

Defined in Telomare.Possible

Methods

pure :: a0 -> StrictAccum a a0 Source #

(<*>) :: StrictAccum a (a0 -> b) -> StrictAccum a a0 -> StrictAccum a b Source #

liftA2 :: (a0 -> b -> c) -> StrictAccum a a0 -> StrictAccum a b -> StrictAccum a c Source #

(*>) :: StrictAccum a a0 -> StrictAccum a b -> StrictAccum a b Source #

(<*) :: StrictAccum a a0 -> StrictAccum a b -> StrictAccum a a0 Source #

Functor (StrictAccum a) Source # 
Instance details

Defined in Telomare.Possible

Methods

fmap :: (a0 -> b) -> StrictAccum a a0 -> StrictAccum a b Source #

(<$) :: a0 -> StrictAccum a b -> StrictAccum a a0 Source #

Monoid a => Monad (StrictAccum a) Source # 
Instance details

Defined in Telomare.Possible

Methods

(>>=) :: StrictAccum a a0 -> (a0 -> StrictAccum a b) -> StrictAccum a b Source #

(>>) :: StrictAccum a a0 -> StrictAccum a b -> StrictAccum a b Source #

return :: a0 -> StrictAccum a a0 Source #

PrettyPrintable1 (StrictAccum SizedRecursion) Source # 
Instance details

Defined in Telomare.Possible

data VoidF f Source #

Instances

Instances details
Foldable VoidF Source # 
Instance details

Defined in Telomare.Possible

Methods

fold :: Monoid m => VoidF m -> m Source #

foldMap :: Monoid m => (a -> m) -> VoidF a -> m Source #

foldMap' :: Monoid m => (a -> m) -> VoidF a -> m Source #

foldr :: (a -> b -> b) -> b -> VoidF a -> b Source #

foldr' :: (a -> b -> b) -> b -> VoidF a -> b Source #

foldl :: (b -> a -> b) -> b -> VoidF a -> b Source #

foldl' :: (b -> a -> b) -> b -> VoidF a -> b Source #

foldr1 :: (a -> a -> a) -> VoidF a -> a Source #

foldl1 :: (a -> a -> a) -> VoidF a -> a Source #

toList :: VoidF a -> [a] Source #

null :: VoidF a -> Bool Source #

length :: VoidF a -> Int Source #

elem :: Eq a => a -> VoidF a -> Bool Source #

maximum :: Ord a => VoidF a -> a Source #

minimum :: Ord a => VoidF a -> a Source #

sum :: Num a => VoidF a -> a Source #

product :: Num a => VoidF a -> a Source #

Eq1 VoidF Source # 
Instance details

Defined in Telomare.Possible

Methods

liftEq :: (a -> b -> Bool) -> VoidF a -> VoidF b -> Bool Source #

Show1 VoidF Source # 
Instance details

Defined in Telomare.Possible

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> VoidF a -> ShowS Source #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [VoidF a] -> ShowS Source #

Traversable VoidF Source # 
Instance details

Defined in Telomare.Possible

Methods

traverse :: Applicative f => (a -> f b) -> VoidF a -> f (VoidF b) Source #

sequenceA :: Applicative f => VoidF (f a) -> f (VoidF a) Source #

mapM :: Monad m => (a -> m b) -> VoidF a -> m (VoidF b) Source #

sequence :: Monad m => VoidF (m a) -> m (VoidF a) Source #

Functor VoidF Source # 
Instance details

Defined in Telomare.Possible

Methods

fmap :: (a -> b) -> VoidF a -> VoidF b Source #

(<$) :: a -> VoidF b -> VoidF a Source #

PrettyPrintable1 VoidF Source # 
Instance details

Defined in Telomare.Possible

data SuperPositionF f Source #

Constructors

EitherPF !f !f 
AnyPF 

Instances

Instances details
Foldable SuperPositionF Source # 
Instance details

Defined in Telomare.Possible

Methods

fold :: Monoid m => SuperPositionF m -> m Source #

foldMap :: Monoid m => (a -> m) -> SuperPositionF a -> m Source #

foldMap' :: Monoid m => (a -> m) -> SuperPositionF a -> m Source #

foldr :: (a -> b -> b) -> b -> SuperPositionF a -> b Source #

foldr' :: (a -> b -> b) -> b -> SuperPositionF a -> b Source #

foldl :: (b -> a -> b) -> b -> SuperPositionF a -> b Source #

foldl' :: (b -> a -> b) -> b -> SuperPositionF a -> b Source #

foldr1 :: (a -> a -> a) -> SuperPositionF a -> a Source #

foldl1 :: (a -> a -> a) -> SuperPositionF a -> a Source #

toList :: SuperPositionF a -> [a] Source #

null :: SuperPositionF a -> Bool Source #

length :: SuperPositionF a -> Int Source #

elem :: Eq a => a -> SuperPositionF a -> Bool Source #

maximum :: Ord a => SuperPositionF a -> a Source #

minimum :: Ord a => SuperPositionF a -> a Source #

sum :: Num a => SuperPositionF a -> a Source #

product :: Num a => SuperPositionF a -> a Source #

Eq1 SuperPositionF Source # 
Instance details

Defined in Telomare.Possible

Methods

liftEq :: (a -> b -> Bool) -> SuperPositionF a -> SuperPositionF b -> Bool Source #

Show1 SuperPositionF Source # 
Instance details

Defined in Telomare.Possible

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> SuperPositionF a -> ShowS Source #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [SuperPositionF a] -> ShowS Source #

Traversable SuperPositionF Source # 
Instance details

Defined in Telomare.Possible

Methods

traverse :: Applicative f => (a -> f b) -> SuperPositionF a -> f (SuperPositionF b) Source #

sequenceA :: Applicative f => SuperPositionF (f a) -> f (SuperPositionF a) Source #

mapM :: Monad m => (a -> m b) -> SuperPositionF a -> m (SuperPositionF b) Source #

sequence :: Monad m => SuperPositionF (m a) -> m (SuperPositionF a) Source #

Functor SuperPositionF Source # 
Instance details

Defined in Telomare.Possible

Methods

fmap :: (a -> b) -> SuperPositionF a -> SuperPositionF b Source #

(<$) :: a -> SuperPositionF b -> SuperPositionF a Source #

PrettyPrintable1 SuperPositionF Source # 
Instance details

Defined in Telomare.Possible

Show f => Show (SuperPositionF f) Source # 
Instance details

Defined in Telomare.Possible

Eq f => Eq (SuperPositionF f) Source # 
Instance details

Defined in Telomare.Possible

Ord f => Ord (SuperPositionF f) Source # 
Instance details

Defined in Telomare.Possible

data AbortableF f Source #

Constructors

AbortF 
AbortedF IExpr 

Instances

Instances details
Foldable AbortableF Source # 
Instance details

Defined in Telomare.Possible

Methods

fold :: Monoid m => AbortableF m -> m Source #

foldMap :: Monoid m => (a -> m) -> AbortableF a -> m Source #

foldMap' :: Monoid m => (a -> m) -> AbortableF a -> m Source #

foldr :: (a -> b -> b) -> b -> AbortableF a -> b Source #

foldr' :: (a -> b -> b) -> b -> AbortableF a -> b Source #

foldl :: (b -> a -> b) -> b -> AbortableF a -> b Source #

foldl' :: (b -> a -> b) -> b -> AbortableF a -> b Source #

foldr1 :: (a -> a -> a) -> AbortableF a -> a Source #

foldl1 :: (a -> a -> a) -> AbortableF a -> a Source #

toList :: AbortableF a -> [a] Source #

null :: AbortableF a -> Bool Source #

length :: AbortableF a -> Int Source #

elem :: Eq a => a -> AbortableF a -> Bool Source #

maximum :: Ord a => AbortableF a -> a Source #

minimum :: Ord a => AbortableF a -> a Source #

sum :: Num a => AbortableF a -> a Source #

product :: Num a => AbortableF a -> a Source #

Eq1 AbortableF Source # 
Instance details

Defined in Telomare.Possible

Methods

liftEq :: (a -> b -> Bool) -> AbortableF a -> AbortableF b -> Bool Source #

Show1 AbortableF Source # 
Instance details

Defined in Telomare.Possible

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> AbortableF a -> ShowS Source #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [AbortableF a] -> ShowS Source #

Traversable AbortableF Source # 
Instance details

Defined in Telomare.Possible

Methods

traverse :: Applicative f => (a -> f b) -> AbortableF a -> f (AbortableF b) Source #

sequenceA :: Applicative f => AbortableF (f a) -> f (AbortableF a) Source #

mapM :: Monad m => (a -> m b) -> AbortableF a -> m (AbortableF b) Source #

sequence :: Monad m => AbortableF (m a) -> m (AbortableF a) Source #

Functor AbortableF Source # 
Instance details

Defined in Telomare.Possible

Methods

fmap :: (a -> b) -> AbortableF a -> AbortableF b Source #

(<$) :: a -> AbortableF b -> AbortableF a Source #

PrettyPrintable1 AbortableF Source # 
Instance details

Defined in Telomare.Possible

Show (AbortableF f) Source # 
Instance details

Defined in Telomare.Possible

Eq (AbortableF f) Source # 
Instance details

Defined in Telomare.Possible

Ord (AbortableF f) Source # 
Instance details

Defined in Telomare.Possible

mergeBasic :: (Base x ~ f, BasicBase f, Eq x, Corecursive x, Recursive x) => (x -> x -> x) -> x -> x -> x Source #

mergeStuck :: (Base x ~ f, StuckBase f, Recursive x) => (x -> x -> x) -> x -> x -> x Source #

mergeSuper :: (Base x ~ f, SuperBase f, Eq x, Corecursive x, Recursive x) => (x -> x -> x) -> (x -> x -> x) -> x -> x -> x Source #

mergeAbort :: (Base x ~ f, AbortBase f, Eq x, Corecursive x, Recursive x) => (x -> x -> x) -> x -> x -> x Source #

mergeUnknown :: (Base x ~ f, SuperBase f, Eq x, Corecursive x, Recursive x) => x -> x -> x Source #

data UnsizedRecursionF f Source #

Instances

Instances details
Foldable UnsizedRecursionF Source # 
Instance details

Defined in Telomare.Possible

Methods

fold :: Monoid m => UnsizedRecursionF m -> m Source #

foldMap :: Monoid m => (a -> m) -> UnsizedRecursionF a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UnsizedRecursionF a -> m Source #

foldr :: (a -> b -> b) -> b -> UnsizedRecursionF a -> b Source #

foldr' :: (a -> b -> b) -> b -> UnsizedRecursionF a -> b Source #

foldl :: (b -> a -> b) -> b -> UnsizedRecursionF a -> b Source #

foldl' :: (b -> a -> b) -> b -> UnsizedRecursionF a -> b Source #

foldr1 :: (a -> a -> a) -> UnsizedRecursionF a -> a Source #

foldl1 :: (a -> a -> a) -> UnsizedRecursionF a -> a Source #

toList :: UnsizedRecursionF a -> [a] Source #

null :: UnsizedRecursionF a -> Bool Source #

length :: UnsizedRecursionF a -> Int Source #

elem :: Eq a => a -> UnsizedRecursionF a -> Bool Source #

maximum :: Ord a => UnsizedRecursionF a -> a Source #

minimum :: Ord a => UnsizedRecursionF a -> a Source #

sum :: Num a => UnsizedRecursionF a -> a Source #

product :: Num a => UnsizedRecursionF a -> a Source #

Eq1 UnsizedRecursionF Source # 
Instance details

Defined in Telomare.Possible

Methods

liftEq :: (a -> b -> Bool) -> UnsizedRecursionF a -> UnsizedRecursionF b -> Bool Source #

Show1 UnsizedRecursionF Source # 
Instance details

Defined in Telomare.Possible

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> UnsizedRecursionF a -> ShowS Source #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [UnsizedRecursionF a] -> ShowS Source #

Traversable UnsizedRecursionF Source # 
Instance details

Defined in Telomare.Possible

Functor UnsizedRecursionF Source # 
Instance details

Defined in Telomare.Possible

PrettyPrintable1 UnsizedRecursionF Source # 
Instance details

Defined in Telomare.Possible

Show f => Show (UnsizedRecursionF f) Source # 
Instance details

Defined in Telomare.Possible

Eq f => Eq (UnsizedRecursionF f) Source # 
Instance details

Defined in Telomare.Possible

Ord f => Ord (UnsizedRecursionF f) Source # 
Instance details

Defined in Telomare.Possible

data StuckExprF f Source #

Constructors

StuckExprB (PartExprF f) 
StuckExprS (StuckF f) 

Instances

Instances details
Foldable StuckExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

fold :: Monoid m => StuckExprF m -> m Source #

foldMap :: Monoid m => (a -> m) -> StuckExprF a -> m Source #

foldMap' :: Monoid m => (a -> m) -> StuckExprF a -> m Source #

foldr :: (a -> b -> b) -> b -> StuckExprF a -> b Source #

foldr' :: (a -> b -> b) -> b -> StuckExprF a -> b Source #

foldl :: (b -> a -> b) -> b -> StuckExprF a -> b Source #

foldl' :: (b -> a -> b) -> b -> StuckExprF a -> b Source #

foldr1 :: (a -> a -> a) -> StuckExprF a -> a Source #

foldl1 :: (a -> a -> a) -> StuckExprF a -> a Source #

toList :: StuckExprF a -> [a] Source #

null :: StuckExprF a -> Bool Source #

length :: StuckExprF a -> Int Source #

elem :: Eq a => a -> StuckExprF a -> Bool Source #

maximum :: Ord a => StuckExprF a -> a Source #

minimum :: Ord a => StuckExprF a -> a Source #

sum :: Num a => StuckExprF a -> a Source #

product :: Num a => StuckExprF a -> a Source #

Traversable StuckExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

traverse :: Applicative f => (a -> f b) -> StuckExprF a -> f (StuckExprF b) Source #

sequenceA :: Applicative f => StuckExprF (f a) -> f (StuckExprF a) Source #

mapM :: Monad m => (a -> m b) -> StuckExprF a -> m (StuckExprF b) Source #

sequence :: Monad m => StuckExprF (m a) -> m (StuckExprF a) Source #

Functor StuckExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

fmap :: (a -> b) -> StuckExprF a -> StuckExprF b Source #

(<$) :: a -> StuckExprF b -> StuckExprF a Source #

PrettyPrintable StuckExpr Source # 
Instance details

Defined in Telomare.Possible

PrettyPrintable1 StuckExprF Source # 
Instance details

Defined in Telomare.Possible

TelomareLike StuckExpr Source # 
Instance details

Defined in Telomare.Possible

BasicBase StuckExprF Source # 
Instance details

Defined in Telomare.Possible

StuckBase StuckExprF Source # 
Instance details

Defined in Telomare.Possible

data UnsizedExprF f Source #

Instances

Instances details
Foldable UnsizedExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

fold :: Monoid m => UnsizedExprF m -> m Source #

foldMap :: Monoid m => (a -> m) -> UnsizedExprF a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UnsizedExprF a -> m Source #

foldr :: (a -> b -> b) -> b -> UnsizedExprF a -> b Source #

foldr' :: (a -> b -> b) -> b -> UnsizedExprF a -> b Source #

foldl :: (b -> a -> b) -> b -> UnsizedExprF a -> b Source #

foldl' :: (b -> a -> b) -> b -> UnsizedExprF a -> b Source #

foldr1 :: (a -> a -> a) -> UnsizedExprF a -> a Source #

foldl1 :: (a -> a -> a) -> UnsizedExprF a -> a Source #

toList :: UnsizedExprF a -> [a] Source #

null :: UnsizedExprF a -> Bool Source #

length :: UnsizedExprF a -> Int Source #

elem :: Eq a => a -> UnsizedExprF a -> Bool Source #

maximum :: Ord a => UnsizedExprF a -> a Source #

minimum :: Ord a => UnsizedExprF a -> a Source #

sum :: Num a => UnsizedExprF a -> a Source #

product :: Num a => UnsizedExprF a -> a Source #

Eq1 UnsizedExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

liftEq :: (a -> b -> Bool) -> UnsizedExprF a -> UnsizedExprF b -> Bool Source #

Traversable UnsizedExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

traverse :: Applicative f => (a -> f b) -> UnsizedExprF a -> f (UnsizedExprF b) Source #

sequenceA :: Applicative f => UnsizedExprF (f a) -> f (UnsizedExprF a) Source #

mapM :: Monad m => (a -> m b) -> UnsizedExprF a -> m (UnsizedExprF b) Source #

sequence :: Monad m => UnsizedExprF (m a) -> m (UnsizedExprF a) Source #

Functor UnsizedExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

fmap :: (a -> b) -> UnsizedExprF a -> UnsizedExprF b Source #

(<$) :: a -> UnsizedExprF b -> UnsizedExprF a Source #

PrettyPrintable UnsizedExpr Source # 
Instance details

Defined in Telomare.Possible

PrettyPrintable1 UnsizedExprF Source # 
Instance details

Defined in Telomare.Possible

TelomareLike UnsizedExpr Source # 
Instance details

Defined in Telomare.Possible

AbortBase UnsizedExprF Source # 
Instance details

Defined in Telomare.Possible

BasicBase UnsizedExprF Source # 
Instance details

Defined in Telomare.Possible

StuckBase UnsizedExprF Source # 
Instance details

Defined in Telomare.Possible

SuperBase UnsizedExprF Source # 
Instance details

Defined in Telomare.Possible

UnsizedBase UnsizedExprF Source # 
Instance details

Defined in Telomare.Possible

data SuperExprF f Source #

Instances

Instances details
Foldable SuperExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

fold :: Monoid m => SuperExprF m -> m Source #

foldMap :: Monoid m => (a -> m) -> SuperExprF a -> m Source #

foldMap' :: Monoid m => (a -> m) -> SuperExprF a -> m Source #

foldr :: (a -> b -> b) -> b -> SuperExprF a -> b Source #

foldr' :: (a -> b -> b) -> b -> SuperExprF a -> b Source #

foldl :: (b -> a -> b) -> b -> SuperExprF a -> b Source #

foldl' :: (b -> a -> b) -> b -> SuperExprF a -> b Source #

foldr1 :: (a -> a -> a) -> SuperExprF a -> a Source #

foldl1 :: (a -> a -> a) -> SuperExprF a -> a Source #

toList :: SuperExprF a -> [a] Source #

null :: SuperExprF a -> Bool Source #

length :: SuperExprF a -> Int Source #

elem :: Eq a => a -> SuperExprF a -> Bool Source #

maximum :: Ord a => SuperExprF a -> a Source #

minimum :: Ord a => SuperExprF a -> a Source #

sum :: Num a => SuperExprF a -> a Source #

product :: Num a => SuperExprF a -> a Source #

Eq1 SuperExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

liftEq :: (a -> b -> Bool) -> SuperExprF a -> SuperExprF b -> Bool Source #

Traversable SuperExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

traverse :: Applicative f => (a -> f b) -> SuperExprF a -> f (SuperExprF b) Source #

sequenceA :: Applicative f => SuperExprF (f a) -> f (SuperExprF a) Source #

mapM :: Monad m => (a -> m b) -> SuperExprF a -> m (SuperExprF b) Source #

sequence :: Monad m => SuperExprF (m a) -> m (SuperExprF a) Source #

Functor SuperExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

fmap :: (a -> b) -> SuperExprF a -> SuperExprF b Source #

(<$) :: a -> SuperExprF b -> SuperExprF a Source #

PrettyPrintable SuperExpr Source # 
Instance details

Defined in Telomare.Possible

PrettyPrintable1 SuperExprF Source # 
Instance details

Defined in Telomare.Possible

AbortBase SuperExprF Source # 
Instance details

Defined in Telomare.Possible

BasicBase SuperExprF Source # 
Instance details

Defined in Telomare.Possible

StuckBase SuperExprF Source # 
Instance details

Defined in Telomare.Possible

SuperBase SuperExprF Source # 
Instance details

Defined in Telomare.Possible

data AbortExprF f Source #

Instances

Instances details
Foldable AbortExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

fold :: Monoid m => AbortExprF m -> m Source #

foldMap :: Monoid m => (a -> m) -> AbortExprF a -> m Source #

foldMap' :: Monoid m => (a -> m) -> AbortExprF a -> m Source #

foldr :: (a -> b -> b) -> b -> AbortExprF a -> b Source #

foldr' :: (a -> b -> b) -> b -> AbortExprF a -> b Source #

foldl :: (b -> a -> b) -> b -> AbortExprF a -> b Source #

foldl' :: (b -> a -> b) -> b -> AbortExprF a -> b Source #

foldr1 :: (a -> a -> a) -> AbortExprF a -> a Source #

foldl1 :: (a -> a -> a) -> AbortExprF a -> a Source #

toList :: AbortExprF a -> [a] Source #

null :: AbortExprF a -> Bool Source #

length :: AbortExprF a -> Int Source #

elem :: Eq a => a -> AbortExprF a -> Bool Source #

maximum :: Ord a => AbortExprF a -> a Source #

minimum :: Ord a => AbortExprF a -> a Source #

sum :: Num a => AbortExprF a -> a Source #

product :: Num a => AbortExprF a -> a Source #

Eq1 AbortExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

liftEq :: (a -> b -> Bool) -> AbortExprF a -> AbortExprF b -> Bool Source #

Traversable AbortExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

traverse :: Applicative f => (a -> f b) -> AbortExprF a -> f (AbortExprF b) Source #

sequenceA :: Applicative f => AbortExprF (f a) -> f (AbortExprF a) Source #

mapM :: Monad m => (a -> m b) -> AbortExprF a -> m (AbortExprF b) Source #

sequence :: Monad m => AbortExprF (m a) -> m (AbortExprF a) Source #

Functor AbortExprF Source # 
Instance details

Defined in Telomare.Possible

Methods

fmap :: (a -> b) -> AbortExprF a -> AbortExprF b Source #

(<$) :: a -> AbortExprF b -> AbortExprF a Source #

PrettyPrintable AbortExpr Source # 
Instance details

Defined in Telomare.Possible

PrettyPrintable1 AbortExprF Source # 
Instance details

Defined in Telomare.Possible

AbortBase AbortExprF Source # 
Instance details

Defined in Telomare.Possible

BasicBase AbortExprF Source # 
Instance details

Defined in Telomare.Possible

StuckBase AbortExprF Source # 
Instance details

Defined in Telomare.Possible

newtype MonoidList a Source #

Constructors

MonoidList 

Fields

Instances

Instances details
Semigroup a => Monoid (MonoidList a) Source # 
Instance details

Defined in Telomare.Possible

Semigroup a => Semigroup (MonoidList a) Source # 
Instance details

Defined in Telomare.Possible

capMain :: (Base g ~ f, BasicBase f, StuckBase f, SuperBase f, Recursive g, Corecursive g) => g -> g Source #

Orphan instances

PrettyPrintable Char Source # 
Instance details