public void PopulateFilterIndex(Type type, IDictionary <string, IList <QueryFilterCondition> > index) { if (Operator != and) { return; } if (Argument1 != null) { Argument1.PopulateFilterIndex(type, index); } else if (Child1 != null) { Child1.PopulateFilterIndex(type, index); } if (Argument2 != null) { Argument2.PopulateFilterIndex(type, index); } else if (Child2 != null) { Child2.PopulateFilterIndex(type, index); } }