effective-aspects-mzv-0.1.0.1: A monadic embedding of aspect oriented programming, using "Monads, Zippers and Views" instead of mtl.

Safe HaskellNone

AOP.ProtectedPointcuts

Synopsis

Documentation

data ProtectedPC m a b t c d Source

protectPC :: (Typeable1Monad m, LessGen (a -> b) (c -> m d)) => PC m a b -> Combinator t m c d -> ProtectedPC m a b t c dSource

pAspect :: (Monad m, LessGen (a -> b) (c -> m d)) => ProtectedPC m a b t c d -> t -> Aspect m a b c dSource

Creates a protected aspect based on a given protected pc

ppcAnd :: Typeable1Monad m => ProtectedPC m a b t c d -> ProtectedPC m a b t c d -> ProtectedPC m a b t c dSource

Logical and combinator for protected pointcuts

ppcOr :: (Typeable1Monad m, LeastGen (a -> b) (c -> d) (agen -> bgen), LessGen (agen -> bgen) (a' -> m b')) => ProtectedPC m a b t a' b' -> ProtectedPC m c d t a' b' -> ProtectedPC m agen bgen t a' b'Source

Logical or combinator for protected pointcuts