List<T> Class

Template Parameters | Constraint | Constructors & Destructor | Member Functions | Type Aliases | Member Variables

Most fundamental container class. The list is like an array that can grow.

Elements can be added by copying ( Add ) or by moving ( Add ). Adding takes amortized constant time. When moving you may want to use the Rvalue to convert an argument to an rvalue. Elements of a list can be accessed by index using the operator[] or operator[] member functions. Element access is O(1) operation.

Model of RandomAccessContainer , FrontInsertionSequence , BackInsertionSequence , and InsertionSequence .

Definition

Line 12 of System.Base/List.cm

Template Parameters

T

Constraint

T  is  Semiregular

Constructors & Destructor

public List()
public List(List&& that)
public List(const List& that)
public List(long n, const T& value)
public ~List()

Member Functions

public void Add(T&& item)
public void Add(const T& item)
public inline T& Back()
public inline const T& Back() const
public inline RandomAccessIter<T, T&, T*> Begin()
public inline RandomAccessIter<T, const T&, const T*> Begin() const
public inline RandomAccessIter<T, const T&, const T*> CBegin() const
public inline RandomAccessIter<T, const T&, const T*> CEnd() const
public inline long Capacity() const
public void Clear()
public inline long Count() const
private void Destroy()
public inline RandomAccessIter<T, T&, T*> End()
public inline RandomAccessIter<T, const T&, const T*> End() const
public inline T& Front()
public inline const T& Front() const
private void Grow(long minRes)
public RandomAccessIter<T, T&, T*> Insert(RandomAccessIter<T, T&, T*> pos, T&& item)
public RandomAccessIter<T, T&, T*> Insert(RandomAccessIter<T, T&, T*> pos, const T& item)
public RandomAccessIter<T, T&, T*> InsertFront(T&& item)
public RandomAccessIter<T, T&, T*> InsertFront(const T& item)
public inline bool IsEmpty() const
public T Remove(RandomAccessIter<T, T&, T*> pos)
public void Remove(RandomAccessIter<T, T&, T*> first, RandomAccessIter<T, T&, T*> last)
public void Remove(const T& item)
public T RemoveFirst()
public T RemoveLast()
public void Reserve(long minRes)
public void Resize(long newCount)
public void operator=(List&& that)
public void operator=(const List& that)
public inline T& operator[](long index)
public inline const T& operator[](long index) const

Type Aliases

public typedef ConstIterator RandomAccessIter<T, const T&, const T*>
public typedef Iterator RandomAccessIter<T, T&, T*>
private typedef Self List
public typedef ValueType T

Member Variables

private long count
private T* items
private long res

Constructor& Destructor Details

List Constructor

public List()

Definition
Line 19 of System.Base/List.cm


List Constructor

public List(List&& that)

Definition
Line 30 of System.Base/List.cm


List Constructor

public List(const List& that)

Definition
Line 22 of System.Base/List.cm


List Constructor

public List(long n, const T& value)

Definition
Line 36 of System.Base/List.cm


~List Destructor

public ~List()

Definition
Line 59 of System.Base/List.cm


Member Function Details

Add Member Function

public void Add(T&& item)

Constraint
T  is  Movable
Definition
Line 115 of System.Base/List.cm


Add Member Function

public void Add(const T& item)

Constraint
T  is  Copyable
Definition
Line 109 of System.Base/List.cm


Back Member Function

public inline T& Back()

Definition
Line 297 of System.Base/List.cm


Back Member Function

public inline const T& Back()

Definition
Line 292 of System.Base/List.cm


Begin Member Function

public inline RandomAccessIter<T, T&, T*> Begin()

Definition
Line 246 of System.Base/List.cm


Begin Member Function

public inline RandomAccessIter<T, const T&, const T*> Begin()

Definition
Line 250 of System.Base/List.cm


CBegin Member Function

public inline RandomAccessIter<T, const T&, const T*> CBegin()

Definition
Line 254 of System.Base/List.cm


CEnd Member Function

public inline RandomAccessIter<T, const T&, const T*> CEnd()

Definition
Line 274 of System.Base/List.cm


Capacity Member Function

public inline long Capacity()

Definition
Line 97 of System.Base/List.cm


Clear Member Function

public void Clear()

Definition
Line 105 of System.Base/List.cm


Count Member Function

public inline long Count()

Definition
Line 93 of System.Base/List.cm


Destroy Member Function

private void Destroy()

Definition
Line 316 of System.Base/List.cm


End Member Function

public inline RandomAccessIter<T, T&, T*> End()

Definition
Line 258 of System.Base/List.cm


End Member Function

public inline RandomAccessIter<T, const T&, const T*> End()

Definition
Line 266 of System.Base/List.cm


Front Member Function

public inline T& Front()

Definition
Line 287 of System.Base/List.cm


Front Member Function

public inline const T& Front()

Definition
Line 282 of System.Base/List.cm


Grow Member Function

private void Grow(long minRes)

Definition
Line 302 of System.Base/List.cm


Insert Member Function

public RandomAccessIter<T, T&, T*> Insert(RandomAccessIter<T, T&, T*> pos, T&& item)

Constraint
T  is  Movable
Definition
Line 141 of System.Base/List.cm


Insert Member Function

public RandomAccessIter<T, T&, T*> Insert(RandomAccessIter<T, T&, T*> pos, const T& item)

Constraint
T  is  Copyable
Definition
Line 121 of System.Base/List.cm


InsertFront Member Function

public RandomAccessIter<T, T&, T*> InsertFront(T&& item)

Constraint
T  is  Movable
Definition
Line 165 of System.Base/List.cm


InsertFront Member Function

public RandomAccessIter<T, T&, T*> InsertFront(const T& item)

Constraint
T  is  Copyable
Definition
Line 161 of System.Base/List.cm


IsEmpty Member Function

public inline bool IsEmpty()

Definition
Line 101 of System.Base/List.cm


Remove Member Function

public T Remove(RandomAccessIter<T, T&, T*> pos)

Definition
Line 169 of System.Base/List.cm


Remove Member Function

public void Remove(RandomAccessIter<T, T&, T*> first, RandomAccessIter<T, T&, T*> last)

Definition
Line 220 of System.Base/List.cm


Remove Member Function

public void Remove(const T& item)

Definition
Line 192 of System.Base/List.cm


RemoveFirst Member Function

public T RemoveFirst()

Definition
Line 179 of System.Base/List.cm


RemoveLast Member Function

public T RemoveLast()

Definition
Line 183 of System.Base/List.cm


Reserve Member Function

public void Reserve(long minRes)

Definition
Line 63 of System.Base/List.cm


Resize Member Function

public void Resize(long newCount)

Constraint
T  is  Movable
Definition
Line 70 of System.Base/List.cm


operator= Member Function

public void operator=(List&& that)

Constraint
T  is  Movable
Definition
Line 53 of System.Base/List.cm


operator= Member Function

public void operator=(const List& that)

Constraint
T  is  Copyable
Definition
Line 46 of System.Base/List.cm


operator[] Member Function

public inline T& operator[](long index)

Definition
Line 241 of System.Base/List.cm


operator[] Member Function

public inline const T& operator[](long index)

Definition
Line 236 of System.Base/List.cm