8#ifndef INCLUDED_BDLB_ARRAYUTIL
9#define INCLUDED_BDLB_ARRAYUTIL
213#include <bdlscm_version.h>
215#include <bsl_iterator.h>
216#include <bsl_cstddef.h>
220#define BDLB_ARRAYUTIL_SIZE(a) sizeof(BloombergLP::bdlb::ArrayUtil::sizer(a))
224#define BDLB_ARRAYUTIL_LENGTH(a) sizeof(BloombergLP::bdlb::ArrayUtil::sizer(a))
244 template <
class TYPE, bsl::
size_t LENGTH>
245 static TYPE *
begin(TYPE (&array)[LENGTH]);
249 template <
class TYPE, bsl::
size_t LENGTH>
250 static TYPE *
end(TYPE (&array)[LENGTH]);
255 template <
class TYPE, bsl::
size_t LENGTH>
256 static bsl::reverse_iterator<TYPE *>
rbegin(TYPE (&array)[LENGTH]);
261 template <
class TYPE, bsl::
size_t LENGTH>
262 static bsl::reverse_iterator<TYPE *>
rend(TYPE (&array)[LENGTH]);
269 template <
class TYPE, bsl::
size_t LENGTH>
270 static bsl::size_t
length(TYPE (&array)[LENGTH]);
275 template <
class TYPE, bsl::
size_t LENGTH>
276 static bsl::size_t
size(TYPE (&array)[LENGTH]);
285 template <
class TYPE, bsl::
size_t LENGTH>
286 static char (&
sizer(TYPE (&array)[LENGTH]))[LENGTH];
301template <
class TYPE, bsl::
size_t LENGTH>
308template <
class TYPE, bsl::
size_t LENGTH>
312 return array + LENGTH;
315template <
class TYPE, bsl::
size_t LENGTH>
319 return bsl::reverse_iterator<TYPE *>(
end(array));
322template <
class TYPE, bsl::
size_t LENGTH>
326 return bsl::reverse_iterator<TYPE *>(
begin(array));
331template <
class TYPE, bsl::
size_t LENGTH>
338template <
class TYPE, bsl::
size_t LENGTH>
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
Definition bdlb_algorithmworkaroundutil.h:74
Definition bdlb_arrayutil.h:235
static TYPE * end(TYPE(&array)[LENGTH])
Definition bdlb_arrayutil.h:310
static bsl::reverse_iterator< TYPE * > rend(TYPE(&array)[LENGTH])
Definition bdlb_arrayutil.h:324
static bsl::size_t length(TYPE(&array)[LENGTH])
Definition bdlb_arrayutil.h:333
static bsl::reverse_iterator< TYPE * > rbegin(TYPE(&array)[LENGTH])
Definition bdlb_arrayutil.h:317
static TYPE * begin(TYPE(&array)[LENGTH])
Definition bdlb_arrayutil.h:303
static char(& sizer(TYPE(&array)[LENGTH]))[LENGTH]
static bsl::size_t size(TYPE(&array)[LENGTH])
Definition bdlb_arrayutil.h:340