| 34 | static void *END = &mem; |
| 35 | |
| 36 | static pn_list_t *build_list(size_t capacity, ...) { |
| 37 | va_list ap; |
| 38 | va_start(ap, capacity); |
| 39 | |
| 40 | pn_list_t *result; |
| 41 | void *arg = va_arg(ap, void *); |
| 42 | bool last = arg == END; |
| 43 | // No information about list types assume everything is PN_OBJECT |
| 44 | if (last) { |
| 45 | result = pn_list(PN_OBJECT, capacity); |
| 46 | return result; |
| 47 | } |
| 48 | result = pn_list(pn_class(arg), capacity); |
| 49 | while (true) { |
| 50 | if (arg == END) { |
| 51 | break; |
| 52 | } |
| 53 | |
| 54 | pn_list_add(result, arg); |
| 55 | pn_decref(arg); |
| 56 | arg = va_arg(ap, void *); |
| 57 | } |
| 58 | va_end(ap); |
| 59 | |
| 60 | return result; |
| 61 | } |
| 62 | |
| 63 | static pn_map_t *build_map(float load_factor, size_t capacity, ...) { |
| 64 | va_list ap; |
no test coverage detected