maug
Quick and dirty C mini-augmentation library.
Loading...
Searching...
No Matches
Collaboration diagram for MLISP Types:

Macros

#define MLISP_NUM_TYPE_TABLE(f)
 Table of numeric types.
 
#define MLISP_TYPE_TABLE(f)
 Table of other types.
 

Typedefs

typedef ssize_t mlisp_lambda_t
 
typedef mlisp_lambda_t mlisp_args_t
 
typedef mlisp_lambda_t mlisp_arge_t
 
typedef mlisp_lambda_t mlisp_if_t
 
typedef mlisp_lambda_t mlisp_begin_t
 
typedef uint8_t mlisp_bool_t
 

Detailed Description

Macro Definition Documentation

◆ MLISP_NUM_TYPE_TABLE

#define MLISP_NUM_TYPE_TABLE ( f)
Value:
f( 1, int16_t, integer, INT, "%d" ) \
f( 2, float, floating, FLOAT, "%f" ) \
f( 3, mlisp_bool_t, boolean, BOOLEAN, "%u" )

Table of numeric types.

These are carved out because they can usually be handled in a similar way.

◆ MLISP_TYPE_TABLE

#define MLISP_TYPE_TABLE ( f)
Value:
f( 4, mdata_strpool_idx_t, strpool_idx, STR, SSIZE_T_FMT ) \
f( 5, mlisp_env_cb_t, cb, CB, "%p" ) \
f( 6, mlisp_lambda_t, lambda, LAMBDA, SSIZE_T_FMT ) \
f( 7, mlisp_args_t, args_start, ARGS_S, SSIZE_T_FMT ) \
f( 8, mlisp_arge_t, args_end, ARGS_E, SSIZE_T_FMT ) \
f(10, mlisp_begin_t, begin, BEGIN, SSIZE_T_FMT )
#define MLISP_NUM_TYPE_TABLE(f)
Table of numeric types.
Definition mlisps.h:70
MERROR_RETVAL(* mlisp_env_cb_t)(struct MLISP_PARSER *parser, struct MLISP_EXEC_STATE *exec, size_t n_idx, size_t args_c, void *cb_data, uint8_t flags)
A callback to attach to an mlisp command with mlisp_env_set() with MLISP_TYPE_CB.
Definition mlisps.h:100

Table of other types.

These are special cases that must usually be handled manually.