|
Enhanced C#
Loyc library documentation
|
Helper type returned from LCExt.AsListSource{T}(IReadOnlyList{T}). More...
Helper type returned from LCExt.AsListSource{T}(IReadOnlyList{T}).
A read-only wrapper that implements IListSource.
Public fields | |
| int | Count => _obj.Count |
| bool | IsEmpty => Count == 0 |
| T | this[int index] => _obj[index] |
| T | this[int index, T defaultValue] => (uint)index >= (uint)_obj.Count ? defaultValue : _obj[index] |
Public Member Functions | |
| ReadOnlyListAsListSource (IReadOnlyList< T > obj) | |
| bool | Contains (T item) |
| int | IndexOf (T item) |
| void | CopyTo (T[] array, int arrayIndex) |
| IEnumerator< T > | GetEnumerator () |
| T | TryGet (int index, out bool fail) |
| Slice_< T > | Slice (int start, int count) |
| Returns a sub-range of this list. More... | |
Public Member Functions inherited from Loyc.WrapperBase< T > | |
| override bool | Equals (object?obj) |
| Returns true iff the parameter 'obj' is a wrapper around an object that is equal to the object that this object wraps. More... | |
| override int | GetHashCode () |
| Returns the hashcode of the wrapped object. More... | |
| override string | ToString () |
| Returns ToString() of the wrapped object. More... | |
Public Member Functions inherited from Loyc.Collections.ITryGet< in K, out V > | |
| V | TryGet (K key, out bool fail) |
| Gets the item for the specified key or index, and does not throw an exception on failure. More... | |
Additional Inherited Members | |
Properties inherited from Loyc.Collections.ISource< out T > | |
| new int | Count [get] |
| Gets the number of items in the collection. More... | |
Properties inherited from Loyc.Collections.ICount | |
| int | Count [get] |
| Gets the number of items in the collection. More... | |
Properties inherited from Loyc.Collections.IIsEmpty | |
| bool | IsEmpty [get] |
Properties inherited from Loyc.Collections.IIndexed< in K, out V > | |
| V | this[K key] [get] |
| Gets the value associated with the specified key. More... | |
Protected Member Functions inherited from Loyc.WrapperBase< T > | |
| WrapperBase (T wrappedObject) | |
Protected fields inherited from Loyc.WrapperBase< T > | |
| T | _obj |
Protected static fields inherited from Loyc.WrapperBase< T > | |
|
static readonly EqualityComparer< T > | TComp = EqualityComparer<T>.Default |
| Slice_<T> Loyc.Collections.ReadOnlyListAsListSource< T >.Slice | ( | int | start, |
| int | count | ||
| ) |
Returns a sub-range of this list.
| start | The new range will start at this index in the current list (this location will be index [0] in the new range). |
| count | The desired number of elements in the new range, or int.MaxValue to get all elements until the end of the list. |
| ArgumentException | The start index was below zero. |
The (start, count) range is allowed to be invalid, as long as start is zero or above.
this.Count - start. Implementation note: do not compute (start + count) because it may overflow. Instead, test whether (count > this.Count - start). Most collections should use the following implementation:
IListSource<T> IListSource<T>.Slice(int start, int count) { return Slice(start, count); }
public Slice_<T> Slice(int start, int count) { return new Slice_<T>(this, start, count); }
Implements Loyc.Collections.IListSource< out T >.
1.8.7