Пример #1
0
 /// <summary>
 /// 过滤
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="item"></param>
 /// <param name="func"></param>
 /// <returns></returns>
 public static IEnumerable <Tree <T> > Filter <T>(this Tree <T> item, Func <Tree <T>, bool> func) where T : class
 {
     return(new[] { item }.Filter(func));
 }
Пример #2
0
 /// <summary>
 /// 是否是叶子节点
 /// </summary>
 public static bool IsLeaf <T>(this Tree <T> tree) => tree.Children?.Count == 0;
Пример #3
0
 /// <summary>
 /// 是否是根节点
 /// </summary>
 public static bool IsRoot <T>(this Tree <T> tree) => tree.Parent == null;
Пример #4
0
 /// <summary>
 /// 所有父级
 /// </summary>
 public static ICollection <Tree <T> > AllParent <T>(this Tree <T> tree, Func <Tree <T>, Tree <T> > selector) => GetParents(tree, selector);
Пример #5
0
 /// <summary>
 /// 所有子级
 /// </summary>
 public static ICollection <Tree <T> > AllChildren <T>(this Tree <T> tree, Func <Tree <T>, IEnumerable <Tree <T> > > selector) => GetChildren(tree, selector);
Пример #6
0
 /// <summary>
 /// 所有子级
 /// </summary>
 public static ICollection <Tree <T> > AllChildren <T>(this Tree <T> tree) => GetChildren(tree, c => c.Children);