hedn-functor-0.1.0.0: Base functor for EDN AST

Safe HaskellNone
LanguageHaskell2010

Data.Functor.Base.EDN

Contents

Documentation

data ValueF f Source #

Constructors

NilF TextTag 
BooleanF TextTag Bool 
StringF TextTag Text 
CharacterF TextTag Char 
SymbolF TextTag Text Text 
KeywordF TextTag Text 
IntegerF TextTag Int 
FloatingF TextTag Double 
ListF TextTag [f] 
VecF TextTag (Vector f) 
MapF TextTag [(f, f)] 
SetF TextTag [f] 
Instances
Functor ValueF Source # 
Instance details

Defined in Data.Functor.Base.EDN

Methods

fmap :: (a -> b) -> ValueF a -> ValueF b #

(<$) :: a -> ValueF b -> ValueF a #

Foldable ValueF Source # 
Instance details

Defined in Data.Functor.Base.EDN

Methods

fold :: Monoid m => ValueF m -> m #

foldMap :: Monoid m => (a -> m) -> ValueF a -> m #

foldr :: (a -> b -> b) -> b -> ValueF a -> b #

foldr' :: (a -> b -> b) -> b -> ValueF a -> b #

foldl :: (b -> a -> b) -> b -> ValueF a -> b #

foldl' :: (b -> a -> b) -> b -> ValueF a -> b #

foldr1 :: (a -> a -> a) -> ValueF a -> a #

foldl1 :: (a -> a -> a) -> ValueF a -> a #

toList :: ValueF a -> [a] #

null :: ValueF a -> Bool #

length :: ValueF a -> Int #

elem :: Eq a => a -> ValueF a -> Bool #

maximum :: Ord a => ValueF a -> a #

minimum :: Ord a => ValueF a -> a #

sum :: Num a => ValueF a -> a #

product :: Num a => ValueF a -> a #

Traversable ValueF Source # 
Instance details

Defined in Data.Functor.Base.EDN

Methods

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

sequenceA :: Applicative f => ValueF (f a) -> f (ValueF a) #

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

sequence :: Monad m => ValueF (m a) -> m (ValueF a) #

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

Defined in Data.Functor.Base.EDN

Methods

(==) :: ValueF f -> ValueF f -> Bool #

(/=) :: ValueF f -> ValueF f -> Bool #

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

Defined in Data.Functor.Base.EDN

Methods

showsPrec :: Int -> ValueF f -> ShowS #

show :: ValueF f -> String #

showList :: [ValueF f] -> ShowS #

Generic (ValueF f) Source # 
Instance details

Defined in Data.Functor.Base.EDN

Associated Types

type Rep (ValueF f) :: Type -> Type #

Methods

from :: ValueF f -> Rep (ValueF f) x #

to :: Rep (ValueF f) x -> ValueF f #

type Rep (ValueF f) Source # 
Instance details

Defined in Data.Functor.Base.EDN

type Rep (ValueF f)

Orphan instances

Recursive (Tagged Text Value) Source # 
Instance details

Methods

project :: Tagged Text Value -> Base (Tagged Text Value) (Tagged Text Value) #

cata :: (Base (Tagged Text Value) a -> a) -> Tagged Text Value -> a #

para :: (Base (Tagged Text Value) (Tagged Text Value, a) -> a) -> Tagged Text Value -> a #

gpara :: (Corecursive (Tagged Text Value), Comonad w) => (forall b. Base (Tagged Text Value) (w b) -> w (Base (Tagged Text Value) b)) -> (Base (Tagged Text Value) (EnvT (Tagged Text Value) w a) -> a) -> Tagged Text Value -> a #

prepro :: Corecursive (Tagged Text Value) => (forall b. Base (Tagged Text Value) b -> Base (Tagged Text Value) b) -> (Base (Tagged Text Value) a -> a) -> Tagged Text Value -> a #

gprepro :: (Corecursive (Tagged Text Value), Comonad w) => (forall b. Base (Tagged Text Value) (w b) -> w (Base (Tagged Text Value) b)) -> (forall c. Base (Tagged Text Value) c -> Base (Tagged Text Value) c) -> (Base (Tagged Text Value) (w a) -> a) -> Tagged Text Value -> a #

Corecursive (Tagged Text Value) Source # 
Instance details

Methods

embed :: Base (Tagged Text Value) (Tagged Text Value) -> Tagged Text Value #

ana :: (a -> Base (Tagged Text Value) a) -> a -> Tagged Text Value #

apo :: (a -> Base (Tagged Text Value) (Either (Tagged Text Value) a)) -> a -> Tagged Text Value #

postpro :: Recursive (Tagged Text Value) => (forall b. Base (Tagged Text Value) b -> Base (Tagged Text Value) b) -> (a -> Base (Tagged Text Value) a) -> a -> Tagged Text Value #

gpostpro :: (Recursive (Tagged Text Value), Monad m) => (forall b. m (Base (Tagged Text Value) b) -> Base (Tagged Text Value) (m b)) -> (forall c. Base (Tagged Text Value) c -> Base (Tagged Text Value) c) -> (a -> Base (Tagged Text Value) (m a)) -> a -> Tagged Text Value #