Sha256: 4a31b1b571672c2ee10df89d408205bd241804819c44e537d2c5a18a2ea71981
Contents?: true
Size: 1.03 KB
Versions: 2
Compression:
Stored size: 1.03 KB
Contents
#ifndef EXPAND_CAPACITY_H #define EXPAND_CAPACITY_H #define expand_capacity(TYPE, ITEMS, CAPACITY, INITIAL_CAPACITY, DESC) { \ unsigned long prev_capacity = CAPACITY; \ TYPE *prev_items = ITEMS; \ \ if (CAPACITY == UINT_MAX) raise_max_capacity_reached_error(DESC); \ CAPACITY = prev_items == NULL ? INITIAL_CAPACITY : prev_capacity * 2; \ if (CAPACITY <= prev_capacity) CAPACITY = UINT_MAX; \ ITEMS = calloc(CAPACITY, sizeof(TYPE)); \ \ if (prev_items != NULL) { \ memcpy(ITEMS, prev_items, prev_capacity * sizeof(TYPE)); \ free(prev_items); \ } \ } #endif
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
dijkstra_fast-1.5.3 | ext/dijkstra_fast/expand_capacity.h |
dijkstra_fast-1.5.2 | ext/dijkstra_fast/expand_capacity.h |