60template<
class T>
class autoPtr;
61template<
class T>
class refPtr;
62template<
class T>
class tmp;
91 inline constexpr PtrList()
noexcept;
94 inline explicit PtrList(
const label len);
106 template<
class CloneArg>
130 template<
class... Args>
139 const T*
set(
const label i)
const {
return this->
get(i); }
149 void resize(
const label newLen);
155 template<
class... Args>
168 inline void append(std::unique_ptr<T>&& ptr);
180 template<
class... Args>
194 inline autoPtr<T> set(
const label i, std::unique_ptr<T>&& ptr);
Forward declarations for SLPtrList.
A helper class when constructing from an Istream or dictionary.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
Template class for non-intrusive linked PtrLists.
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
void transfer(PtrList< T > &list)
Transfer into this list and annul the argument list.
const T * set(const label i) const
void append(T *ptr)
Append an element to the end of the list.
PtrList< T > clone(Args &&... args) const
Make a copy by cloning each of the list elements.
autoPtr< T > release(const label i)
Release ownership of the pointer at the given position.
void emplace_append(Args &&... args)
Construct and append an element to the end of the list.
void setSize(const label newLen)
Same as resize()
void free()
Delete the allocated entries, but retain the list size.
void readIstream(Istream &is, const INew &inew)
Read from Istream using Istream constructor class.
autoPtr< T > emplace(const label i, Args &&... args)
Construct and set an element.
void clear()
Clear the PtrList. Delete allocated entries and set size to zero.
constexpr PtrList() noexcept
Default construct.
void operator=(const PtrList< T > &list)
Copy assignment.
void resize(const label newLen)
Adjust size of PtrList.
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
A list of pointers to objects of type <T>, without allocation/deallocation management of the pointers...
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A class for managing references or pointers (no reference counting)
A class for managing temporary objects.
Istream & operator>>(Istream &, directionInfo &)
Foam::argList args(argc, argv)