/* * This file is part of Beastie * SPDX-FileCopyrightText: 2023 Norman Gray * SPDX-License-Identifier: BSD-2-Clause */ #ifndef PARSE_AUX_H #define PARSE_AUX_H 1 #include // for FILE* #include "beastie.h" // for YYSTYPE and s7_pointer #include "yycommon.h" // for YYLTYPE struct aux_extra_s { void* yyscanbuf; // cast from YY_BUFFER_STATE }; typedef struct aux_extra_s* aux_extra_t; // defined in parse-aux.lex yyscan_t parse_aux_setup_file(aux_extra_t, FILE*); yyscan_t parse_aux_setup_string(aux_extra_t, const char*); void parse_aux_finish(aux_extra_t, yyscan_t); int auxlex(YYSTYPE* lvalp, YYLTYPE* llocp, yyscan_t scanner); int auxget_lineno(yyscan_t); // defined in parse-aux.y int auxparse(aux_extra_t, s7_pointer* parse_result, yyscan_t scanner); #endif /* PARSE_AUX_H */