Enhanced C#
Language of your choice: library documentation
Properties | Public Member Functions | Static Public Member Functions | List of all members
Loyc.Collections.WListBase< T > Class Template Reference

Shared base class of FWList and WList. More...


Source file:
Inheritance diagram for Loyc.Collections.WListBase< T >:
Loyc.Collections.WListProtected< T > Loyc.Collections.IListAndListSource< T > Loyc.Collections.IListSource< T > Loyc.Collections.ICollectionAndReadOnly< T > Loyc.Collections.FWList< T > Loyc.Collections.WList< T >

Remarks

Shared base class of FWList and WList.

Template Parameters
TThe type of elements in the list

Properties

this[int index] [get, set]
 
new int Count [get]
 
bool IsReadOnly [get]
 
new int BlockChainLength [get]
 
- Properties inherited from Loyc.Collections.WListProtected< T >
byte UserByte [get, set]
 An additional byte that the derived class can optionally use. More...
 
int BlockChainLength [get]
 Gets the number of blocks used by this list. More...
 

Public Member Functions

new void Add (T item)
 
new void Clear ()
 
new void Insert (int index, T item)
 
new void RemoveAt (int index)
 
new int IndexOf (T item)
 
new bool Contains (T item)
 
new void CopyTo (T[] array, int arrayIndex)
 
new bool Remove (T item)
 
IEnumerator< T > GetEnumerator ()
 
TryGet (int index, out bool fail)
 
Slice_< T > Slice (int start, int count)
 
void Push (T item)
 Synonym for Add(); adds an item to the front of the list. More...
 
new FVList< T > ToFVList ()
 
new VList< T > ToVList ()
 
- Public Member Functions inherited from Loyc.Collections.IListSource< 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...
 

Static Public Member Functions

static operator FVList< T > (WListBase< T > list)
 Returns this list as a FVList; if this is a WList, the order of the elements is reversed at the same time. More...
 
static operator VList< T > (WListBase< T > list)
 Returns this list as a VList; if this is a FWList, the order of the elements is reversed at the same time. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Loyc.Collections.WListProtected< T >
virtual int AdjustWListIndex (int index, int size)
 This method implements the difference between FWList and WList: In FWList it returns index, but in WList it returns Count-size-index. More...
 
 WListProtected (WListProtected< T > original, bool takeOwnership)
 
GetAt (int index)
 Gets an item from a FWList or WList at the specified index. More...
 
void SetAt (int index, T value)
 Sets an item in a FWList or WList at the specified index. More...
 
void Add (T item)
 Inserts an item at the "front" of the list, which is index 0 for FWList, or Count for WList. More...
 
void Insert (int index, T item)
 
void RemoveAt (int index)
 
int IndexOf (T item)
 Searches for the specified object and returns the zero-based index of the first occurrence (lowest index) within the entire FVList. More...
 
bool Contains (T item)
 
void CopyTo (T[] array, int arrayIndex)
 
bool Remove (T item)
 
virtual IEnumerator< T > GetIEnumerator ()
 
FVList< T >.Enumerator GetVListEnumerator ()
 
VList< T >.Enumerator GetRVListEnumerator ()
 
void RemoveAtDff (int distanceFromFront)
 
void RemoveRangeBase (int distanceFromFront, int count)
 
void InsertRangeAtDff (int distanceFromFront, IList< T > items, bool isRWList)
 
void InsertAtDff (int distanceFromFront, T item)
 
GetAtDff (int distanceFromFront)
 Gets an item WITHOUT doing a range check More...
 
void SetAtDff (int distanceFromFront, T item)
 Sets an item WITHOUT doing a range or mutability check More...
 
FVList< T > ToFVList ()
 Returns this list as a FVList; if this is a WList, the order of the elements is reversed at the same time. More...
 
VList< T > ToVList ()
 Returns this list as a VList; if this is a FWList, the order of the elements is reversed at the same time. More...
 

Member Function Documentation

static Loyc.Collections.WListBase< T >.operator FVList< T > ( WListBase< T >  list)
inlineexplicitstatic

Returns this list as a FVList; if this is a WList, the order of the elements is reversed at the same time.

This operation marks the items of the FWList or WList as immutable. You can still modify the list afterward, but some or all of the list may have to be copied.

static Loyc.Collections.WListBase< T >.operator VList< T > ( WListBase< T >  list)
inlineexplicitstatic

Returns this list as a VList; if this is a FWList, the order of the elements is reversed at the same time.

This operation marks the items of the FWList or WList as immutable. You can still modify the list afterward, but some or all of the list may have to be copied.

void Loyc.Collections.WListBase< T >.Push ( item)
inline

Synonym for Add(); adds an item to the front of the list.

References Loyc.Collections.Add.

Referenced by Loyc.Collections.WList< Loyc.Syntax.LNode >.Resize(), and Loyc.Collections.FWList< T >.ToArray().