|
Ruby 4.0.7p0 (2026-09-15 revision 229531a6cfbf07e3caef30dbac24a2a3f3fed482)
|
When lexing Ruby source, the lexer has a small amount of state to tell which kind of token it is currently lexing. More...
#include <parser.h>
Data Structures | |
| union | [union].as |
| The data associated with this type of lex mode. More... | |
Public Types | |
| enum | { PM_LEX_DEFAULT , PM_LEX_EMBEXPR , PM_LEX_EMBVAR , PM_LEX_HEREDOC , PM_LEX_LIST , PM_LEX_REGEXP , PM_LEX_STRING } |
| The type of this lex mode. More... | |
Data Fields | |
| enum { ... } | mode |
| union | as |
| struct pm_lex_mode * | prev |
| The previous lex state so that it knows how to pop. | |
When lexing Ruby source, the lexer has a small amount of state to tell which kind of token it is currently lexing.
For example, when we find the start of a string, the first token that we return is a TOKEN_STRING_BEGIN token. After that the lexer is now in the PM_LEX_STRING mode, and will return tokens that are found as part of a string.
| anonymous enum |
The type of this lex mode.
| struct pm_lex_mode* pm_lex_mode::prev |