36template<
class T,
class Addr>
45 const label len = list.
size();
56 os.beginRawWrite(len*
sizeof(
T));
59 for (label i=0; i < len; ++i)
63 reinterpret_cast<const char*
>(&(list[i])),
75 os << len << token::BEGIN_BLOCK << list[0] << token::END_BLOCK;
79 (len <= 1 || !shortLen)
94 os << len << token::BEGIN_LIST;
97 for (label i=0; i < len; ++i)
99 if (i)
os << token::SPACE;
104 os << token::END_LIST;
111 os <<
nl << len <<
nl << token::BEGIN_LIST <<
nl;
114 for (label i=0; i < len; ++i)
120 os << token::END_LIST <<
nl;
Base for lists with indirect addressing, templated on the list contents type and the addressing type....
bool uniform() const
True if all entries have identical values, and list is non-empty.
label size() const noexcept
The number of elements in the list.
Ostream & writeList(Ostream &os, const label shortLen=0) const
Write List, with line-breaks in ASCII when length exceeds shortLen.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
OBJstream os(runTime.globalPath()/outputName)
constexpr char nl
The newline '\n' character (0x0a)
A template class to specify that a data type can be considered as being contiguous in memory.