This function appends the supplied values, including nulls, to the end of the sequence.
MCO_RET classname_fieldname_append_nullable( /*IN*/ classname *handle, /*IN*/ TYPE *values, /*IN*/ mco_size_t n_items, /*IN*/ mco_bitmap_word_t const * nulls );
handle | A pointer to a classname handle |
values |
A pointer to the values to be appended to the sequence |
n_items |
The number of elements to be appended from |
nulls | An array of mco_bitmap_word_t (defined as an 8-byte unsigned integer), where each set bit marks a null element in the sequence. The position of the bit corresponds to the position of the null element in the sequence. Given that mco_bitmap_word_t is 8 bytes (64 bits), the nulls array must contain at least ((n_items + 63) / 64) elements |
This function applies to sequence fields. The supplied values are appended to the end of the sequence.
MCO_S_OK | The value was put successfully |
MCO_E_ACCESS | The transaction that the class handle is scoped to is MCO_READ_ONLY |
Quote quote; float open_buf[BUF_SIZE]; mco_bitmap_word_t null_bitmap[(BUF_SIZE + 63) / 64]; /* Reset NULL bitmap */ memset(null_bitmap, 0x00, sizeof(null_bitmap)); /* Locate the quote object and initialize the "quote" handle... */ /* Fill the open_buf with BUF_SIZE values... */ /* ... */ /* Mark the first element as null by setting the first bit */ null_bitmap[0] |= 0x01; /* Mark the third element as null by setting the third bit */ null_bitmap[0] |= 0x04; /* Append the "open_buf" array's contents to the "open" sequence of the quote and set the NULL bitmap */ Quote_open_append_nullable("e, open_buf, BUF_SIZE, null_bitmap);