Data Structures |
struct | evaluator_state_s |
struct | operation |
struct | co_precedent_ops |
Typedefs |
typedef evaluator_state_t | evaluator_public_state_t |
typedef eval_result_t( | evaluator_t )(struct co_precedent_ops const *ops, char const **, struct operation const **pbin_op) |
|
typedef struct evaluator_state_s | evaluator_state_t |
Enumerations |
enum | evaluator_storage_type { evaluator_storage_type = STATE_STATIC
} |
enum | evaluator_init_type { evaluator_initialisation_type = ZERO_INITABLE
} |
Functions |
void | evaluator_initor (void) |
void | evaluator_finitor (void) |
static eval_result_t | integer_binary_op (eval_result_t *lhs, eval_result_t *rhs, integer_bin_op_t op) |
static eval_result_t | op_lt (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_gt (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_le (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_ge (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_eq (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_ne (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_or (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_and (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_bit_and (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_bit_or (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_bit_xor (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_lshift (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_rshift (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_add (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_subtract (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_mult (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_divide (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | op_mod (eval_result_t *lhs, eval_result_t *rhs) |
static eval_result_t | eval_unary (struct co_precedent_ops const *ops, char const **cpp, struct operation const **ignored) |
static eval_result_t | eval_table (struct co_precedent_ops const *ops, char const **cpp, struct operation const **pbin_op) |
static char const * | short_circuit_and (char const *cp) |
static char const * | short_circuit_or (char const *cp) |
static int | eval_if (char const **cpp) |
static line_type_t | eval_hash_define (char const **cpp) |
static line_type_t | eval_hash_undef (char const **cpp) |
static eval_result_t | eval_possible_symbol (char const **cpp, directive_type_t context) |
static line_type_t | eval_hash_include (char const **cpp) |
static char const * | eval_free_form_directive (char const *cp, directive_type_t directive_type) |
line_type_t | eval_line (void) |
eval_result_t | eval_definition_text (char const **pdef) |
Variables |
static evaluator_state_t | evaluator_state |
evaluator_state_t * | evaluator_h = & evaluator_state |
evaluator_public_state_t * | evaluator_public_h = ( evaluator_public_state_t *)& evaluator_state |
static const evaluator_state_t
*const | evaluator_static_initialiser_h |
void(* | evaluator_init_h )(evaluator_state_t *) |
void(* | evaluator_finis_h )(evaluator_state_t *) |
struct co_precedent_ops const * | ops_tab = eval_ops |
struct co_precedent_ops | eval_ops [] |
This file implements the Evaluator component
Definition in file evaluator.c.