Loading...
Searching...
No Matches
stelaTokenScanable.hpp
Go to the documentation of this file.
1
2#pragma once
3
4#include "stela/common.hpp"
5
6typedef union ZZSTYPE ZZSTYPE;
7typedef struct lloc ZZLTYPE;
8typedef void* zzscan_t;
9
10namespace by {
11
12 class stelaParser;
13
19 class _nout stelaTokenScanable {
20 BY(ME(stelaTokenScanable))
21
22 public:
33 nint onScan(stelaParser& ps, ZZSTYPE* val, ZZLTYPE* loc, zzscan_t scanner);
43 virtual nint onScan(stelaParser& ps, ZZSTYPE* yylval, ZZLTYPE* loc, zzscan_t yyscanner, nbool& isBypass) = 0;
44 };
45}
Parser for stela configuration language.
Definition stelaParser.hpp:39
Interface for token scanning during stela parsing.
Definition stelaTokenScanable.hpp:19
nint onScan(stelaParser &ps, ZZSTYPE *val, ZZLTYPE *loc, zzscan_t scanner)
Default entry point for token scanning.
virtual nint onScan(stelaParser &ps, ZZSTYPE *yylval, ZZLTYPE *loc, zzscan_t yyscanner, nbool &isBypass)=0
Pure virtual method for concrete token scanning implementations.
Rich logging support with polymorphic type conversion.
Definition richLog.hpp:34