Struct
GLibScannerConfig
Description [src]
structGScannerConfig{
gchar*cset_skip_characters;
gchar*cset_identifier_first;
gchar*cset_identifier_nth;
gchar*cpair_comment_single;
guintcase_sensitive:1;
guintskip_comment_multi:1;
guintskip_comment_single:1;
guintscan_comment_multi:1;
guintscan_identifier:1;
guintscan_identifier_1char:1;
guintscan_identifier_NULL:1;
guintscan_symbols:1;
guintscan_binary:1;
guintscan_octal:1;
guintscan_float:1;
guintscan_hex:1;
guintscan_hex_dollar:1;
guintscan_string_sq:1;
guintscan_string_dq:1;
guintnumbers_2_int:1;
guintint_2_float:1;
guintidentifier_2_string:1;
guintchar_2_token:1;
guintsymbol_2_token:1;
guintscope_0_fallback:1;
guintstore_int64:1;
}
Specifies the GScanner
parser configuration. Most settings can
be changed during the parsing phase and will affect the lexical
parsing of the next unpeeked token.
Structure members
cset_skip_characters
Specifies which characters should be skipped by the scanner (the default is the whitespace characters: space, tab, carriage-return and line-feed).
cset_identifier_first
Specifies the characters which can start identifiers (the default is %G_CSET_a_2_z, “_”, and
G_CSET_A_2_Z
).cset_identifier_nth
Specifies the characters which can be used in identifiers, after the first character (the default is %G_CSET_a_2_z, “_0123456789”,
G_CSET_A_2_Z
,G_CSET_LATINS
,G_CSET_LATINC
).cpair_comment_single
Specifies the characters at the start and end of single-line comments. The default is “#\n” which means that single-line comments start with a ‘#’ and continue until a ‘\n’ (end of line).
case_sensitive
Specifies if symbols are case sensitive (the default is
FALSE
).skip_comment_multi
Specifies if multi-line comments are skipped and not returned as tokens (the default is
TRUE
).skip_comment_single
Specifies if single-line comments are skipped and not returned as tokens (the default is
TRUE
).scan_comment_multi
Specifies if multi-line comments are recognized (the default is
TRUE
).scan_identifier
Specifies if identifiers are recognized (the default is
TRUE
).scan_identifier_1char
Specifies if single-character identifiers are recognized (the default is
FALSE
).scan_identifier_NULL
Specifies if
NULL
is reported asG_TOKEN_IDENTIFIER_NULL
(the default isFALSE
).scan_symbols
Specifies if symbols are recognized (the default is
TRUE
).scan_binary
Specifies if binary numbers are recognized (the default is
FALSE
).scan_octal
Specifies if octal numbers are recognized (the default is
TRUE
).scan_float
Specifies if floating point numbers are recognized (the default is
TRUE
).scan_hex
Specifies if hexadecimal numbers are recognized (the default is
TRUE
).scan_hex_dollar
Specifies if ‘$’ is recognized as a prefix for hexadecimal numbers (the default is
FALSE
).scan_string_sq
Specifies if strings can be enclosed in single quotes (the default is
TRUE
).scan_string_dq
Specifies if strings can be enclosed in double quotes (the default is
TRUE
).numbers_2_int
Specifies if binary, octal and hexadecimal numbers are reported as
G_TOKEN_INT
(the default isTRUE
).int_2_float
Specifies if all numbers are reported as
G_TOKEN_FLOAT
(the default isFALSE
).identifier_2_string
Specifies if identifiers are reported as strings (the default is
FALSE
).char_2_token
Specifies if characters are reported by setting
token = ch
or asG_TOKEN_CHAR
(the default isTRUE
).symbol_2_token
Specifies if symbols are reported by setting
token = v_symbol
or asG_TOKEN_SYMBOL
(the default isFALSE
).scope_0_fallback
Specifies if a symbol is searched for in the default scope in addition to the current scope (the default is
FALSE
).store_int64
Use value.v_int64 rather than v_int.