#include "ellipsis-tlist.h"
#include "utils/ellipsis-error.h"
#include "utils/ellipsis-init.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_FA_UNDEPRECATE [[__deprecated__("you should not see this")]] |
#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 |
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_FA_UNDEPRECATE [[__deprecated__("you should not see this")]] |
#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_FA_UNDEPRECATE token * ellipsis‿token‿list‿all | ( | ellipsis‿token‿list | tl[static 1] | ) |
start inner defer anchor at level 1
DEFER_TYPE needs a semicolon
defer needs braces and a semicolon
defer needs braces and a semicolon
end inner defer anchor, level 1
Referenced by ellipsis‿directive‿define_process(), ellipsis‿directive‿embed_common(), ellipsis‿directive‿environment(), ellipsis‿directive‿expand(), ellipsis‿directive‿gather(), ellipsis‿directive‿pragma(), ellipsis‿directive‿scatter(), ellipsis‿expression‿evaluate(), ellipsis‿expression‿resolve_defined(), ellipsis‿filter‿local(), ellipsis‿filter(), ellipsis‿include‿process(), ellipsis‿include‿repair(), ellipsis‿macros‿cb‿addition(), ellipsis‿macros‿cb‿has_file(), ellipsis‿token‿list::ellipsis‿token‿list‿destroy(), expand_functional(), expand_macro(), has_c_attribute_callback(), and mark_parameters().
ELLIPSIS_FA_UNDEPRECATE void ellipsis‿token‿list‿append | ( | ellipsis‿token‿list | tl[static 1], |
token * | to | ||
) |
start inner defer anchor at level 1
defer needs braces and a semicolon
end inner defer anchor, level 1
Referenced by _Atomic(), callback_call(), collect_names(), ellipsis‿c_punctuators‿_Once‿init‿user(), ellipsis‿directive‿define_process(), ellipsis‿directive‿embed_common(), ellipsis‿directive‿environment(), ellipsis‿directive‿expand(), ellipsis‿directive‿gather(), ellipsis‿directive‿include_common(), ellipsis‿directive‿macro_get(), ellipsis‿directive‿mark_line(), ellipsis‿directive‿pragma(), ellipsis‿directive‿scatter(), ellipsis‿expression‿evaluate(), ellipsis‿expression‿resolve_defined(), ellipsis‿filter‿local(), ellipsis‿filter(), ellipsis‿include‿process(), ellipsis‿include‿repair(), ellipsis‿macros‿_Once‿init‿user(), ellipsis‿macros‿cb‿addition(), ellipsis‿macros‿cb‿bind(), ellipsis‿macros‿cb‿error(), ellipsis‿macros‿cb‿evaluate(), ellipsis‿macros‿cb‿has_file(), ellipsis‿macros‿cb‿warning(), ellipsis‿pragma‿once(), ellipsis‿special‿directive‿lex(), ellipsis‿token‿list‿cpy‿_Inner(), ellipsis‿token‿list‿scatter‿_Inner(), ellipsis‿tokenize‿string(), ellipsis‿tokenize‿thrd(), ellipsis‿tokenize(), expand_functional(), has_c_attribute_callback(), macro_signed(), macro_string(), and mark_parameters().
ELLIPSIS_FA_UNDEPRECATE void ellipsis‿token‿list‿close | ( | ellipsis‿token‿list | tl[static 1] | ) |
start inner defer anchor at level 1
defer needs braces and a semicolon
end inner defer anchor, level 1
Referenced by _Atomic(), callback_call(), collect_names(), ellipsis‿c_punctuators‿_Once‿init‿user(), ellipsis‿directive‿define_process(), ellipsis‿directive‿embed_common(), ellipsis‿directive‿gather(), ellipsis‿directive‿include(), ellipsis‿directive‿include_common(), ellipsis‿directive‿include_next(), ellipsis‿directive‿include_source(), ellipsis‿directive‿line(), ellipsis‿directive‿line_common(), ellipsis‿directive‿linenumber(), ellipsis‿directive‿macro_get(), ellipsis‿directive‿mark_line(), ellipsis‿directive‿pragma(), ellipsis‿directive‿scatter(), ellipsis‿expression‿evaluate(), ellipsis‿expression‿resolve_defined(), ellipsis‿filter‿local(), ellipsis‿filter(), ellipsis‿include‿repair(), ellipsis‿macros‿_Once‿init‿user(), ellipsis‿macros‿cb‿addition(), ellipsis‿macros‿cb‿bind(), ellipsis‿macros‿cb‿error(), ellipsis‿macros‿cb‿evaluate(), ellipsis‿macros‿cb‿has_file(), ellipsis‿macros‿cb‿warning(), ellipsis‿pragma‿once(), ellipsis‿special‿directive‿lex(), ellipsis‿token‿list::ellipsis‿token‿list‿flush(), ellipsis‿token‿list::ellipsis‿token‿list‿push(), ellipsis‿token‿list‿scatter‿_Inner(), ellipsis‿tokenize(), expand_functional(), has_c_attribute_callback(), main(), and mark_parameters().
ELLIPSIS_FA_UNDEPRECATE size_t ellipsis‿token‿list‿collect_call | ( | size_t | len, |
ellipsis‿token‿list | arg[static restrict len], | ||
ellipsis‿token‿list | in[restrict static 1], | ||
bool | var, | ||
ellipsis‿str32 const * | space[static 1] | ||
) |
References ellipsis‿token‿list‿pop(), ellipsis‿token‿list‿scatter(), and ELLIPSIS_CONTRACT.
Referenced by ellipsis‿expression‿resolve_defined(), ellipsis‿include‿process(), expand_functional(), expand_macro(), and mark_parameters().
ELLIPSIS_FA_UNDEPRECATE ellipsis‿token‿list * ellipsis‿token‿list‿cpy‿_Inner | ( | ellipsis‿token‿list | tl[static const 1] | ) |
References ellipsis‿token‿list‿append(), ELLIPSIS_CONTRACT, ellipsis‿token‿list::finished, and ellipsis‿token‿list::first.
Referenced by ellipsis‿token‿list::ellipsis‿token‿list‿cpy‿_Ctra().
ELLIPSIS_FA_UNDEPRECATE void ellipsis‿token‿list‿destroy | ( | ellipsis‿token‿list | tl[static 1] | ) |
Referenced by _Atomic(), ellipsis‿directive‿define_process(), ellipsis‿directive‿embed(), ellipsis‿directive‿embed_resource(), ellipsis‿directive‿expand(), ellipsis‿directive‿gather(), ellipsis‿directive‿include_common(), ellipsis‿directive‿line(), ellipsis‿directive‿linenumber(), ellipsis‿directive‿move(), ellipsis‿directive‿pragma(), ellipsis‿directive‿scatter(), ellipsis‿expression‿evaluate(), ellipsis‿expression‿resolve_defined(), ellipsis‿filter‿local(), ellipsis‿filter(), ellipsis‿include‿process(), ellipsis‿include‿repair(), ellipsis‿language‿c‿_Once‿init‿user(), ellipsis‿language‿html‿_Once‿init‿user(), ellipsis‿language‿lex‿_Once‿init‿user(), ellipsis‿language‿markdown‿_Once‿init‿user(), ellipsis‿macros‿cb‿addition(), ellipsis‿macros‿cb‿evaluate(), ellipsis‿macros‿cb‿has_file(), ellipsis‿token‿list::ellipsis‿token‿list‿delete(), ellipsis‿tokenize‿thrd(), ellipsis‿tokenize(), evaluate_expression(), expand_functional(), expand_macro(), has_c_attribute_callback(), main(), and mark_parameters().
ELLIPSIS_FA_UNDEPRECATE bool ellipsis‿token‿list‿equiv | ( | ellipsis‿token‿list *const restrict | a, |
ellipsis‿token‿list *const restrict | b | ||
) |
token * ellipsis‿token‿list‿first | ( | ellipsis‿token‿list | tl[static 1] | ) |
Referenced by ellipsis‿directive‿define_process(), ellipsis‿directive‿environment(), ellipsis‿macros‿cb‿any(), expand_functional(), macro_signed(), macro_string(), and mark_parameters().
ELLIPSIS_FA_UNDEPRECATE void ellipsis‿token‿list‿flush | ( | ellipsis‿token‿list | target[static 1], |
ellipsis‿token‿list | source[static 1] | ||
) |
start inner defer anchor at level 1
defer needs braces and a semicolon
end inner defer anchor, level 1
start inner defer anchor at level 1
defer needs braces and a semicolon
end inner defer anchor, level 1
Referenced by ellipsis‿directive‿embed_resource(), ellipsis‿directive‿expand(), ellipsis‿directive‿gather(), ellipsis‿directive‿include_source(), ellipsis‿directive‿linenumber(), ellipsis‿directive‿macro_get(), ellipsis‿directive‿move(), ellipsis‿directive‿scatter(), ellipsis‿include‿process(), ellipsis‿token‿list‿scatter‿_Inner(), ellipsis‿tokenize(), expand_functional(), and mark_parameters().
ELLIPSIS_FA_UNDEPRECATE ellipsis‿token‿list * ellipsis‿token‿list‿init‿_Inner | ( | ellipsis‿token‿list | tl[static const 1] | ) |
References ellipsis‿token‿list::cnd, ellipsis_init, and ellipsis‿token‿list::mtx.
Referenced by ellipsis‿token‿list::ellipsis‿token‿list‿init‿_Ctra().
ELLIPSIS_FA_UNDEPRECATE bool ellipsis‿token‿list‿is_finished | ( | ellipsis‿token‿list | tl[static 1] | ) |
start inner defer anchor at level 1
DEFER_TYPE needs a semicolon
defer needs braces and a semicolon
end inner defer anchor, level 1
token * ellipsis‿token‿list‿last | ( | ellipsis‿token‿list | tl[static 1] | ) |
Referenced by ellipsis‿directive‿move(), ellipsis‿directive‿scatter(), ellipsis‿macros‿cb‿any(), and expand_macro().
ELLIPSIS_FA_UNDEPRECATE void ellipsis‿token‿list‿open | ( | ellipsis‿token‿list | tl[static 1] | ) |
start inner defer anchor at level 1
defer needs braces and a semicolon
end inner defer anchor, level 1
Referenced by callback_call(), ellipsis‿c_punctuators‿_Once‿init‿user(), ellipsis‿directive‿gather(), ellipsis‿directive‿include_common(), ellipsis‿filter‿thrd(), ellipsis‿filter(), ellipsis‿macros‿_Once‿init‿user(), ellipsis‿special‿directive‿lex(), ellipsis‿tokenize(), main(), and mark_parameters().
ELLIPSIS_FA_UNDEPRECATE token * ellipsis‿token‿list‿pop | ( | ellipsis‿token‿list | tl[static 1] | ) |
start inner defer anchor at level 1
DEFER_TYPE needs a semicolon
defer needs braces and a semicolon
defer needs braces and a semicolon
end inner defer anchor, level 1
Referenced by collect_names(), ellipsis‿directive‿define_process(), ellipsis‿directive‿environment(), ellipsis‿directive‿error(), ellipsis‿directive‿expand(), ellipsis‿directive‿include_common(), ellipsis‿directive‿line_common(), ellipsis‿directive‿macro_get(), ellipsis‿directive‿move(), ellipsis‿directive‿undef(), ellipsis‿directive‿warning(), ellipsis‿expression‿prefix(), ellipsis‿expression‿prefix_or_recurse(), ellipsis‿expression‿recurse(), ellipsis‿expression‿resolve_defined(), ellipsis‿expression‿ternary(), ellipsis‿filter(), ellipsis‿include‿process(), ellipsis‿output‿thrd(), ellipsis‿output‿vrbs(), ellipsis‿token‿list‿collect_call(), ellipsis‿token‿list‿scatter‿_Inner(), expand_functional(), and mark_parameters().
ELLIPSIS_FA_UNDEPRECATE void ellipsis‿token‿list‿push | ( | ellipsis‿token‿list | target[static 1], |
ellipsis‿token‿list | source[static 1] | ||
) |
start inner defer anchor at level 1
defer needs braces and a semicolon
end inner defer anchor, level 1
start inner defer anchor at level 1
defer needs braces and a semicolon
end inner defer anchor, level 1
Referenced by ellipsis‿directive‿define_process(), ellipsis‿directive‿embed_common(), ellipsis‿directive‿pragma(), ellipsis‿filter(), ellipsis‿tokenize‿thrd(), expand_functional(), and expand_macro().
ELLIPSIS_FA_UNDEPRECATE size_t ellipsis‿token‿list‿scatter‿_Inner | ( | size_t | len, |
ellipsis‿token‿list | arg[static restrict len], | ||
ellipsis‿token‿list | in[restrict static 1], | ||
bool | var, | ||
bool | call, | ||
ellipsis‿str32 const ** | space | ||
) |
start inner defer anchor at level 1
DEFER_TYPE needs a semicolon
defer needs braces and a semicolon
end inner defer anchor, level 1
References ellipsis‿token‿list‿append(), ellipsis‿token‿list‿close(), ellipsis‿token‿list‿flush(), ellipsis‿token‿list‿pop(), ellipsis‿token‿list‿top(), ELLIPSIS_CONTRACT, and ELLIPSIS_WARNING.
Referenced by ellipsis‿token‿list‿scatter‿_Ctra().
|
inline |
start inner defer anchor at level 1
DEFER_TYPE needs a semicolon
end inner defer anchor, level 1
References ellipsis‿token‿list‿scatter‿_Ctra(), and ellipsis‿token‿list‿scatter‿_Insta().
Referenced by ellipsis‿token‿list‿scatter‿_Insta(), and ellipsis‿token‿list‿scatter().
ELLIPSIS_FA_UNDEPRECATE ellipsis‿str32 * ellipsis‿token‿list‿stringify‿_Inner | ( | ellipsis‿token‿list const | source[static const 1] | ) |
References ellipsis‿token‿list::first, and ellipsis‿str32::length.
Referenced by ellipsis‿token‿list::ellipsis‿token‿list‿stringify‿_Ctra().
token const * ellipsis‿token‿list‿top | ( | ellipsis‿token‿list | tl[static 1] | ) |
Referenced by collect_names(), ellipsis‿c_punctuators‿fputs(), ellipsis‿directive‿define_process(), ellipsis‿directive‿embed_common(), ellipsis‿directive‿gather(), ellipsis‿directive‿macro_get(), ellipsis‿directive‿move(), ellipsis‿expression‿prefix_or_recurse(), ellipsis‿expression‿recurse(), ellipsis‿expression‿resolve_defined(), ellipsis‿filter‿local(), ellipsis‿filter(), ellipsis‿include‿process(), ellipsis‿include‿repair(), ellipsis‿macros‿cb‿any(), ellipsis‿output‿thrd(), ellipsis‿token‿list‿scatter‿_Inner(), expand_functional(), expand_macro(), has_c_attribute_callback(), and mark_parameters().
ELLIPSIS_FA_UNDEPRECATE void ellipsis‿token‿list‿wait | ( | ellipsis‿token‿list | tl[static 1] | ) |
start inner defer anchor at level 1
defer needs braces and a semicolon
end inner defer anchor, level 1
Referenced by ellipsis‿output‿thrd().
|
extern |
|
extern |
|
extern |