Loading...
Searching...
No Matches
by::indentScan Class Reference

Indentation-aware token scanning mode. More...

#include <tokenScan.hpp>

Inheritance diagram for by::indentScan:
by::tokenScan by::tokenScanable

Public Member Functions

nint onScan (parser &ps, YYSTYPE *yylval, YYLTYPE *loc, yyscan_t yyscanner, nbool &isBypass) override
 Pure virtual method for concrete token scanning implementations.
 
- Public Member Functions inherited from by::tokenScan
nint onScan (parser &ps, YYSTYPE *val, YYLTYPE *loc, yyscan_t scanner)
 Default entry point for token scanning.
 
virtual nint onScan (parser &ps, YYSTYPE *yylval, YYLTYPE *loc, yyscan_t yyscanner, nbool &isBypass)=0
 Pure virtual method for concrete token scanning implementations.
 
- Public Member Functions inherited from by::tokenScanable
nint onScan (parser &ps, YYSTYPE *val, YYLTYPE *loc, yyscan_t scanner)
 Default entry point for token scanning.
 

Static Public Attributes

static indentScan instance
 

Detailed Description

Indentation-aware token scanning mode.

Specialized scanning that handles Python-like indentation. Generates indent and dedent tokens based on whitespace changes.

Member Function Documentation

◆ onScan()

nint by::indentScan::onScan ( parser & ps,
YYSTYPE * yylval,
YYLTYPE * loc,
yyscan_t yyscanner,
nbool & isBypass )
overridevirtual

Pure virtual method for concrete token scanning implementations.

Parameters
psThe parser instance.
yylvalThe YYSTYPE value pointer for the token.
locThe YYLTYPE location pointer for the token.
yyscannerThe Flex scanner instance.
isBypassFlag indicating if indentation bypass is active.
Returns
The token ID.

Reimplemented from by::tokenScan.


The documentation for this class was generated from the following files:
to Top