Enhanced C#
Language of your choice: library documentation
|
A compact auto-enlarging list that efficiently supports supports insertions at the beginning or end of the list. More...
A compact auto-enlarging list that efficiently supports supports insertions at the beginning or end of the list.
This class is the same as DList{object}
except that it also implements the IList interface.
An article about this class is available.
Properties | |
int | Capacity [get, set] |
T | this[int index] [get, set] |
T | this[int index, T defaultValue] [get] |
int | Count [get] |
bool | IsReadOnly [get] |
T | First [get, set] |
T | Last [get, set] |
bool | IsEmpty [get] |
bool | IsFixedSize [get] |
bool | IsSynchronized [get] |
object | SyncRoot [get] |
![]() | |
int | Count [get] |
Gets the number of items in the collection. More... | |
![]() | |
bool | IsEmpty [get] |
![]() | |
new T | this[int index] [get, set] |
Gets or sets an element of the array-like collection. More... | |
![]() | |
T | this[int index] [set] |
![]() | |
T | First [get, set] |
Gets the first item in the deque. More... | |
T | Last [get, set] |
Public Member Functions | |
DList (int capacity) | |
DList (IReadOnlyCollection< T > items) | |
DList (ICollection< T > items) | |
DList (ICollectionAndReadOnly< T > items) | |
DList (IEnumerable< T > items) | |
DList (T[] items) | |
int | IndexOf (T item) |
void | PushLast (ICollection< T > items) |
void | PushLast (IEnumerable< T > items) |
void | PushLast (IReadOnlyCollection< T > items) |
void | PushLast (ICollectionAndReadOnly< T > items) |
void | PushLast (T item) |
void | PushFirst (T item) |
void | PopLast (int amount) |
void | PopFirst (int amount) |
void | Insert (int index, T item) |
void | InsertRange (int index, ICollection< T > items) |
void | InsertRange (int index, IReadOnlyCollection< T > items) |
void | InsertRange (int index, ICollectionAndReadOnly< T > items) |
void | InsertRange (int index, IEnumerable< T > e) |
void | AddRange (ICollectionAndReadOnly< T > c) |
void | AddRange (ICollection< T > c) |
void | AddRange (IReadOnlyCollection< T > s) |
void | AddRange (IEnumerable< T > e) |
void | RemoveAt (int index) |
void | RemoveRange (int index, int amount) |
int | RemoveAll (Predicate< T > condition) |
Removes the all the elements that match the conditions defined by the specified predicate. More... | |
bool | TrySet (int index, T value) |
T | TryGet (int index, out bool fail) |
void | Add (T item) |
An alias for PushLast(). More... | |
void | Clear () |
bool | Contains (T item) |
void | CopyTo (T[] array, int arrayIndex) |
bool | Remove (T item) |
IEnumerator< T > | GetEnumerator () |
Maybe< T > | TryPopFirst () |
Maybe< T > | TryPeekFirst () |
Maybe< T > | TryPopLast () |
Maybe< T > | TryPeekLast () |
int | BinarySearch (T k, Comparer< T > comp) |
int | BinarySearch< K > (K k, Func< T, K, int > comp) |
void | Resize (int newSize) |
DList< T > | Clone () |
void | CopyTo (int sourceIndex, T[] destination, int destinationIndex, int subcount) |
DList< T > | CopySection (int start, int subcount) |
void | Sort (Comparison< T > comp) |
void | Sort (int index, int count, Comparison< T > comp) |
ListSlice< T > | Slice (int start, int count) |
void | CopyTo (Array array, int arrayIndex) |
new void | Remove (object obj) |
new int | Add (object obj) |
![]() | |
T | TryGet (int index, out bool fail) |
Gets the item at the specified index, and does not throw an exception on failure. More... | |
IRange< T > | Slice (int start, int count=int.MaxValue) |
Returns a sub-range of this list. More... | |
![]() | |
void | Add (T item) |
Protected fields | |
InternalDList< T > | _dlist = InternalDList<T>.Empty |
|
inline |
An alias for PushLast().
Referenced by Loyc.Collections.EnumerableExt.AdjacentPairsCircular< T >(), Loyc.Syntax.Lexing.TokenTree.Flatten(), Loyc.Syntax.Lexing.TokensToTree.NextToken(), and Loyc.Ecs.Parser.EcsPreprocessor.NextToken().
|
inline |
Removes the all the elements that match the conditions defined by the specified predicate.
match | A delegate that defines the conditions of the elements to remove |
Implements Loyc.Collections.ICollectionEx< T >.