Example #1
0
        public static List <IElement> SearchIElement(IElement rootElement, AbstractSearchCondition condition)
        {
            List <IElement> re = new List <IElement>();

            DoSearch(rootElement, condition, ref re);
            return(re);
        }
Example #2
0
 private static void DoSearch(IElement element, AbstractSearchCondition condition, ref List <IElement> re)
 {
     if (element == null)
     {
         return;
     }
     if (condition.IsSatisfiable(element))
     {
         re.Add(element);
     }
     if (element.Children != null && element.Children.Count > 0)
     {
         foreach (IElement child in element.Children)
         {
             DoSearch(child, condition, ref re);
         }
     }
 }