#include "ellipsis-sarray.h"
#include <stddef.h>
#include <string.h>
#include <stdlib.h>
#include "utils/ellipsis-error.h"
#include "utils/ellipsis-init.h"
#include <stdio.h>
#include <stdint.h>
Macros | |
#define | ELLIPSIS_CONTRACT(COUNT, COND, ACTION, VERB, CSTR, CTYPE, ...) |
#define | ELLIPSIS_CONTRACT_CHECK_STATIC(CTYPE, COND, CSTR, ...) |
#define | ELLIPSIS_CONTRACT_ICE_OR_TRUE(...) |
#define | ELLIPSIS_CONTRACT_IMPL(COUNT, COND, ACTION, VERB, CSTR, CTYPE, ...) |
#define | ELLIPSIS_CONTRACT_VIOLATION(COUNT, VERB, CTYPE, CSTR, ...) |
#define | ELLIPSIS_TEST_ICE(...) (false ? ELLIPSIS_TO_VOIDS(__VA_ARGS__) : (ellipsis‿contracts‿is_ice*)nullptr) |
#define | ELLIPSIS_TO_VOIDS(...) ((void*)((uintptr_t)((__VA_ARGS__)-(__VA_ARGS__)))) |
#define | STRINGIFY(...) STRINGIFY_(__VA_ARGS__) |
#define | STRINGIFY_(...) #__VA_ARGS__ |
Typedefs | |
typedef struct ellipsis‿contracts‿is_ice | ellipsis‿contracts‿is_ice |
Functions | |
ellipsis‿sarray * | ellipsis‿sarray‿alloc‿_Inner (size_t len) |
ellipsis‿sarray * | ellipsis‿sarray‿append‿_Inner (ellipsis‿sarray *restrict s, s->array[0] c) |
int | ellipsis‿sarray‿compare (ellipsis‿sarray const *s, ellipsis‿sarray const *t) |
ellipsis‿sarray * | ellipsis‿sarray‿concat‿_Inner (ellipsis‿sarray const *s, ellipsis‿sarray const *t) |
ellipsis‿sarray * | ellipsis‿sarray‿concat_inplace‿_Inner (ellipsis‿sarray const *s0, ellipsis‿sarray const *t) |
ellipsis‿sarray const * | ellipsis‿sarray‿cpy_const‿_Inner (ellipsis‿sarray const *restrict s) |
void | ellipsis‿sarray‿delete (ellipsis‿sarray const *s) |
ellipsis‿sarray * | ellipsis‿sarray‿grow‿_Inner (ellipsis‿sarray *restrict s, size_t length) |
ellipsis‿sarray * | ellipsis‿sarray‿remove (ellipsis‿sarray s[restrict static 1], size_t amount) |
ellipsis‿sarray * | ellipsis‿sarray‿shrink‿_Inner (ellipsis‿sarray s[restrict static 1], size_t length) |
ellipsis‿sarray * | ellipsis‿sarray‿sub‿_Inner (ellipsis‿sarray const *s, size_t pos, size_t len) |
Variables | |
thread_local bool volatile | ellipsis‿contracts‿ignore‿dynamic |
thread_local bool volatile | ellipsis‿contracts‿proceed‿dynamic |
thread_local bool volatile | ellipsis‿contracts‿verbose‿dynamic |
#define ELLIPSIS_CONTRACT | ( | COUNT, | |
COND, | |||
ACTION, | |||
VERB, | |||
CSTR, | |||
CTYPE, | |||
... | |||
) |
#define ELLIPSIS_CONTRACT_CHECK_STATIC | ( | CTYPE, | |
COND, | |||
CSTR, | |||
... | |||
) |
#define ELLIPSIS_CONTRACT_ICE_OR_TRUE | ( | ... | ) |
#define ELLIPSIS_CONTRACT_IMPL | ( | COUNT, | |
COND, | |||
ACTION, | |||
VERB, | |||
CSTR, | |||
CTYPE, | |||
... | |||
) |
#define ELLIPSIS_CONTRACT_VIOLATION | ( | COUNT, | |
VERB, | |||
CTYPE, | |||
CSTR, | |||
... | |||
) |
#define ELLIPSIS_TEST_ICE | ( | ... | ) | (false ? ELLIPSIS_TO_VOIDS(__VA_ARGS__) : (ellipsis‿contracts‿is_ice*)nullptr) |
#define ELLIPSIS_TO_VOIDS | ( | ... | ) | ((void*)((uintptr_t)((__VA_ARGS__)-(__VA_ARGS__)))) |
#define STRINGIFY | ( | ... | ) | STRINGIFY_(__VA_ARGS__) |
#define STRINGIFY_ | ( | ... | ) | #__VA_ARGS__ |
typedef struct ellipsis‿contracts‿is_ice ellipsis‿contracts‿is_ice |
ellipsis‿sarray * ellipsis‿sarray‿alloc‿_Inner | ( | size_t | len | ) |
References ellipsis‿sarray::array, ellipsis‿sarray::length, and ellipsis‿sarray::length_mod.
Referenced by ellipsis‿sarray::ellipsis‿sarray‿alloc‿_Ctra().
ellipsis‿sarray * ellipsis‿sarray‿append‿_Inner | ( | ellipsis‿sarray *restrict | s, |
s->array | c[0] | ||
) |
Referenced by ellipsis‿sarray::ellipsis‿sarray‿append‿_Ctra().
int ellipsis‿sarray‿compare | ( | ellipsis‿sarray const * | s, |
ellipsis‿sarray const * | t | ||
) |
ellipsis‿sarray * ellipsis‿sarray‿concat‿_Inner | ( | ellipsis‿sarray const * | s, |
ellipsis‿sarray const * | t | ||
) |
References ellipsis‿sarray::array, and ellipsis‿sarray::length.
Referenced by ellipsis‿sarray::ellipsis‿sarray‿concat‿_Ctra().
ellipsis‿sarray * ellipsis‿sarray‿concat_inplace‿_Inner | ( | ellipsis‿sarray const * | s0, |
ellipsis‿sarray const * | t | ||
) |
References ellipsis‿sarray::array, ellipsis‿sarray::capacity, ellipsis‿sarray::length, and ellipsis‿sarray::length_mod.
Referenced by ellipsis‿sarray::ellipsis‿sarray‿concat_inplace‿_Ctra().
ellipsis‿sarray const * ellipsis‿sarray‿cpy_const‿_Inner | ( | ellipsis‿sarray const *restrict | s | ) |
Referenced by ellipsis‿sarray::ellipsis‿sarray‿cpy_const‿_Ctra().
void ellipsis‿sarray‿delete | ( | ellipsis‿sarray const * | s | ) |
ellipsis‿sarray * ellipsis‿sarray‿grow‿_Inner | ( | ellipsis‿sarray *restrict | s, |
size_t | length | ||
) |
References ellipsis_alloc_flex, ellipsis_init_flex, ellipsis_realloc_flex, and ellipsis‿sarray::length.
Referenced by ellipsis‿sarray::ellipsis‿sarray‿grow‿_Ctra().
ellipsis‿sarray * ellipsis‿sarray‿remove | ( | ellipsis‿sarray | s[restrict static 1], |
size_t | amount | ||
) |
Referenced by ellipsis‿infra‿down().
ellipsis‿sarray * ellipsis‿sarray‿shrink‿_Inner | ( | ellipsis‿sarray | s[restrict static 1], |
size_t | length | ||
) |
References ellipsis_realloc_flex, and ELLIPSIS_WARNING.
Referenced by ellipsis‿sarray::ellipsis‿sarray‿shrink‿_Ctra().
ellipsis‿sarray * ellipsis‿sarray‿sub‿_Inner | ( | ellipsis‿sarray const * | s, |
size_t | pos, | ||
size_t | len | ||
) |
References ellipsis‿sarray::array, ellipsis‿sarray::length, and ellipsis‿sarray::length_mod.
Referenced by ellipsis‿sarray::ellipsis‿sarray‿sub‿_Ctra().
|
extern |
|
extern |
|
extern |