[]
Represents an index or a subindex in its capacity of scanning through data. Provides methods for searching data items.
public interface IIndexScanner<T>
| Name | Description |
|---|---|
| T | The type of the elements of the indexed collection. |
This interface is implemented by Index<T>. It is also used by subindexes, but there it is not directly implemented by Subindex<T>, but rather returned by the IndexQuery<T>.Subindex method because it depends on the item found by an index or a subindex that is the parent of that subindex.
IIndexScanner<T> has a typed key counterpart IIndexScanner<T, TKey> that is used with typed key classes Index<T, TKey> and Subindex<T, TKey>
| Name | Description |
|---|---|
| Definition | Gets an Index<T> or a Subindex<T> definition on which the scanner is based. |
| KeyCount | Gets the number of distinct key values in all items of this collection. |
| ParentScanner | Gets an index or a subindex scanner that is the parent of a subindex scanner. |
| Name | Description |
|---|---|
| All(Order) | Gets all items in the indexed collection. |
| ContainsKey(object) | Returns a value that indicates whether the collection contains an item with the given key value. |
| Find(object) | Finds items with the specified key value. |
| FindBetween(object, bool, object, bool, Order) | Finds items with key values in the interval between the specified values. |
| FindGreater(object, bool, Order) | Finds items with keys greater than the specified value. |
| FindKeys(IEnumerable, Order) | Finds items containing any of the specified key values. |
| FindLess(object, bool, Order) | Finds items with keys less than the specified value. |
| FindStartingWith(string, Func<string, bool>, Order) | Finds items with string key values starting with the specified string. |
| GroupJoin<T2, TResult>(IIndexScanner<T2>, Func<T, IEnumerable<T2>, TResult>) | Correlates the items of this indexed collection with the items of another indexed collection and groups the results by the item of this collection. |
| GroupJoin<T2, TResult>(IEnumerable<T2>, Func<T2, object>, Func<IEnumerable<T>, T2, TResult>) | Correlates the items of this indexed collection with the items of another sequence and groups the results by the item of the second sequence. |
| GroupJoin<T2, TResult>(IEnumerable<T2>, Func<T2, object>, Func<T, IEnumerable<T2>, TResult>) | Correlates the items of this indexed collection with the items of another sequence and groups the results by the item of this collection. |
| Join<T2, TResult>(IIndexScanner<T2>, Func<T, T2, TResult>, JoinOperator) | Correlates the items of this indexed collection with the items of another indexed collection and returns the combined items with matching keys. |
| Join<T2, TResult>(IEnumerable<T2>, Func<T2, object>, Func<T, T2, TResult>, JoinOperator) | Correlates the items of this indexed collection with the items of another sequence and returns the combined items with matching keys. |