maug
Quick and dirty C mini-augmentation library.
Macros | Functions
mlispp.h File Reference

MLISP Parser Functions and Macros. More...

#include <mlisps.h>
Include dependency graph for mlispp.h:

Go to the source code of this file.

Macros

#define MLISP_PARSE_TRACE_LVL   0
 
#define MLISP_AST_FLAG_LAMBDA   0x02
 
#define MLISP_AST_FLAG_IF   0x04
 
#define MLISP_AST_FLAG_DEFINE   0x08
 
#define MLISP_AST_FLAG_BEGIN   0x20
 
#define MLISP_PARSER_PSTATE_TABLE(f)
 
#define mlisp_parser_pstate(parser)
 
#define mlisp_parser_pstate_push(parser, new_pstate)    mparser_pstate_push( "mlisp", &((parser)->base), new_pstate )
 
#define mlisp_parser_pstate_pop(parser)    mparser_pstate_pop( "mlisp", &((parser)->base) )
 
#define mlisp_parser_invalid_c(parser, c, retval)    mparser_invalid_c( mlisp, &((parser)->base), c, retval )
 
#define mlisp_parser_reset_token(parser)    mparser_reset_token( "mlisp", &((parser)->base) )
 
#define mlisp_parser_append_token(parser, c)    mparser_append_token( "mlisp", &((parser)->base), c )
 
#define mlisp_parser_parse_token(parser)
 
#define mlisp_check_ast(parser)   (0 < mdata_vector_ct( &((parser)->ast) ))
 Macro to check if a parser contains a valid AST ready to be executed.
 
#define _MLISP_TYPE_TABLE_CONSTS(idx, ctype, name, const_name, fmt)    extern MAUG_CONST uint8_t SEG_MCONST MLISP_TYPE_ ## const_name;
 

Functions

MERROR_RETVAL mlisp_ast_dump (struct MLISP_PARSER *parser, size_t ast_node_idx, size_t depth, char ab)
 Dump the given parser AST. More...
 
MERROR_RETVAL mlisp_parse_c (struct MLISP_PARSER *parser, char c)
 
MERROR_RETVAL mlisp_parse_file (struct MLISP_PARSER *parser, const retroflat_asset_path ai_path)
 
MERROR_RETVAL mlisp_parser_init (struct MLISP_PARSER *parser)
 
void mlisp_parser_free (struct MLISP_PARSER *parser)
 

Detailed Description

MLISP Parser Functions and Macros.