Ejemplo n.º 1
0
 public Shrub <T2> Map <T2>(Func <T, T2> f)
 {
     return(Match(
                l => Shrub <T2> .Node(l.Select(s => s.Map <T2>(f)).ToList())
                ,
                v => Shrub <T2> .Leaf(f(v))));
 }
Ejemplo n.º 2
0
 public Shrub <T2> MapI <T2>(List <int> p, Func <T, List <int>, T2> f)
 {
     return(Match(
                l => Shrub <T2> .Node(l.Select((s, i) => s.MapI <T2>(p.Append(i).ToList(), f)).ToList())
                ,
                v => Shrub <T2> .Leaf(f(v, p))));
 }