public static CompositeIndexLookup Make( object[] keyValues, MultiKeyFromObjectArray multiKeyTransform, RangeIndexLookupValue[] rangeValues, Type[] rangeCoercion) { // construct chain IList<CompositeIndexLookup> queries = new List<CompositeIndexLookup>(); if (keyValues != null && keyValues.Length > 0) { queries.Add(new CompositeIndexLookupKeyed(keyValues, multiKeyTransform)); } for (int i = 0; i < rangeValues.Length; i++) { queries.Add(new CompositeIndexLookupRange(rangeValues[i], rangeCoercion[i])); } // Hook up as chain for remove CompositeIndexLookup last = null; foreach (CompositeIndexLookup action in queries) { if (last != null) { last.Next = action; } last = action; } return queries[0]; }
public static CompositeIndexLookup Make(Object[] keyValues, IList <RangeIndexLookupValue> rangeValues, IList <Type> rangeCoercion) { // construct chain var queries = new List <CompositeIndexLookup>(); if (keyValues != null && keyValues.Length > 0) { queries.Add(new CompositeIndexLookupKeyed(keyValues)); } for (int i = 0; i < rangeValues.Count; i++) { queries.Add(new CompositeIndexLookupRange(rangeValues[i], rangeCoercion[i])); } // Hook up as chain for remove CompositeIndexLookup last = null; foreach (CompositeIndexLookup action in queries) { if (last != null) { last.SetNext(action); } last = action; } return(queries[0]); }
public void SetNext(CompositeIndexLookup value) { _next = value; }
public void SetNext(CompositeIndexLookup next) { _next = next; }