Go to the source code of this file.
◆ array_iter
◆ array_iter_next()
static Datum array_iter_next |
( |
array_iter * |
it, |
|
|
bool * |
isnull, |
|
|
int |
i, |
|
|
int |
elmlen, |
|
|
bool |
elmbyval, |
|
|
char |
elmalign |
|
) |
| |
|
inlinestatic |
Definition at line 81 of file arrayaccess.h.
83{
85
87 {
90 }
91 else
92 {
94 {
95 *isnull = true;
97 }
98 else
99 {
100 *isnull = false;
105 }
108 {
112 }
113 }
114
115 return ret;
116}
#define att_align_nominal(cur_offset, attalign)
#define att_addlength_pointer(cur_offset, attlen, attptr)
static Datum fetch_att(const void *T, bool attbyval, int attlen)
References att_addlength_pointer, att_align_nominal, array_iter::bitmapptr, array_iter::bitmask, array_iter::dataptr, array_iter::datumptr, fetch_att(), i, and array_iter::isnullptr.
Referenced by array_cmp(), array_contain_compare(), array_eq(), array_map(), array_out(), array_send(), array_unnest(), hash_array(), and hash_array_extended().
◆ array_iter_setup()
Definition at line 49 of file arrayaccess.h.
50{
52 {
54 {
57
60 }
61 else
62 {
63
68 }
69 }
70 else
71 {
76 }
78}
#define ARR_NULLBITMAP(a)
#define VARATT_IS_EXPANDED_HEADER(PTR)
References a, ARR_DATA_PTR, ARR_NULLBITMAP, array_iter::bitmapptr, array_iter::bitmask, array_iter::dataptr, array_iter::datumptr, array_iter::isnullptr, and VARATT_IS_EXPANDED_HEADER.
Referenced by array_cmp(), array_contain_compare(), array_eq(), array_map(), array_out(), array_send(), array_unnest(), hash_array(), and hash_array_extended().