57 template<
class T>
class List;
58 template<
class T>
class SubList;
61 template<
class T>
class UList;
95 void operator=(
const UList<T>&) =
delete;
103 friend class List<
T>;
112 inline static const UList<T>&
null();
131 return values_[a] < values_[
b];
149 return values_[a] > values_[
b];
188 inline const T*
cdata()
const;
199 inline const T&
first()
const;
205 inline const T&
last()
const;
243 void operator=(
const T&);
246 void operator=(
const zero);
339 inline bool empty()
const;
389 template<
class T,
class Cmp>
395 template<
class T,
class Cmp>
406 template<
class ListType>
409 template<
class ListType>
412 template<
class ListType>
435 #define forAll(list, i) \
436 for (Foam::label i=0; i<(list).size(); i++)
447 #define forAllReverse(list, i) \
448 for (Foam::label i=(list).size()-1; i>=0; i--)
460 #define forAllIter(Container,container,iter) \
463 Container::iterator iter = (container).begin(); \
464 iter != (container).end(); \
478 #define forAllConstIter(Container,container,iter) \
481 Container::const_iterator iter = (container).begin(); \
482 iter != (container).end(); \
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
A List obtained as a section of another List.
Greater function class that can be used for sorting.
bool operator()(const label a, const label b)
greater(const UList< T > &values)
Less function class that can be used for sorting.
less(const UList< T > &values)
bool operator()(const label a, const label b)
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
label size_type
The type that can represent the size of a UList.
const_reverse_iterator crbegin() const
Return const_reverse_iterator to begin reverse traversing the UList.
void deepCopy(const UList< T > &)
Copy elements of the given UList.
label difference_type
The type that can represent the difference between any two.
T & first()
Return the first element of the list.
label max_size() const
Return size of the largest possible UList.
T value_type
Type of values the UList contains.
bool operator<(const UList< T > &) const
Compare two ULists lexicographically. Takes linear time.
label rcIndex(const label i) const
Return the reverse circular index, i.e. the previous index.
const_reverse_iterator crend() const
Return const_reverse_iterator to end reverse traversing the UList.
const T * const_iterator
Random access iterator for traversing UList.
const_iterator cbegin() const
Return const_iterator to begin traversing the constant UList.
void checkIndex(const label i) const
Check index i is within valid range (0 ... size-1)
T * iterator
Random access iterator for traversing UList.
bool operator>=(const UList< T > &) const
Return true if !(a < b). Takes linear time.
std::reverse_iterator< const_iterator > const_reverse_iterator
Reverse iterator for reverse traversal of constant UList.
label size() const
Return the number of elements in the UList.
label fcIndex(const label i) const
Return the forward circular index, i.e. the next index.
bool empty() const
Return true if the UList is empty (ie, size() is zero)
reverse_iterator rbegin()
Return reverse_iterator to begin reverse traversing the UList.
T & operator[](const label)
Return element of UList.
iterator begin()
Return an iterator to begin traversing the UList.
const_iterator cend() const
Return const_iterator to end traversing the constant UList.
std::reverse_iterator< iterator > reverse_iterator
Reverse iterator for reverse traversal of UList.
bool operator>(const UList< T > &) const
Compare two ULists lexicographically. Takes linear time.
T & reference
Type that can be used for storing into.
const T * cdata() const
Return a const pointer to the first data element,.
std::streamsize byteSize() const
Return the binary size in number of characters of the UList.
void swap(UList< T > &)
Swap two ULists of the same type in constant time.
bool operator==(const UList< T > &) const
Equality operation on ULists of the same type.
void checkSize(const label size) const
Check size is within valid range (0 ... size)
reverse_iterator rend()
Return reverse_iterator to end reverse traversing the UList.
iterator end()
Return an iterator to end traversing the UList.
T * data()
Return a pointer to the first data element,.
bool operator!=(const UList< T > &) const
The opposite of the equality operation. Takes linear time.
void shallowCopy(const UList< T > &)
Copy the pointer held by the given UList.
T & last()
Return the last element of the list.
const T & const_reference
Type that can be used for storing into.
void checkStart(const label start) const
Check start is within valid range (0 ... size-1)
bool operator<=(const UList< T > &) const
Return true if !(a > b). Takes linear time.
A class for handling words, derived from string.
A class representing the concept of 0 used to avoid unnecessary manipulations for objects that are kn...
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
void writeListEntry(Ostream &os, const ListType &l)
void reverse(UList< T > &, const label n)
void writeEntry(Ostream &os, const HashTable< T, Key, Hash > &ht)
Istream & operator>>(Istream &, pistonPointEdgeData &)
void writeListEntries(Ostream &os, const ListType &l)
Ostream & operator<<(Ostream &os, const fvConstraints &constraints)
void stableSort(UList< T > &)
UList< label > labelUList
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)