public interface PointFreeRule
| Modifier and Type | Interface and Description | 
|---|---|
static class  | 
PointFreeRule.All  | 
static class  | 
PointFreeRule.AppNest  | 
static class  | 
PointFreeRule.BangEta  | 
static class  | 
PointFreeRule.CataFuseDifferent  | 
static class  | 
PointFreeRule.CataFuseSame  | 
static class  | 
PointFreeRule.CompAssocLeft  | 
static class  | 
PointFreeRule.CompAssocRight  | 
static interface  | 
PointFreeRule.CompRewrite  | 
static class  | 
PointFreeRule.LensAppId  | 
static class  | 
PointFreeRule.LensComp  | 
static class  | 
PointFreeRule.LensCompFunc  | 
static class  | 
PointFreeRule.Many  | 
static class  | 
PointFreeRule.Nop  | 
static class  | 
PointFreeRule.One  | 
static class  | 
PointFreeRule.OrElse  | 
static class  | 
PointFreeRule.Seq  | 
static class  | 
PointFreeRule.SortInj  | 
static class  | 
PointFreeRule.SortProj  | 
| Modifier and Type | Method and Description | 
|---|---|
static PointFreeRule | 
all(PointFreeRule rule)  | 
static PointFreeRule | 
everywhere(PointFreeRule rule)  | 
static PointFreeRule | 
many(PointFreeRule rule)  | 
static PointFreeRule | 
nop()  | 
static PointFreeRule | 
once(PointFreeRule rule)  | 
static PointFreeRule | 
one(PointFreeRule rule)  | 
static PointFreeRule | 
orElse(PointFreeRule first,
      PointFreeRule second)  | 
static PointFreeRule | 
orElseStrict(PointFreeRule first,
            by-name PointFreeRule second)  | 
<A> Optional<? extends PointFree<A>> | 
rewrite(Type<A> type,
       PointFree<A> expr)  | 
default <A,B> Optional<View<A,B>> | 
rewrite(View<A,B> view)  | 
default <A> PointFree<A> | 
rewriteOrNop(Type<A> type,
            PointFree<A> expr)  | 
default <A,B> View<A,B> | 
rewriteOrNop(View<A,B> view)  | 
static PointFreeRule | 
seq(List<by-name PointFreeRule> rules)  | 
static PointFreeRule | 
seq(PointFreeRule first,
   by-name PointFreeRule second)  | 
static PointFreeRule nop()
static PointFreeRule seq(PointFreeRule first, by-name PointFreeRule second)
static PointFreeRule seq(List<by-name PointFreeRule> rules)
static PointFreeRule orElse(PointFreeRule first, PointFreeRule second)
static PointFreeRule orElseStrict(PointFreeRule first, by-name PointFreeRule second)
static PointFreeRule all(PointFreeRule rule)
static PointFreeRule one(PointFreeRule rule)
static PointFreeRule once(PointFreeRule rule)
static PointFreeRule many(PointFreeRule rule)
static PointFreeRule everywhere(PointFreeRule rule)