#include "ellipsis-special.h"
#include "ellipsis-lexer.h"
#include <stdio.h>
#include <stdlib.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 | |
void | ellipsis‿special‿cpy (size_t len, ellipsis‿special target[static restrict len], ellipsis‿special const source[static restrict len]) |
void | ellipsis‿special‿delete (size_t len, ellipsis‿special const target0[static restrict len]) |
ellipsis‿str32 * | ellipsis‿special‿scan‿str32‿_Inner (ellipsis‿special const sp[static 1], size_t len[static 1], char const *restrict buf[static 1], bool terminated[static 1], bool without, bool unescaped) |
ellipsis‿str32 * | ellipsis‿special‿scan‿str32‿_Insta (ellipsis‿special const sp[static 1], size_t len[static 1], char const *restrict buf[static 1], bool terminated[static 1], bool without, bool unescaped) |
ellipsis‿str8 * | ellipsis‿special‿scan‿str8‿_Inner (ellipsis‿special const sp[static 1], size_t len[static 1], char const *restrict buf[static 1], bool terminated[static 1], bool without, bool unescaped) |
ellipsis‿str8 * | ellipsis‿special‿scan‿str8‿_Insta (ellipsis‿special const sp[static 1], size_t len[static 1], char const *restrict buf[static 1], bool terminated[static 1], bool without, bool unescaped) |
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 |
void ellipsis‿special‿cpy | ( | size_t | len, |
ellipsis‿special | target[static restrict len], | ||
ellipsis‿special const | source[static restrict len] | ||
) |
Referenced by ellipsis‿special‿c‿append(), ellipsis‿special‿c‿magic‿_Once‿init‿user(), ellipsis‿special‿c_comment‿append(), ellipsis‿special‿c_comment‿magic‿_Once‿init‿user(), ellipsis‿special‿c_directive‿append(), ellipsis‿special‿c_directive‿magic‿_Once‿init‿user(), ellipsis‿special‿c_directive1‿append(), ellipsis‿special‿c_directive1‿magic‿_Once‿init‿user(), ellipsis‿special‿c_include‿append(), ellipsis‿special‿c_include‿magic‿_Once‿init‿user(), ellipsis‿special‿c_pragma‿append(), ellipsis‿special‿c_pragma‿magic‿_Once‿init‿user(), ellipsis‿special‿decoration‿append(), ellipsis‿special‿decoration‿magic‿_Once‿init‿user(), ellipsis‿special‿directive‿append(), ellipsis‿special‿directive‿magic‿_Once‿init‿user(), ellipsis‿special‿directive_define‿append(), ellipsis‿special‿directive_define‿magic‿_Once‿init‿user(), ellipsis‿special‿directive_if‿append(), ellipsis‿special‿directive_if‿magic‿_Once‿init‿user(), ellipsis‿special‿directive_include‿append(), ellipsis‿special‿directive_include‿magic‿_Once‿init‿user(), ellipsis‿special‿empty‿append(), ellipsis‿special‿empty‿magic‿_Once‿init‿user(), ellipsis‿special‿html‿append(), ellipsis‿special‿html‿magic‿_Once‿init‿user(), ellipsis‿special‿html_comment‿append(), ellipsis‿special‿html_comment‿magic‿_Once‿init‿user(), ellipsis‿special‿html_directive‿append(), ellipsis‿special‿html_directive‿magic‿_Once‿init‿user(), ellipsis‿special‿lex‿append(), ellipsis‿special‿lex‿magic‿_Once‿init‿user(), ellipsis‿special‿lex_comment‿append(), ellipsis‿special‿lex_comment‿magic‿_Once‿init‿user(), ellipsis‿special‿lex_directive‿append(), ellipsis‿special‿lex_directive‿magic‿_Once‿init‿user(), ellipsis‿special‿markdown‿append(), ellipsis‿special‿markdown‿magic‿_Once‿init‿user(), ellipsis‿special‿markdown_decoration‿append(), and ellipsis‿special‿markdown_decoration‿magic‿_Once‿init‿user().
void ellipsis‿special‿delete | ( | size_t | len, |
ellipsis‿special const | target0[static restrict len] | ||
) |
References ellipsis‿str32‿delete(), and ellipsis‿str8‿delete().
Referenced by ellipsis‿lex‿nonspace‿_Inner(), ellipsis‿special‿c‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿c_comment‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿c_directive‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿c_directive1‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿c_include‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿c_pragma‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿decoration‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿directive‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿directive_define‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿directive_if‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿directive_include‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿empty‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿html‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿html_comment‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿html_directive‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿lex‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿lex_comment‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿lex_directive‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿markdown‿magic‿_Once‿atexit‿callback(), ellipsis‿special‿markdown_decoration‿magic‿_Once‿atexit‿callback(), and ellipsis‿tokenize().
ellipsis‿str32 * ellipsis‿special‿scan‿str32‿_Inner | ( | ellipsis‿special const | sp[static 1], |
size_t | len[static 1], | ||
char const *restrict | buf[static 1], | ||
bool | terminated[static 1], | ||
bool | without, | ||
bool | unescaped | ||
) |
References ellipsis‿str32::array, ellipsis‿str8::array, ellipsis‿special::closer8, ellipsis‿lex‿strdup_escape(), ellipsis‿str32‿construct(), end, ellipsis‿str32::length, ellipsis‿str8::length, and ellipsis‿special::starter8.
Referenced by ellipsis‿special‿scan‿str32‿_Ctra().
|
inline |
start inner defer anchor at level 1
DEFER_TYPE needs a semicolon
end inner defer anchor, level 1
References ellipsis‿special‿scan‿str32‿_Ctra(), and ellipsis‿special‿scan‿str32‿_Insta().
Referenced by ellipsis‿special‿scan‿str32‿_Insta(), and ellipsis‿special‿scan‿str32().
ellipsis‿str8 * ellipsis‿special‿scan‿str8‿_Inner | ( | ellipsis‿special const | sp[static 1], |
size_t | len[static 1], | ||
char const *restrict | buf[static 1], | ||
bool | terminated[static 1], | ||
bool | without, | ||
bool | unescaped | ||
) |
References ellipsis‿str8::array, ellipsis‿special::closer8, ellipsis‿lex‿strdup_escape(), ellipsis‿str8‿construct(), end, ellipsis‿str8::length, and ellipsis‿special::starter8.
Referenced by ellipsis‿special‿scan‿str8‿_Ctra().
|
inline |
start inner defer anchor at level 1
DEFER_TYPE needs a semicolon
end inner defer anchor, level 1
References ellipsis‿special‿scan‿str8‿_Ctra(), and ellipsis‿special‿scan‿str8‿_Insta().
Referenced by ellipsis‿special‿scan‿str8‿_Insta(), and ellipsis‿special‿scan‿str8().
|
extern |
|
extern |
|
extern |