ideas-1.8: Feedback services for intelligent tutoring systems

Maintainerbastiaan.heeren@ou.nl
Stabilityprovisional
Portabilityportable (depends on ghc)
Safe HaskellNone
LanguageHaskell98

Ideas.Utils.Uniplate

Contents

Description

Exports a subset of Data.Generics.Uniplate.Direct (the Uniplate type class and its utility plus constructor functions)

Synopsis

Uniplate type class and utility functions

class Uniplate on #

Minimal complete definition

uniplate

Instances
Uniplate OMOBJ # 
Instance details

Defined in Ideas.Text.OpenMath.Object

Methods

uniplate :: OMOBJ -> (Str OMOBJ, Str OMOBJ -> OMOBJ) #

descend :: (OMOBJ -> OMOBJ) -> OMOBJ -> OMOBJ #

descendM :: Monad m => (OMOBJ -> m OMOBJ) -> OMOBJ -> m OMOBJ #

Uniplate MathML # 
Instance details

Defined in Ideas.Text.MathML

Methods

uniplate :: MathML -> (Str MathML, Str MathML -> MathML) #

descend :: (MathML -> MathML) -> MathML -> MathML #

descendM :: Monad m => (MathML -> m MathML) -> MathML -> m MathML #

Uniplate Term # 
Instance details

Defined in Ideas.Common.Rewriting.Term

Methods

uniplate :: Term -> (Str Term, Str Term -> Term) #

descend :: (Term -> Term) -> Term -> Term #

descendM :: Monad m => (Term -> m Term) -> Term -> m Term #

Uniplate Condition # 
Instance details

Defined in Ideas.Service.FeedbackScript.Syntax

Uniplate Text # 
Instance details

Defined in Ideas.Service.FeedbackScript.Syntax

Methods

uniplate :: Text -> (Str Text, Str Text -> Text) #

descend :: (Text -> Text) -> Text -> Text #

descendM :: Monad m => (Text -> m Text) -> Text -> m Text #

children :: Uniplate on => on -> [on] #

contexts :: Uniplate on => on -> [(on, on -> on)] #

descend :: Uniplate on => (on -> on) -> on -> on #

descendM :: (Uniplate on, Monad m) => (on -> m on) -> on -> m on #

holes :: Uniplate on => on -> [(on, on -> on)] #

para :: Uniplate on => (on -> [r] -> r) -> on -> r #

rewrite :: Uniplate on => (on -> Maybe on) -> on -> on #

rewriteM :: (Monad m, Uniplate on) => (on -> m (Maybe on)) -> on -> m on #

transform :: Uniplate on => (on -> on) -> on -> on #

transformM :: (Monad m, Uniplate on) => (on -> m on) -> on -> m on #

uniplate :: Uniplate on => on -> (Str on, Str on -> on) #

universe :: Uniplate on => on -> [on] #

Instance constructors

(|-) :: Type (item -> from) to -> item -> Type from to #

(|*) :: Type (to -> from) to -> to -> Type from to #

(||*) :: Type ([to] -> from) to -> [to] -> Type from to #

plate :: from -> Type from to #