From a4e8599e8d0fde881cd4e6e3031e5b52550e878e Mon Sep 17 00:00:00 2001 From: ubq323 Date: Tue, 6 Aug 2024 22:20:53 +0100 Subject: remove ast and peg parser --- g.peg | 52 ---------------------------------------------------- 1 file changed, 52 deletions(-) delete mode 100644 g.peg (limited to 'g.peg') diff --git a/g.peg b/g.peg deleted file mode 100644 index 84d907e..0000000 --- a/g.peg +++ /dev/null @@ -1,52 +0,0 @@ -%source { -#include -#include -#include - - -#ifdef DO_PARSE_DEBUG -static const char *dbg_str[] = { "Evaluating rule", "Matched rule", "Abandoning rule" }; -#define PCC_DEBUG(auxil, event, rule, level, pos, buffer, length) \ - fprintf(stderr, "%*s%s %s @%zu [%.*s]\n", (int)((level) * 2), "", dbg_str[event], rule, pos, (int)(length), buffer) -#endif - -#define PCC_GETCHAR(auxil) fgetc(auxil) - -} - - - -%common { -#include "ast.h" - -} - -%value "AstNode" -%auxil "FILE *" - -expr <- - l:list { $$ = l; } - / n:number { $$ = n; } - / i:ident { $$ = i; } - / t:string { $$ = t; } - / a:array { $$ = a; } - -list <- { $$ = astnode_new_list(); } - '(' _ - ( e:expr { astnode_append(&$$, e); } - )* - ')' _ -array <- { $$ = astnode_new_arr(); } - '[' _ - ( e:expr { astnode_append(&$$, e); } - )* - ']' _ - -number <- < [0-9]+ > (! ident_char) _ { $$ = astnode_new_num(atoi($1)); } -ident <- < ident_char+ > _ { $$ = astnode_new_ident($1); } -string <- '"' < [^"]* > '"' _ { $$ = astnode_new_string($1); } - -ident_char <- [-_a-zA-Z'+*/\\%=0-9<>!,] -_ <- [ \t\n]* - - -- cgit v1.2.3