355
351
<structfield>case_sensitive</structfield> specifies if symbols are
356
case sensitive (the default is <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>).
352
case sensitive (the default is <link linkend="FALSE--CAPS"><literal>FALSE</literal></link>).
359
355
<structfield>skip_comment_multi</structfield> specifies if multi-line
360
comments are skipped and not returned as tokens (the default is <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>).
356
comments are skipped and not returned as tokens (the default is <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>).
363
359
<structfield>skip_comment_single</structfield> specifies if single-line
364
comments are skipped and not returned as tokens (the default is <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>).
360
comments are skipped and not returned as tokens (the default is <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>).
367
363
<structfield>scan_comment_multi</structfield> specifies if multi-line
368
comments are recognized (the default is <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>).
364
comments are recognized (the default is <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>).
371
367
<structfield>scan_identifier</structfield> specifies if identifiers
372
are recognized (the default is <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>).
368
are recognized (the default is <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>).
375
371
<structfield>scan_identifier_1char</structfield> specifies if single-character
376
identifiers are recognized (the default is <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>).
372
identifiers are recognized (the default is <link linkend="FALSE--CAPS"><literal>FALSE</literal></link>).
379
<structfield>scan_identifier_NULL</structfield> specifies if
380
<literal>NULL</literal> is reported as <link linkend="G-TOKEN-IDENTIFIER-NULL:CAPS"><type>G_TOKEN_IDENTIFIER_NULL</type></link>.
381
(the default is <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>).
375
<structfield>scan_identifier_NULL</structfield> specifies if
376
<literal>NULL</literal> is reported as <link linkend="G-TOKEN-IDENTIFIER-NULL--CAPS"><type>G_TOKEN_IDENTIFIER_NULL</type></link>.
377
(the default is <link linkend="FALSE--CAPS"><literal>FALSE</literal></link>).
384
380
<structfield>scan_symbols</structfield> specifies if symbols are
385
recognized (the default is <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>).
381
recognized (the default is <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>).
388
384
<structfield>scan_binary</structfield> specifies if binary numbers
389
are recognized (the default is <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>).
385
are recognized (the default is <link linkend="FALSE--CAPS"><literal>FALSE</literal></link>).
392
388
<structfield>scan_octal</structfield> specifies if octal numbers
393
are recognized (the default is <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>).
389
are recognized (the default is <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>).
396
392
<structfield>scan_float</structfield> specifies if floating point numbers
397
are recognized (the default is <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>).
393
are recognized (the default is <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>).
400
396
<structfield>scan_hex</structfield> specifies if hexadecimal numbers
401
are recognized (the default is <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>).
397
are recognized (the default is <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>).
404
400
<structfield>scan_hex_dollar</structfield> specifies if '$' is recognized
405
as a prefix for hexadecimal numbers (the default is <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>).
401
as a prefix for hexadecimal numbers (the default is <link linkend="FALSE--CAPS"><literal>FALSE</literal></link>).
408
404
<structfield>scan_string_sq</structfield> specifies if strings can be
409
enclosed in single quotes (the default is <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>).
405
enclosed in single quotes (the default is <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>).
412
408
<structfield>scan_string_dq</structfield> specifies if strings can be
413
enclosed in double quotes (the default is <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>).
409
enclosed in double quotes (the default is <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>).
416
412
<structfield>numbers_2_int</structfield> specifies if binary, octal and
417
hexadecimal numbers are reported as <link linkend="G-TOKEN-INT:CAPS"><type>G_TOKEN_INT</type></link> (the default is <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>).
413
hexadecimal numbers are reported as <link linkend="G-TOKEN-INT--CAPS"><type>G_TOKEN_INT</type></link> (the default is <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>).
420
<structfield>int_2_float</structfield> specifies if all numbers are
421
reported as <link linkend="G-TOKEN-FLOAT:CAPS"><type>G_TOKEN_FLOAT</type></link> (the default is <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>).
416
<structfield>int_2_float</structfield> specifies if all numbers are
417
reported as <link linkend="G-TOKEN-FLOAT--CAPS"><type>G_TOKEN_FLOAT</type></link> (the default is <link linkend="FALSE--CAPS"><literal>FALSE</literal></link>).
424
420
<structfield>identifier_2_string</structfield> specifies if identifiers
425
are reported as strings (the default is <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>).
421
are reported as strings (the default is <link linkend="FALSE--CAPS"><literal>FALSE</literal></link>).
428
424
<structfield>char_2_token</structfield> specifies if characters
429
are reported by setting <literal>token = ch</literal> or as <link linkend="G-TOKEN-CHAR:CAPS"><type>G_TOKEN_CHAR</type></link>
430
(the default is <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>).
425
are reported by setting <literal>token = ch</literal> or as <link linkend="G-TOKEN-CHAR--CAPS"><type>G_TOKEN_CHAR</type></link>
426
(the default is <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>).
433
<structfield>symbol_2_token</structfield> specifies if symbols
429
<structfield>symbol_2_token</structfield> specifies if symbols
434
430
are reported by setting <literal>token = v_symbol</literal> or as
435
<link linkend="G-TOKEN-SYMBOL:CAPS"><type>G_TOKEN_SYMBOL</type></link> (the default is <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>).
431
<link linkend="G-TOKEN-SYMBOL--CAPS"><type>G_TOKEN_SYMBOL</type></link> (the default is <link linkend="FALSE--CAPS"><literal>FALSE</literal></link>).
438
<structfield>scope_0_fallback</structfield> specifies if a symbol
434
<structfield>scope_0_fallback</structfield> specifies if a symbol
439
435
is searched for in the default scope in addition to the current scope
440
(the default is <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>).
436
(the default is <link linkend="FALSE--CAPS"><literal>FALSE</literal></link>).
441
437
</para></refsect2>
443
<title><anchor id="g-scanner-new" role="function"/>g_scanner_new ()</title>
444
<indexterm><primary>g_scanner_new</primary></indexterm><programlisting><link linkend="GScanner">GScanner</link>* g_scanner_new (const <link linkend="GScannerConfig">GScannerConfig</link> *config_templ);</programlisting>
438
<refsect2 id="g-scanner-new" role="function">
439
<title>g_scanner_new ()</title>
440
<indexterm zone="g-scanner-new"><primary sortas="g_scanner_new">g_scanner_new</primary></indexterm><programlisting><link linkend="GScanner">GScanner</link>* g_scanner_new (const <link linkend="GScannerConfig">GScannerConfig</link> *config_templ);</programlisting>
446
442
Creates a new <link linkend="GScanner"><type>GScanner</type></link>.
447
443
The <parameter>config_templ</parameter> structure specifies the initial settings of the scanner,
448
444
which are copied into the <link linkend="GScanner"><type>GScanner</type></link> <structfield>config</structfield> field.
449
If you pass <link linkend="NULL:CAPS"><literal>NULL</literal></link> then the default settings are used.
445
If you pass <link linkend="NULL--CAPS"><literal>NULL</literal></link> then the default settings are used.
450
446
</para><variablelist role="params">
451
<varlistentry><term><parameter>config_templ</parameter> :</term>
447
<varlistentry><term><parameter>config_templ</parameter> :</term>
452
448
<listitem><simpara>the initial scanner settings.
453
449
</simpara></listitem></varlistentry>
454
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the new <link linkend="GScanner"><type>GScanner</type></link>.
450
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the new <link linkend="GScanner"><type>GScanner</type></link>.
457
451
</simpara></listitem></varlistentry>
458
452
</variablelist></refsect2>
460
<title><anchor id="g-scanner-destroy" role="function"/>g_scanner_destroy ()</title>
461
<indexterm><primary>g_scanner_destroy</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_destroy (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
453
<refsect2 id="g-scanner-destroy" role="function">
454
<title>g_scanner_destroy ()</title>
455
<indexterm zone="g-scanner-destroy"><primary sortas="g_scanner_destroy">g_scanner_destroy</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_destroy (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
463
457
Frees all memory used by the <link linkend="GScanner"><type>GScanner</type></link>.
464
458
</para><variablelist role="params">
465
<varlistentry><term><parameter>scanner</parameter> :</term>
459
<varlistentry><term><parameter>scanner</parameter> :</term>
466
460
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
469
461
</simpara></listitem></varlistentry>
470
462
</variablelist></refsect2>
472
<title><anchor id="g-scanner-input-file" role="function"/>g_scanner_input_file ()</title>
473
<indexterm><primary>g_scanner_input_file</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_input_file (<link linkend="GScanner">GScanner</link> *scanner,
463
<refsect2 id="g-scanner-input-file" role="function">
464
<title>g_scanner_input_file ()</title>
465
<indexterm zone="g-scanner-input-file"><primary sortas="g_scanner_input_file">g_scanner_input_file</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_input_file (<link linkend="GScanner">GScanner</link> *scanner,
474
466
<link linkend="gint">gint</link> input_fd);</programlisting>
476
468
Prepares to scan a file.
477
469
</para><variablelist role="params">
478
<varlistentry><term><parameter>scanner</parameter> :</term>
470
<varlistentry><term><parameter>scanner</parameter> :</term>
479
471
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
480
472
</simpara></listitem></varlistentry>
481
<varlistentry><term><parameter>input_fd</parameter> :</term>
473
<varlistentry><term><parameter>input_fd</parameter> :</term>
482
474
<listitem><simpara>a file descriptor.
485
475
</simpara></listitem></varlistentry>
486
476
</variablelist></refsect2>
488
<title><anchor id="g-scanner-sync-file-offset" role="function"/>g_scanner_sync_file_offset ()</title>
489
<indexterm><primary>g_scanner_sync_file_offset</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_sync_file_offset (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
477
<refsect2 id="g-scanner-sync-file-offset" role="function">
478
<title>g_scanner_sync_file_offset ()</title>
479
<indexterm zone="g-scanner-sync-file-offset"><primary sortas="g_scanner_sync_file_offset">g_scanner_sync_file_offset</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_sync_file_offset (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
491
Rewinds the filedescriptor to the current buffer position and blows
481
Rewinds the filedescriptor to the current buffer position and blows
492
482
the file read ahead buffer. This is useful for third party uses of
493
the scanners filedescriptor, which hooks onto the current scanning
483
the scanners filedescriptor, which hooks onto the current scanning
495
485
</para><variablelist role="params">
496
<varlistentry><term><parameter>scanner</parameter> :</term>
486
<varlistentry><term><parameter>scanner</parameter> :</term>
497
487
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
500
488
</simpara></listitem></varlistentry>
501
489
</variablelist></refsect2>
503
<title><anchor id="g-scanner-input-text" role="function"/>g_scanner_input_text ()</title>
504
<indexterm><primary>g_scanner_input_text</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_input_text (<link linkend="GScanner">GScanner</link> *scanner,
490
<refsect2 id="g-scanner-input-text" role="function">
491
<title>g_scanner_input_text ()</title>
492
<indexterm zone="g-scanner-input-text"><primary sortas="g_scanner_input_text">g_scanner_input_text</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_input_text (<link linkend="GScanner">GScanner</link> *scanner,
505
493
const <link linkend="gchar">gchar</link> *text,
506
494
<link linkend="guint">guint</link> text_len);</programlisting>
508
496
Prepares to scan a text buffer.
509
497
</para><variablelist role="params">
510
<varlistentry><term><parameter>scanner</parameter> :</term>
498
<varlistentry><term><parameter>scanner</parameter> :</term>
511
499
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
512
500
</simpara></listitem></varlistentry>
513
<varlistentry><term><parameter>text</parameter> :</term>
501
<varlistentry><term><parameter>text</parameter> :</term>
514
502
<listitem><simpara>the text buffer to scan.
515
503
</simpara></listitem></varlistentry>
516
<varlistentry><term><parameter>text_len</parameter> :</term>
504
<varlistentry><term><parameter>text_len</parameter> :</term>
517
505
<listitem><simpara>the length of the text buffer.
520
506
</simpara></listitem></varlistentry>
521
507
</variablelist></refsect2>
523
<title><anchor id="g-scanner-peek-next-token" role="function"/>g_scanner_peek_next_token ()</title>
524
<indexterm><primary>g_scanner_peek_next_token</primary></indexterm><programlisting><link linkend="GTokenType">GTokenType</link> g_scanner_peek_next_token (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
508
<refsect2 id="g-scanner-peek-next-token" role="function">
509
<title>g_scanner_peek_next_token ()</title>
510
<indexterm zone="g-scanner-peek-next-token"><primary sortas="g_scanner_peek_next_token">g_scanner_peek_next_token</primary></indexterm><programlisting><link linkend="GTokenType">GTokenType</link> g_scanner_peek_next_token (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
526
512
Parses the next token, without removing it from the input stream.
527
513
The token data is placed in the
559
543
<structfield>line</structfield>, and
560
544
<structfield>position</structfield> fields of the <link linkend="GScanner"><type>GScanner</type></link> structure.
561
545
</para><variablelist role="params">
562
<varlistentry><term><parameter>scanner</parameter> :</term>
546
<varlistentry><term><parameter>scanner</parameter> :</term>
563
547
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
564
548
</simpara></listitem></varlistentry>
565
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the type of the token.
549
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the type of the token.
568
550
</simpara></listitem></varlistentry>
569
551
</variablelist></refsect2>
571
<title><anchor id="g-scanner-eof" role="function"/>g_scanner_eof ()</title>
572
<indexterm><primary>g_scanner_eof</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_scanner_eof (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
552
<refsect2 id="g-scanner-eof" role="function">
553
<title>g_scanner_eof ()</title>
554
<indexterm zone="g-scanner-eof"><primary sortas="g_scanner_eof">g_scanner_eof</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> g_scanner_eof (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
574
Returns <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the scanner has reached the end of the file or text buffer.
556
Returns <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if the scanner has reached the end of the file or text buffer.
575
557
</para><variablelist role="params">
576
<varlistentry><term><parameter>scanner</parameter> :</term>
558
<varlistentry><term><parameter>scanner</parameter> :</term>
577
559
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
578
560
</simpara></listitem></varlistentry>
579
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the scanner has reached the end of the file or text buffer.
561
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>%TRUE if the scanner has reached the end of the file or text buffer.
582
562
</simpara></listitem></varlistentry>
583
563
</variablelist></refsect2>
585
<title><anchor id="g-scanner-cur-line" role="function"/>g_scanner_cur_line ()</title>
586
<indexterm><primary>g_scanner_cur_line</primary></indexterm><programlisting><link linkend="guint">guint</link> g_scanner_cur_line (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
564
<refsect2 id="g-scanner-cur-line" role="function">
565
<title>g_scanner_cur_line ()</title>
566
<indexterm zone="g-scanner-cur-line"><primary sortas="g_scanner_cur_line">g_scanner_cur_line</primary></indexterm><programlisting><link linkend="guint">guint</link> g_scanner_cur_line (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
588
568
Returns the current line in the input stream (counting from 1).
589
569
This is the line of the last token parsed via <link linkend="g-scanner-get-next-token"><function>g_scanner_get_next_token()</function></link>.
590
570
</para><variablelist role="params">
591
<varlistentry><term><parameter>scanner</parameter> :</term>
571
<varlistentry><term><parameter>scanner</parameter> :</term>
592
572
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
593
573
</simpara></listitem></varlistentry>
594
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the current line.
574
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the current line.
597
575
</simpara></listitem></varlistentry>
598
576
</variablelist></refsect2>
600
<title><anchor id="g-scanner-cur-position" role="function"/>g_scanner_cur_position ()</title>
601
<indexterm><primary>g_scanner_cur_position</primary></indexterm><programlisting><link linkend="guint">guint</link> g_scanner_cur_position (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
577
<refsect2 id="g-scanner-cur-position" role="function">
578
<title>g_scanner_cur_position ()</title>
579
<indexterm zone="g-scanner-cur-position"><primary sortas="g_scanner_cur_position">g_scanner_cur_position</primary></indexterm><programlisting><link linkend="guint">guint</link> g_scanner_cur_position (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
603
581
Returns the current position in the current line (counting from 0).
604
582
This is the position of the last token parsed via <link linkend="g-scanner-get-next-token"><function>g_scanner_get_next_token()</function></link>.
605
583
</para><variablelist role="params">
606
<varlistentry><term><parameter>scanner</parameter> :</term>
584
<varlistentry><term><parameter>scanner</parameter> :</term>
607
585
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
608
586
</simpara></listitem></varlistentry>
609
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the current position on the line.
587
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the current position on the line.
612
588
</simpara></listitem></varlistentry>
613
589
</variablelist></refsect2>
615
<title><anchor id="g-scanner-cur-token" role="function"/>g_scanner_cur_token ()</title>
616
<indexterm><primary>g_scanner_cur_token</primary></indexterm><programlisting><link linkend="GTokenType">GTokenType</link> g_scanner_cur_token (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
590
<refsect2 id="g-scanner-cur-token" role="function">
591
<title>g_scanner_cur_token ()</title>
592
<indexterm zone="g-scanner-cur-token"><primary sortas="g_scanner_cur_token">g_scanner_cur_token</primary></indexterm><programlisting><link linkend="GTokenType">GTokenType</link> g_scanner_cur_token (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
618
594
Gets the current token type.
619
595
This is simply the <structfield>token</structfield> field in the <link linkend="GScanner"><type>GScanner</type></link>
621
597
</para><variablelist role="params">
622
<varlistentry><term><parameter>scanner</parameter> :</term>
598
<varlistentry><term><parameter>scanner</parameter> :</term>
623
599
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
624
600
</simpara></listitem></varlistentry>
625
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the current token type.
601
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the current token type.
628
602
</simpara></listitem></varlistentry>
629
603
</variablelist></refsect2>
631
<title><anchor id="g-scanner-cur-value" role="function"/>g_scanner_cur_value ()</title>
632
<indexterm><primary>g_scanner_cur_value</primary></indexterm><programlisting><link linkend="GTokenValue">GTokenValue</link> g_scanner_cur_value (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
604
<refsect2 id="g-scanner-cur-value" role="function">
605
<title>g_scanner_cur_value ()</title>
606
<indexterm zone="g-scanner-cur-value"><primary sortas="g_scanner_cur_value">g_scanner_cur_value</primary></indexterm><programlisting><link linkend="GTokenValue">GTokenValue</link> g_scanner_cur_value (<link linkend="GScanner">GScanner</link> *scanner);</programlisting>
634
608
Gets the current token value.
635
609
This is simply the <structfield>value</structfield> field in the <link linkend="GScanner"><type>GScanner</type></link>
637
611
</para><variablelist role="params">
638
<varlistentry><term><parameter>scanner</parameter> :</term>
612
<varlistentry><term><parameter>scanner</parameter> :</term>
639
613
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
640
614
</simpara></listitem></varlistentry>
641
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the current token value.
615
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the current token value.
644
616
</simpara></listitem></varlistentry>
645
617
</variablelist></refsect2>
647
<title><anchor id="g-scanner-set-scope" role="function"/>g_scanner_set_scope ()</title>
648
<indexterm><primary>g_scanner_set_scope</primary></indexterm><programlisting><link linkend="guint">guint</link> g_scanner_set_scope (<link linkend="GScanner">GScanner</link> *scanner,
618
<refsect2 id="g-scanner-set-scope" role="function">
619
<title>g_scanner_set_scope ()</title>
620
<indexterm zone="g-scanner-set-scope"><primary sortas="g_scanner_set_scope">g_scanner_set_scope</primary></indexterm><programlisting><link linkend="guint">guint</link> g_scanner_set_scope (<link linkend="GScanner">GScanner</link> *scanner,
649
621
<link linkend="guint">guint</link> scope_id);</programlisting>
651
623
Sets the current scope.
652
624
</para><variablelist role="params">
653
<varlistentry><term><parameter>scanner</parameter> :</term>
625
<varlistentry><term><parameter>scanner</parameter> :</term>
654
626
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
655
627
</simpara></listitem></varlistentry>
656
<varlistentry><term><parameter>scope_id</parameter> :</term>
628
<varlistentry><term><parameter>scope_id</parameter> :</term>
657
629
<listitem><simpara>the new scope id.
658
630
</simpara></listitem></varlistentry>
659
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the old scope id.
631
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the old scope id.
662
632
</simpara></listitem></varlistentry>
663
633
</variablelist></refsect2>
665
<title><anchor id="g-scanner-scope-add-symbol" role="function"/>g_scanner_scope_add_symbol ()</title>
666
<indexterm><primary>g_scanner_scope_add_symbol</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_scope_add_symbol (<link linkend="GScanner">GScanner</link> *scanner,
634
<refsect2 id="g-scanner-scope-add-symbol" role="function">
635
<title>g_scanner_scope_add_symbol ()</title>
636
<indexterm zone="g-scanner-scope-add-symbol"><primary sortas="g_scanner_scope_add_symbol">g_scanner_scope_add_symbol</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_scope_add_symbol (<link linkend="GScanner">GScanner</link> *scanner,
667
637
<link linkend="guint">guint</link> scope_id,
668
638
const <link linkend="gchar">gchar</link> *symbol,
669
639
<link linkend="gpointer">gpointer</link> value);</programlisting>
671
641
Adds a symbol to the given scope.
672
642
</para><variablelist role="params">
673
<varlistentry><term><parameter>scanner</parameter> :</term>
643
<varlistentry><term><parameter>scanner</parameter> :</term>
674
644
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
675
645
</simpara></listitem></varlistentry>
676
<varlistentry><term><parameter>scope_id</parameter> :</term>
646
<varlistentry><term><parameter>scope_id</parameter> :</term>
677
647
<listitem><simpara>the scope id.
678
648
</simpara></listitem></varlistentry>
679
<varlistentry><term><parameter>symbol</parameter> :</term>
649
<varlistentry><term><parameter>symbol</parameter> :</term>
680
650
<listitem><simpara>the symbol to add.
681
651
</simpara></listitem></varlistentry>
682
<varlistentry><term><parameter>value</parameter> :</term>
652
<varlistentry><term><parameter>value</parameter> :</term>
683
653
<listitem><simpara>the value of the symbol.
686
654
</simpara></listitem></varlistentry>
687
655
</variablelist></refsect2>
689
<title><anchor id="g-scanner-scope-foreach-symbol" role="function"/>g_scanner_scope_foreach_symbol ()</title>
690
<indexterm><primary>g_scanner_scope_foreach_symbol</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_scope_foreach_symbol (<link linkend="GScanner">GScanner</link> *scanner,
656
<refsect2 id="g-scanner-scope-foreach-symbol" role="function">
657
<title>g_scanner_scope_foreach_symbol ()</title>
658
<indexterm zone="g-scanner-scope-foreach-symbol"><primary sortas="g_scanner_scope_foreach_symbol">g_scanner_scope_foreach_symbol</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_scope_foreach_symbol (<link linkend="GScanner">GScanner</link> *scanner,
691
659
<link linkend="guint">guint</link> scope_id,
692
660
<link linkend="GHFunc">GHFunc</link> func,
693
661
<link linkend="gpointer">gpointer</link> user_data);</programlisting>
695
Calls the given function for each of the symbol/value pairs in the
696
given scope of the <link linkend="GScanner"><type>GScanner</type></link>. The function is passed the symbol and
663
Calls the given function for each of the symbol/value pairs in the
664
given scope of the <link linkend="GScanner"><type>GScanner</type></link>. The function is passed the symbol and
697
665
value of each pair, and the given <parameter>user_data</parameter> parameter.
698
666
</para><variablelist role="params">
699
<varlistentry><term><parameter>scanner</parameter> :</term>
667
<varlistentry><term><parameter>scanner</parameter> :</term>
700
668
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
701
669
</simpara></listitem></varlistentry>
702
<varlistentry><term><parameter>scope_id</parameter> :</term>
670
<varlistentry><term><parameter>scope_id</parameter> :</term>
703
671
<listitem><simpara>the scope id.
704
672
</simpara></listitem></varlistentry>
705
<varlistentry><term><parameter>func</parameter> :</term>
673
<varlistentry><term><parameter>func</parameter> :</term>
706
674
<listitem><simpara>the function to call for each symbol/value pair.
707
675
</simpara></listitem></varlistentry>
708
<varlistentry><term><parameter>user_data</parameter> :</term>
676
<varlistentry><term><parameter>user_data</parameter> :</term>
709
677
<listitem><simpara>user data to pass to the function.
712
678
</simpara></listitem></varlistentry>
713
679
</variablelist></refsect2>
715
<title><anchor id="g-scanner-scope-lookup-symbol" role="function"/>g_scanner_scope_lookup_symbol ()</title>
716
<indexterm><primary>g_scanner_scope_lookup_symbol</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link> g_scanner_scope_lookup_symbol (<link linkend="GScanner">GScanner</link> *scanner,
680
<refsect2 id="g-scanner-scope-lookup-symbol" role="function">
681
<title>g_scanner_scope_lookup_symbol ()</title>
682
<indexterm zone="g-scanner-scope-lookup-symbol"><primary sortas="g_scanner_scope_lookup_symbol">g_scanner_scope_lookup_symbol</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link> g_scanner_scope_lookup_symbol (<link linkend="GScanner">GScanner</link> *scanner,
717
683
<link linkend="guint">guint</link> scope_id,
718
684
const <link linkend="gchar">gchar</link> *symbol);</programlisting>
720
686
Looks up a symbol in a scope and return its value. If the
721
symbol is not bound in the scope, <link linkend="NULL:CAPS"><literal>NULL</literal></link> is returned.
687
symbol is not bound in the scope, <link linkend="NULL--CAPS"><literal>NULL</literal></link> is returned.
722
688
</para><variablelist role="params">
723
<varlistentry><term><parameter>scanner</parameter> :</term>
689
<varlistentry><term><parameter>scanner</parameter> :</term>
724
690
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
725
691
</simpara></listitem></varlistentry>
726
<varlistentry><term><parameter>scope_id</parameter> :</term>
692
<varlistentry><term><parameter>scope_id</parameter> :</term>
727
693
<listitem><simpara>the scope id.
728
694
</simpara></listitem></varlistentry>
729
<varlistentry><term><parameter>symbol</parameter> :</term>
695
<varlistentry><term><parameter>symbol</parameter> :</term>
730
696
<listitem><simpara>the symbol to look up.
731
697
</simpara></listitem></varlistentry>
732
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the value of <parameter>symbol</parameter> in the given scope, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
698
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the value of <parameter>symbol</parameter> in the given scope, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>
733
699
if <parameter>symbol</parameter> is not bound in the given scope.
736
700
</simpara></listitem></varlistentry>
737
701
</variablelist></refsect2>
739
<title><anchor id="g-scanner-scope-remove-symbol" role="function"/>g_scanner_scope_remove_symbol ()</title>
740
<indexterm><primary>g_scanner_scope_remove_symbol</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_scope_remove_symbol (<link linkend="GScanner">GScanner</link> *scanner,
702
<refsect2 id="g-scanner-scope-remove-symbol" role="function">
703
<title>g_scanner_scope_remove_symbol ()</title>
704
<indexterm zone="g-scanner-scope-remove-symbol"><primary sortas="g_scanner_scope_remove_symbol">g_scanner_scope_remove_symbol</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_scope_remove_symbol (<link linkend="GScanner">GScanner</link> *scanner,
741
705
<link linkend="guint">guint</link> scope_id,
742
706
const <link linkend="gchar">gchar</link> *symbol);</programlisting>
744
708
Removes a symbol from a scope.
745
709
</para><variablelist role="params">
746
<varlistentry><term><parameter>scanner</parameter> :</term>
710
<varlistentry><term><parameter>scanner</parameter> :</term>
747
711
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
748
712
</simpara></listitem></varlistentry>
749
<varlistentry><term><parameter>scope_id</parameter> :</term>
713
<varlistentry><term><parameter>scope_id</parameter> :</term>
750
714
<listitem><simpara>the scope id.
751
715
</simpara></listitem></varlistentry>
752
<varlistentry><term><parameter>symbol</parameter> :</term>
716
<varlistentry><term><parameter>symbol</parameter> :</term>
753
717
<listitem><simpara>the symbol to remove.
756
718
</simpara></listitem></varlistentry>
757
719
</variablelist></refsect2>
759
<title><anchor id="g-scanner-add-symbol" role="macro" condition="deprecated:2.2: Use g_scanner_scope_add_symbol() instead."/>g_scanner_add_symbol()</title>
760
<indexterm role="deprecated"><primary>g_scanner_add_symbol</primary></indexterm><programlisting>#define g_scanner_add_symbol( scanner, symbol, value )</programlisting>
720
<refsect2 id="g-scanner-add-symbol" role="macro" condition="deprecated:2.2: Use g_scanner_scope_add_symbol() instead.">
721
<title>g_scanner_add_symbol()</title>
722
<indexterm zone="g-scanner-add-symbol" role="deprecated"><primary sortas="g_scanner_add_symbol">g_scanner_add_symbol</primary></indexterm><programlisting>#define g_scanner_add_symbol( scanner, symbol, value )</programlisting>
761
723
<warning><para><literal>g_scanner_add_symbol</literal> has been deprecated since version 2.2 and should not be used in newly-written code. Use <link linkend="g-scanner-scope-add-symbol"><function>g_scanner_scope_add_symbol()</function></link> instead.</para></warning>
763
725
Adds a symbol to the default scope.
764
726
</para><variablelist role="params">
765
<varlistentry><term><parameter>scanner</parameter> :</term>
727
<varlistentry><term><parameter>scanner</parameter> :</term>
766
728
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
767
729
</simpara></listitem></varlistentry>
768
<varlistentry><term><parameter>symbol</parameter> :</term>
730
<varlistentry><term><parameter>symbol</parameter> :</term>
769
731
<listitem><simpara>the symbol to add.
770
732
</simpara></listitem></varlistentry>
771
<varlistentry><term><parameter>value</parameter> :</term>
733
<varlistentry><term><parameter>value</parameter> :</term>
772
734
<listitem><simpara>the value of the symbol.
773
735
</simpara></listitem></varlistentry>
774
736
</variablelist></refsect2>
776
<title><anchor id="g-scanner-remove-symbol" role="macro" condition="deprecated:2.2: Use g_scanner_scope_remove_symbol() instead."/>g_scanner_remove_symbol()</title>
777
<indexterm role="deprecated"><primary>g_scanner_remove_symbol</primary></indexterm><programlisting>#define g_scanner_remove_symbol( scanner, symbol )</programlisting>
737
<refsect2 id="g-scanner-remove-symbol" role="macro" condition="deprecated:2.2: Use g_scanner_scope_remove_symbol() instead.">
738
<title>g_scanner_remove_symbol()</title>
739
<indexterm zone="g-scanner-remove-symbol" role="deprecated"><primary sortas="g_scanner_remove_symbol">g_scanner_remove_symbol</primary></indexterm><programlisting>#define g_scanner_remove_symbol( scanner, symbol )</programlisting>
778
740
<warning><para><literal>g_scanner_remove_symbol</literal> has been deprecated since version 2.2 and should not be used in newly-written code. Use <link linkend="g-scanner-scope-remove-symbol"><function>g_scanner_scope_remove_symbol()</function></link> instead.</para></warning>
780
742
Removes a symbol from the default scope.
781
743
</para><variablelist role="params">
782
<varlistentry><term><parameter>scanner</parameter> :</term>
744
<varlistentry><term><parameter>scanner</parameter> :</term>
783
745
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
784
746
</simpara></listitem></varlistentry>
785
<varlistentry><term><parameter>symbol</parameter> :</term>
747
<varlistentry><term><parameter>symbol</parameter> :</term>
786
748
<listitem><simpara>the symbol to remove.
787
749
</simpara></listitem></varlistentry>
788
750
</variablelist></refsect2>
790
<title><anchor id="g-scanner-foreach-symbol" role="macro" condition="deprecated:2.2: Use g_scanner_scope_foreach_symbol() instead."/>g_scanner_foreach_symbol()</title>
791
<indexterm role="deprecated"><primary>g_scanner_foreach_symbol</primary></indexterm><programlisting>#define g_scanner_foreach_symbol( scanner, func, data )</programlisting>
751
<refsect2 id="g-scanner-foreach-symbol" role="macro" condition="deprecated:2.2: Use g_scanner_scope_foreach_symbol() instead.">
752
<title>g_scanner_foreach_symbol()</title>
753
<indexterm zone="g-scanner-foreach-symbol" role="deprecated"><primary sortas="g_scanner_foreach_symbol">g_scanner_foreach_symbol</primary></indexterm><programlisting>#define g_scanner_foreach_symbol( scanner, func, data )</programlisting>
792
754
<warning><para><literal>g_scanner_foreach_symbol</literal> has been deprecated since version 2.2 and should not be used in newly-written code. Use <link linkend="g-scanner-scope-foreach-symbol"><function>g_scanner_scope_foreach_symbol()</function></link> instead.</para></warning>
794
756
Calls a function for each symbol in the default scope.
795
757
</para><variablelist role="params">
796
<varlistentry><term><parameter>scanner</parameter> :</term>
758
<varlistentry><term><parameter>scanner</parameter> :</term>
797
759
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
798
760
</simpara></listitem></varlistentry>
799
<varlistentry><term><parameter>func</parameter> :</term>
761
<varlistentry><term><parameter>func</parameter> :</term>
800
762
<listitem><simpara>the function to call with each symbol.
801
763
</simpara></listitem></varlistentry>
802
<varlistentry><term><parameter>data</parameter> :</term>
764
<varlistentry><term><parameter>data</parameter> :</term>
803
765
<listitem><simpara>data to pass to the function.
804
766
</simpara></listitem></varlistentry>
805
767
</variablelist></refsect2>
807
<title><anchor id="g-scanner-freeze-symbol-table" role="macro" condition="deprecated:2.2: This macro does nothing."/>g_scanner_freeze_symbol_table()</title>
808
<indexterm role="deprecated"><primary>g_scanner_freeze_symbol_table</primary></indexterm><programlisting>#define g_scanner_freeze_symbol_table(scanner)</programlisting>
768
<refsect2 id="g-scanner-freeze-symbol-table" role="macro" condition="deprecated:2.2: This macro does nothing.">
769
<title>g_scanner_freeze_symbol_table()</title>
770
<indexterm zone="g-scanner-freeze-symbol-table" role="deprecated"><primary sortas="g_scanner_freeze_symbol_table">g_scanner_freeze_symbol_table</primary></indexterm><programlisting>#define g_scanner_freeze_symbol_table(scanner)</programlisting>
809
771
<warning><para><literal>g_scanner_freeze_symbol_table</literal> has been deprecated since version 2.2 and should not be used in newly-written code. This macro does nothing.</para></warning>
811
773
There is no reason to use this macro, since it does nothing.
812
774
</para><variablelist role="params">
813
<varlistentry><term><parameter>scanner</parameter> :</term>
775
<varlistentry><term><parameter>scanner</parameter> :</term>
814
776
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
815
777
</simpara></listitem></varlistentry>
816
778
</variablelist></refsect2>
818
<title><anchor id="g-scanner-thaw-symbol-table" role="macro" condition="deprecated:2.2: This macro does nothing."/>g_scanner_thaw_symbol_table()</title>
819
<indexterm role="deprecated"><primary>g_scanner_thaw_symbol_table</primary></indexterm><programlisting>#define g_scanner_thaw_symbol_table(scanner)</programlisting>
779
<refsect2 id="g-scanner-thaw-symbol-table" role="macro" condition="deprecated:2.2: This macro does nothing.">
780
<title>g_scanner_thaw_symbol_table()</title>
781
<indexterm zone="g-scanner-thaw-symbol-table" role="deprecated"><primary sortas="g_scanner_thaw_symbol_table">g_scanner_thaw_symbol_table</primary></indexterm><programlisting>#define g_scanner_thaw_symbol_table(scanner)</programlisting>
820
782
<warning><para><literal>g_scanner_thaw_symbol_table</literal> has been deprecated since version 2.2 and should not be used in newly-written code. This macro does nothing.</para></warning>
822
784
There is no reason to use this macro, since it does nothing.
823
785
</para><variablelist role="params">
824
<varlistentry><term><parameter>scanner</parameter> :</term>
786
<varlistentry><term><parameter>scanner</parameter> :</term>
825
787
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
826
788
</simpara></listitem></varlistentry>
827
789
</variablelist></refsect2>
829
<title><anchor id="g-scanner-lookup-symbol" role="function"/>g_scanner_lookup_symbol ()</title>
830
<indexterm><primary>g_scanner_lookup_symbol</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link> g_scanner_lookup_symbol (<link linkend="GScanner">GScanner</link> *scanner,
790
<refsect2 id="g-scanner-lookup-symbol" role="function">
791
<title>g_scanner_lookup_symbol ()</title>
792
<indexterm zone="g-scanner-lookup-symbol"><primary sortas="g_scanner_lookup_symbol">g_scanner_lookup_symbol</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link> g_scanner_lookup_symbol (<link linkend="GScanner">GScanner</link> *scanner,
831
793
const <link linkend="gchar">gchar</link> *symbol);</programlisting>
833
795
Looks up a symbol in the current scope and return its value. If the
834
symbol is not bound in the current scope, <link linkend="NULL:CAPS"><literal>NULL</literal></link> is returned.
796
symbol is not bound in the current scope, <link linkend="NULL--CAPS"><literal>NULL</literal></link> is returned.
835
797
</para><variablelist role="params">
836
<varlistentry><term><parameter>scanner</parameter> :</term>
798
<varlistentry><term><parameter>scanner</parameter> :</term>
837
799
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
838
800
</simpara></listitem></varlistentry>
839
<varlistentry><term><parameter>symbol</parameter> :</term>
801
<varlistentry><term><parameter>symbol</parameter> :</term>
840
802
<listitem><simpara>the symbol to look up.
841
803
</simpara></listitem></varlistentry>
842
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the value of <parameter>symbol</parameter> in the current scope, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
804
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>the value of <parameter>symbol</parameter> in the current scope, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>
843
805
if <parameter>symbol</parameter> is not bound in the current scope.
846
806
</simpara></listitem></varlistentry>
847
807
</variablelist></refsect2>
849
<title><anchor id="g-scanner-warn" role="function"/>g_scanner_warn ()</title>
850
<indexterm><primary>g_scanner_warn</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_warn (<link linkend="GScanner">GScanner</link> *scanner,
808
<refsect2 id="g-scanner-warn" role="function">
809
<title>g_scanner_warn ()</title>
810
<indexterm zone="g-scanner-warn"><primary sortas="g_scanner_warn">g_scanner_warn</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_warn (<link linkend="GScanner">GScanner</link> *scanner,
851
811
const <link linkend="gchar">gchar</link> *format,
852
812
...);</programlisting>
854
814
Outputs a warning message, via the <link linkend="GScanner"><type>GScanner</type></link> message handler.
855
815
</para><variablelist role="params">
856
<varlistentry><term><parameter>scanner</parameter> :</term>
816
<varlistentry><term><parameter>scanner</parameter> :</term>
857
817
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
858
818
</simpara></listitem></varlistentry>
859
<varlistentry><term><parameter>format</parameter> :</term>
819
<varlistentry><term><parameter>format</parameter> :</term>
860
820
<listitem><simpara>the message format. See the <function><link linkend="printf"><function>printf()</function></link></function>
862
822
</simpara></listitem></varlistentry>
863
<varlistentry><term><parameter>...</parameter> :</term>
823
<varlistentry><term><parameter>...</parameter> :</term>
864
824
<listitem><simpara>the parameters to insert into the format string.
867
825
</simpara></listitem></varlistentry>
868
826
</variablelist></refsect2>
870
<title><anchor id="g-scanner-error" role="function"/>g_scanner_error ()</title>
871
<indexterm><primary>g_scanner_error</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_error (<link linkend="GScanner">GScanner</link> *scanner,
827
<refsect2 id="g-scanner-error" role="function">
828
<title>g_scanner_error ()</title>
829
<indexterm zone="g-scanner-error"><primary sortas="g_scanner_error">g_scanner_error</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_error (<link linkend="GScanner">GScanner</link> *scanner,
872
830
const <link linkend="gchar">gchar</link> *format,
873
831
...);</programlisting>
875
833
Outputs an error message, via the <link linkend="GScanner"><type>GScanner</type></link> message handler.
876
834
</para><variablelist role="params">
877
<varlistentry><term><parameter>scanner</parameter> :</term>
835
<varlistentry><term><parameter>scanner</parameter> :</term>
878
836
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
879
837
</simpara></listitem></varlistentry>
880
<varlistentry><term><parameter>format</parameter> :</term>
838
<varlistentry><term><parameter>format</parameter> :</term>
881
839
<listitem><simpara>the message format. See the <function><link linkend="printf"><function>printf()</function></link></function>
883
841
</simpara></listitem></varlistentry>
884
<varlistentry><term><parameter>...</parameter> :</term>
842
<varlistentry><term><parameter>...</parameter> :</term>
885
843
<listitem><simpara>the parameters to insert into the format string.
888
844
</simpara></listitem></varlistentry>
889
845
</variablelist></refsect2>
891
<title><anchor id="g-scanner-unexp-token" role="function"/>g_scanner_unexp_token ()</title>
892
<indexterm><primary>g_scanner_unexp_token</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_unexp_token (<link linkend="GScanner">GScanner</link> *scanner,
846
<refsect2 id="g-scanner-unexp-token" role="function">
847
<title>g_scanner_unexp_token ()</title>
848
<indexterm zone="g-scanner-unexp-token"><primary sortas="g_scanner_unexp_token">g_scanner_unexp_token</primary></indexterm><programlisting><link linkend="void">void</link> g_scanner_unexp_token (<link linkend="GScanner">GScanner</link> *scanner,
893
849
<link linkend="GTokenType">GTokenType</link> expected_token,
894
850
const <link linkend="gchar">gchar</link> *identifier_spec,
895
851
const <link linkend="gchar">gchar</link> *symbol_spec,
905
861
scanner's current token (not the peeked token) to construct part
907
863
</para><variablelist role="params">
908
<varlistentry><term><parameter>scanner</parameter> :</term>
864
<varlistentry><term><parameter>scanner</parameter> :</term>
909
865
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
910
866
</simpara></listitem></varlistentry>
911
<varlistentry><term><parameter>expected_token</parameter> :</term>
867
<varlistentry><term><parameter>expected_token</parameter> :</term>
912
868
<listitem><simpara>the expected token.
913
869
</simpara></listitem></varlistentry>
914
<varlistentry><term><parameter>identifier_spec</parameter> :</term>
915
<listitem><simpara>a string describing how the scanner's user refers to
916
identifiers (<link linkend="NULL:CAPS"><literal>NULL</literal></link> defaults to "identifier").
917
This is used if <parameter>expected_token</parameter> is <link linkend="G-TOKEN-IDENTIFIER:CAPS"><type>G_TOKEN_IDENTIFIER</type></link>
918
or <link linkend="G-TOKEN-IDENTIFIER-NULL:CAPS"><type>G_TOKEN_IDENTIFIER_NULL</type></link>.
919
</simpara></listitem></varlistentry>
920
<varlistentry><term><parameter>symbol_spec</parameter> :</term>
921
<listitem><simpara>a string describing how the scanner's user refers to
922
symbols (<link linkend="NULL:CAPS"><literal>NULL</literal></link> defaults to "symbol").
923
This is used if <parameter>expected_token</parameter> is <link linkend="G-TOKEN-SYMBOL:CAPS"><type>G_TOKEN_SYMBOL</type></link> or
924
any token value greater than <link linkend="G-TOKEN-LAST:CAPS"><type>G_TOKEN_LAST</type></link>.
925
</simpara></listitem></varlistentry>
926
<varlistentry><term><parameter>symbol_name</parameter> :</term>
870
<varlistentry><term><parameter>identifier_spec</parameter> :</term>
871
<listitem><simpara>a string describing how the scanner's user refers to
872
identifiers (<link linkend="NULL--CAPS"><literal>NULL</literal></link> defaults to "identifier").
873
This is used if <parameter>expected_token</parameter> is <link linkend="G-TOKEN-IDENTIFIER--CAPS"><type>G_TOKEN_IDENTIFIER</type></link>
874
or <link linkend="G-TOKEN-IDENTIFIER-NULL--CAPS"><type>G_TOKEN_IDENTIFIER_NULL</type></link>.
875
</simpara></listitem></varlistentry>
876
<varlistentry><term><parameter>symbol_spec</parameter> :</term>
877
<listitem><simpara>a string describing how the scanner's user refers to
878
symbols (<link linkend="NULL--CAPS"><literal>NULL</literal></link> defaults to "symbol").
879
This is used if <parameter>expected_token</parameter> is <link linkend="G-TOKEN-SYMBOL--CAPS"><type>G_TOKEN_SYMBOL</type></link> or
880
any token value greater than <link linkend="G-TOKEN-LAST--CAPS"><type>G_TOKEN_LAST</type></link>.
881
</simpara></listitem></varlistentry>
882
<varlistentry><term><parameter>symbol_name</parameter> :</term>
927
883
<listitem><simpara>the name of the symbol, if the scanner's current token
929
885
</simpara></listitem></varlistentry>
930
<varlistentry><term><parameter>message</parameter> :</term>
931
<listitem><simpara>a message string to output at the end of the warning/error, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>.
886
<varlistentry><term><parameter>message</parameter> :</term>
887
<listitem><simpara>a message string to output at the end of the warning/error, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>.
932
888
</simpara></listitem></varlistentry>
933
<varlistentry><term><parameter>is_error</parameter> :</term>
934
<listitem><simpara>if <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> it is output as an error. If <link linkend="FALSE:CAPS"><literal>FALSE</literal></link> it is output as a
889
<varlistentry><term><parameter>is_error</parameter> :</term>
890
<listitem><simpara>if <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> it is output as an error. If <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> it is output as a
938
892
</simpara></listitem></varlistentry>
939
893
</variablelist></refsect2>
941
<title><anchor id="GScannerMsgFunc" role="function"/>GScannerMsgFunc ()</title>
942
<indexterm><primary>GScannerMsgFunc</primary></indexterm><programlisting><link linkend="void">void</link> (*GScannerMsgFunc) (<link linkend="GScanner">GScanner</link> *scanner,
894
<refsect2 id="GScannerMsgFunc" role="function">
895
<title>GScannerMsgFunc ()</title>
896
<indexterm zone="GScannerMsgFunc"><primary sortas="GScannerMsgFunc">GScannerMsgFunc</primary></indexterm><programlisting><link linkend="void">void</link> (*GScannerMsgFunc) (<link linkend="GScanner">GScanner</link> *scanner,
943
897
<link linkend="gchar">gchar</link> *message,
944
898
<link linkend="gboolean">gboolean</link> error);</programlisting>
946
900
Specifies the type of the message handler function.
947
901
</para><variablelist role="params">
948
<varlistentry><term><parameter>scanner</parameter> :</term>
902
<varlistentry><term><parameter>scanner</parameter> :</term>
949
903
<listitem><simpara>a <link linkend="GScanner"><type>GScanner</type></link>.
950
904
</simpara></listitem></varlistentry>
951
<varlistentry><term><parameter>message</parameter> :</term>
905
<varlistentry><term><parameter>message</parameter> :</term>
952
906
<listitem><simpara>the message.
953
907
</simpara></listitem></varlistentry>
954
<varlistentry><term><parameter>error</parameter> :</term>
955
<listitem><simpara><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the message signals an error, <link linkend="FALSE:CAPS"><literal>FALSE</literal></link> if it
908
<varlistentry><term><parameter>error</parameter> :</term>
909
<listitem><simpara>%TRUE if the message signals an error, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> if it
956
910
signals a warning.
959
911
</simpara></listitem></varlistentry>
960
912
</variablelist></refsect2>
962
<title><anchor id="G-CSET-a-2-z" role="macro"/>G_CSET_a_2_z</title>
963
<indexterm><primary>G_CSET_a_2_z</primary></indexterm><programlisting>#define G_CSET_a_2_z "abcdefghijklmnopqrstuvwxyz"
913
<refsect2 id="G-CSET-a-2-z" role="macro">
914
<title>G_CSET_a_2_z</title>
915
<indexterm zone="G-CSET-a-2-z"><primary sortas="G_CSET_a_2_z">G_CSET_a_2_z</primary></indexterm><programlisting>#define G_CSET_a_2_z "abcdefghijklmnopqrstuvwxyz"
964
916
</programlisting>
966
918
The set of lowercase ASCII alphabet characters.
967
919
Used for specifying valid identifier characters in <link linkend="GScannerConfig"><type>GScannerConfig</type></link>.
968
920
</para></refsect2>
970
<title><anchor id="G-CSET-A-2-Z:CAPS" role="macro"/>G_CSET_A_2_Z</title>
971
<indexterm><primary>G_CSET_A_2_Z</primary></indexterm><programlisting>#define G_CSET_A_2_Z "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
921
<refsect2 id="G-CSET-A-2-Z--CAPS" role="macro">
922
<title>G_CSET_A_2_Z</title>
923
<indexterm zone="G-CSET-A-2-Z--CAPS"><primary sortas="G_CSET_A_2_Z">G_CSET_A_2_Z</primary></indexterm><programlisting>#define G_CSET_A_2_Z "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
972
924
</programlisting>
974
926
The set of uppercase ASCII alphabet characters.
975
927
Used for specifying valid identifier characters in <link linkend="GScannerConfig"><type>GScannerConfig</type></link>.
976
928
</para></refsect2>
978
<title><anchor id="G-CSET-DIGITS:CAPS" role="macro"/>G_CSET_DIGITS</title>
979
<indexterm><primary>G_CSET_DIGITS</primary></indexterm><programlisting>#define G_CSET_DIGITS "0123456789"
929
<refsect2 id="G-CSET-DIGITS--CAPS" role="macro">
930
<title>G_CSET_DIGITS</title>
931
<indexterm zone="G-CSET-DIGITS--CAPS"><primary sortas="G_CSET_DIGITS">G_CSET_DIGITS</primary></indexterm><programlisting>#define G_CSET_DIGITS "0123456789"
980
932
</programlisting>
982
934
The set of digits.
983
935
Used for specifying valid identifier characters in <link linkend="GScannerConfig"><type>GScannerConfig</type></link>.
984
936
</para></refsect2>
986
<title><anchor id="G-CSET-LATINC:CAPS" role="macro"/>G_CSET_LATINC</title>
987
<indexterm><primary>G_CSET_LATINC</primary></indexterm><programlisting>#define G_CSET_LATINC</programlisting>
989
The set of uppercase ISO 8859-1 alphabet characters which are
990
not ASCII characters.
991
Used for specifying valid identifier characters in <link linkend="GScannerConfig"><type>GScannerConfig</type></link>.
994
<title><anchor id="G-CSET-LATINS:CAPS" role="macro"/>G_CSET_LATINS</title>
995
<indexterm><primary>G_CSET_LATINS</primary></indexterm><programlisting>#define G_CSET_LATINS</programlisting>
997
The set of lowercase ISO 8859-1 alphabet characters which are
998
not ASCII characters.
999
Used for specifying valid identifier characters in <link linkend="GScannerConfig"><type>GScannerConfig</type></link>.
1002
<title><anchor id="GTokenType" role="enum"/>enum GTokenType</title>
1003
<indexterm><primary>GTokenType</primary></indexterm><programlisting>typedef enum
937
<refsect2 id="G-CSET-LATINC--CAPS" role="macro">
938
<title>G_CSET_LATINC</title>
939
<indexterm zone="G-CSET-LATINC--CAPS"><primary sortas="G_CSET_LATINC">G_CSET_LATINC</primary></indexterm><programlisting>#define G_CSET_LATINC</programlisting>
941
The set of uppercase ISO 8859-1 alphabet characters which are
942
not ASCII characters.
943
Used for specifying valid identifier characters in <link linkend="GScannerConfig"><type>GScannerConfig</type></link>.
945
<refsect2 id="G-CSET-LATINS--CAPS" role="macro">
946
<title>G_CSET_LATINS</title>
947
<indexterm zone="G-CSET-LATINS--CAPS"><primary sortas="G_CSET_LATINS">G_CSET_LATINS</primary></indexterm><programlisting>#define G_CSET_LATINS</programlisting>
949
The set of lowercase ISO 8859-1 alphabet characters which are
950
not ASCII characters.
951
Used for specifying valid identifier characters in <link linkend="GScannerConfig"><type>GScannerConfig</type></link>.
953
<refsect2 id="GTokenType" role="enum">
954
<title>enum GTokenType</title>
955
<indexterm zone="GTokenType"><primary sortas="GTokenType">GTokenType</primary></indexterm><programlisting>typedef enum
1005
957
G_TOKEN_EOF = 0,