Github User Fetcher 1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
gscanner.h File Reference
#include <glib/gdataset.h>
#include <glib/ghash.h>

Go to the source code of this file.

Data Structures

union  _GTokenValue
 
struct  _GScannerConfig
 
struct  _GScanner
 

Macros

#define G_CSET_A_2_Z   "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
 
#define G_CSET_a_2_z   "abcdefghijklmnopqrstuvwxyz"
 
#define G_CSET_DIGITS   "0123456789"
 
#define G_CSET_LATINC
 
#define G_CSET_LATINS
 
#define g_scanner_add_symbol(scanner, symbol, value)
 
#define g_scanner_remove_symbol(scanner, symbol)
 
#define g_scanner_foreach_symbol(scanner, func, data)
 
#define g_scanner_freeze_symbol_table(scanner)   ((void)0) GLIB_DEPRECATED_MACRO_IN_2_26
 
#define g_scanner_thaw_symbol_table(scanner)   ((void)0) GLIB_DEPRECATED_MACRO_IN_2_26
 

Typedefs

typedef typedefG_BEGIN_DECLS struct _GScanner GScanner
 
typedef struct _GScannerConfig GScannerConfig
 
typedef union _GTokenValue GTokenValue
 
typedef void(* GScannerMsgFunc) (GScanner *scanner, gchar *message, gboolean error)
 

Enumerations

enum  GErrorType {
  G_ERR_UNKNOWN , G_ERR_UNEXP_EOF , G_ERR_UNEXP_EOF_IN_STRING , G_ERR_UNEXP_EOF_IN_COMMENT ,
  G_ERR_NON_DIGIT_IN_CONST , G_ERR_DIGIT_RADIX , G_ERR_FLOAT_RADIX , G_ERR_FLOAT_MALFORMED
}
 
enum  GTokenType {
  G_TOKEN_EOF = 0 , G_TOKEN_LEFT_PAREN = '(' , G_TOKEN_RIGHT_PAREN = ')' , G_TOKEN_LEFT_CURLY = '{' ,
  G_TOKEN_RIGHT_CURLY = '}' , G_TOKEN_LEFT_BRACE = '[' , G_TOKEN_RIGHT_BRACE = ']' , G_TOKEN_EQUAL_SIGN = '=' ,
  G_TOKEN_COMMA = ',' , G_TOKEN_NONE = 256 , G_TOKEN_ERROR , G_TOKEN_CHAR ,
  G_TOKEN_BINARY , G_TOKEN_OCTAL , G_TOKEN_INT , G_TOKEN_HEX ,
  G_TOKEN_FLOAT , G_TOKEN_STRING , G_TOKEN_SYMBOL , G_TOKEN_IDENTIFIER ,
  G_TOKEN_IDENTIFIER_NULL , G_TOKEN_COMMENT_SINGLE , G_TOKEN_COMMENT_MULTI , G_TOKEN_LAST
}
 

Functions

GLIB_AVAILABLE_IN_ALL GScannerg_scanner_new (const GScannerConfig *config_templ)
 
GLIB_AVAILABLE_IN_ALL void g_scanner_destroy (GScanner *scanner)
 
GLIB_AVAILABLE_IN_ALL void g_scanner_input_file (GScanner *scanner, gint input_fd)
 
GLIB_AVAILABLE_IN_ALL void g_scanner_sync_file_offset (GScanner *scanner)
 
GLIB_AVAILABLE_IN_ALL void g_scanner_input_text (GScanner *scanner, const gchar *text, guint text_len)
 
GLIB_AVAILABLE_IN_ALL GTokenType g_scanner_get_next_token (GScanner *scanner)
 
GLIB_AVAILABLE_IN_ALL GTokenType g_scanner_peek_next_token (GScanner *scanner)
 
GLIB_AVAILABLE_IN_ALL GTokenType g_scanner_cur_token (GScanner *scanner)
 
GLIB_AVAILABLE_IN_ALL GTokenValue g_scanner_cur_value (GScanner *scanner)
 
GLIB_AVAILABLE_IN_ALL guint g_scanner_cur_line (GScanner *scanner)
 
GLIB_AVAILABLE_IN_ALL guint g_scanner_cur_position (GScanner *scanner)
 
GLIB_AVAILABLE_IN_ALL gboolean g_scanner_eof (GScanner *scanner)
 
GLIB_AVAILABLE_IN_ALL guint g_scanner_set_scope (GScanner *scanner, guint scope_id)
 
GLIB_AVAILABLE_IN_ALL void g_scanner_scope_add_symbol (GScanner *scanner, guint scope_id, const gchar *symbol, gpointer value)
 
GLIB_AVAILABLE_IN_ALL void g_scanner_scope_remove_symbol (GScanner *scanner, guint scope_id, const gchar *symbol)
 
GLIB_AVAILABLE_IN_ALL gpointer g_scanner_scope_lookup_symbol (GScanner *scanner, guint scope_id, const gchar *symbol)
 
GLIB_AVAILABLE_IN_ALL void g_scanner_scope_foreach_symbol (GScanner *scanner, guint scope_id, GHFunc func, gpointer user_data)
 
GLIB_AVAILABLE_IN_ALL gpointer g_scanner_lookup_symbol (GScanner *scanner, const gchar *symbol)
 
GLIB_AVAILABLE_IN_ALL void g_scanner_unexp_token (GScanner *scanner, GTokenType expected_token, const gchar *identifier_spec, const gchar *symbol_spec, const gchar *symbol_name, const gchar *message, gint is_error)
 
GLIB_AVAILABLE_IN_ALL void g_scanner_error (GScanner *scanner, const gchar *format,...) G_GNUC_PRINTF(2
 
GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void g_scanner_warn (GScanner *scanner, const gchar *format,...) G_GNUC_PRINTF(2
 

Macro Definition Documentation

◆ G_CSET_A_2_Z

#define G_CSET_A_2_Z   "ABCDEFGHIJKLMNOPQRSTUVWXYZ"

Definition at line 51 of file gscanner.h.

◆ G_CSET_a_2_z

#define G_CSET_a_2_z   "abcdefghijklmnopqrstuvwxyz"

Definition at line 52 of file gscanner.h.

◆ G_CSET_DIGITS

#define G_CSET_DIGITS   "0123456789"

Definition at line 53 of file gscanner.h.

◆ G_CSET_LATINC

#define G_CSET_LATINC
Value:
"\300\301\302\303\304\305\306"\
"\307\310\311\312\313\314\315\316\317\320"\
"\321\322\323\324\325\326"\
"\330\331\332\333\334\335\336"

Definition at line 54 of file gscanner.h.

54#define G_CSET_LATINC "\300\301\302\303\304\305\306"\
55 "\307\310\311\312\313\314\315\316\317\320"\
56 "\321\322\323\324\325\326"\
57 "\330\331\332\333\334\335\336"

◆ G_CSET_LATINS

#define G_CSET_LATINS
Value:
"\337\340\341\342\343\344\345\346"\
"\347\350\351\352\353\354\355\356\357\360"\
"\361\362\363\364\365\366"\
"\370\371\372\373\374\375\376\377"

Definition at line 58 of file gscanner.h.

58#define G_CSET_LATINS "\337\340\341\342\343\344\345\346"\
59 "\347\350\351\352\353\354\355\356\357\360"\
60 "\361\362\363\364\365\366"\
61 "\370\371\372\373\374\375\376\377"

◆ g_scanner_add_symbol

#define g_scanner_add_symbol ( scanner,
symbol,
value )
Value:
g_scanner_scope_add_symbol ((scanner), 0, (symbol), (value)); \
#define GLIB_DEPRECATED_MACRO_IN_2_26_FOR(f)
#define G_STMT_END
Definition gmacros.h:997
#define G_STMT_START
Definition gmacros.h:989
GLIB_AVAILABLE_IN_ALL void g_scanner_scope_add_symbol(GScanner *scanner, guint scope_id, const gchar *symbol, gpointer value)
int value
Definition lsqlite3.c:2155

Definition at line 284 of file gscanner.h.

284#define g_scanner_add_symbol( scanner, symbol, value ) G_STMT_START { \
285 g_scanner_scope_add_symbol ((scanner), 0, (symbol), (value)); \
286} G_STMT_END GLIB_DEPRECATED_MACRO_IN_2_26_FOR(g_scanner_scope_add_symbol)

◆ g_scanner_foreach_symbol

#define g_scanner_foreach_symbol ( scanner,
func,
data )
Value:
g_scanner_scope_foreach_symbol ((scanner), 0, (func), (data)); \
GLIB_AVAILABLE_IN_ALL void g_scanner_scope_foreach_symbol(GScanner *scanner, guint scope_id, GHFunc func, gpointer user_data)

Definition at line 290 of file gscanner.h.

290#define g_scanner_foreach_symbol( scanner, func, data ) G_STMT_START { \
291 g_scanner_scope_foreach_symbol ((scanner), 0, (func), (data)); \
292} G_STMT_END GLIB_DEPRECATED_MACRO_IN_2_26_FOR(g_scanner_scope_foreach_symbol)

◆ g_scanner_freeze_symbol_table

#define g_scanner_freeze_symbol_table ( scanner)    ((void)0) GLIB_DEPRECATED_MACRO_IN_2_26

Definition at line 296 of file gscanner.h.

◆ g_scanner_remove_symbol

#define g_scanner_remove_symbol ( scanner,
symbol )
Value:
g_scanner_scope_remove_symbol ((scanner), 0, (symbol)); \
GLIB_AVAILABLE_IN_ALL void g_scanner_scope_remove_symbol(GScanner *scanner, guint scope_id, const gchar *symbol)

Definition at line 287 of file gscanner.h.

287#define g_scanner_remove_symbol( scanner, symbol ) G_STMT_START { \
288 g_scanner_scope_remove_symbol ((scanner), 0, (symbol)); \
289} G_STMT_END GLIB_DEPRECATED_MACRO_IN_2_26_FOR(g_scanner_scope_remove_symbol)

◆ g_scanner_thaw_symbol_table

#define g_scanner_thaw_symbol_table ( scanner)    ((void)0) GLIB_DEPRECATED_MACRO_IN_2_26

Definition at line 297 of file gscanner.h.

Typedef Documentation

◆ GScanner

typedef typedefG_BEGIN_DECLS struct _GScanner GScanner

Definition at line 39 of file gscanner.h.

◆ GScannerConfig

Definition at line 40 of file gscanner.h.

◆ GScannerMsgFunc

typedef void(* GScannerMsgFunc) (GScanner *scanner, gchar *message, gboolean error)

Definition at line 43 of file gscanner.h.

◆ GTokenValue

typedef union _GTokenValue GTokenValue

Definition at line 41 of file gscanner.h.

Enumeration Type Documentation

◆ GErrorType

enum GErrorType
Enumerator
G_ERR_UNKNOWN 
G_ERR_UNEXP_EOF 
G_ERR_UNEXP_EOF_IN_STRING 
G_ERR_UNEXP_EOF_IN_COMMENT 
G_ERR_NON_DIGIT_IN_CONST 
G_ERR_DIGIT_RADIX 
G_ERR_FLOAT_RADIX 
G_ERR_FLOAT_MALFORMED 

Definition at line 64 of file gscanner.h.

65{
GErrorType
Definition gscanner.h:65
@ G_ERR_UNEXP_EOF_IN_STRING
Definition gscanner.h:68
@ G_ERR_DIGIT_RADIX
Definition gscanner.h:71
@ G_ERR_UNKNOWN
Definition gscanner.h:66
@ G_ERR_UNEXP_EOF_IN_COMMENT
Definition gscanner.h:69
@ G_ERR_FLOAT_MALFORMED
Definition gscanner.h:73
@ G_ERR_FLOAT_RADIX
Definition gscanner.h:72
@ G_ERR_NON_DIGIT_IN_CONST
Definition gscanner.h:70
@ G_ERR_UNEXP_EOF
Definition gscanner.h:67

◆ GTokenType

enum GTokenType
Enumerator
G_TOKEN_EOF 
G_TOKEN_LEFT_PAREN 
G_TOKEN_RIGHT_PAREN 
G_TOKEN_LEFT_CURLY 
G_TOKEN_RIGHT_CURLY 
G_TOKEN_LEFT_BRACE 
G_TOKEN_RIGHT_BRACE 
G_TOKEN_EQUAL_SIGN 
G_TOKEN_COMMA 
G_TOKEN_NONE 
G_TOKEN_ERROR 
G_TOKEN_CHAR 
G_TOKEN_BINARY 
G_TOKEN_OCTAL 
G_TOKEN_INT 
G_TOKEN_HEX 
G_TOKEN_FLOAT 
G_TOKEN_STRING 
G_TOKEN_SYMBOL 
G_TOKEN_IDENTIFIER 
G_TOKEN_IDENTIFIER_NULL 
G_TOKEN_COMMENT_SINGLE 
G_TOKEN_COMMENT_MULTI 
G_TOKEN_LAST 

Definition at line 77 of file gscanner.h.

78{
79 G_TOKEN_EOF = 0,
80
88 G_TOKEN_COMMA = ',',
89
90 G_TOKEN_NONE = 256,
91
93
101
105
108
109 /*< private >*/
111} GTokenType;
GTokenType
Definition gscanner.h:78
@ G_TOKEN_EQUAL_SIGN
Definition gscanner.h:87
@ G_TOKEN_ERROR
Definition gscanner.h:92
@ G_TOKEN_COMMENT_SINGLE
Definition gscanner.h:106
@ G_TOKEN_INT
Definition gscanner.h:97
@ G_TOKEN_LEFT_CURLY
Definition gscanner.h:83
@ G_TOKEN_EOF
Definition gscanner.h:79
@ G_TOKEN_LEFT_PAREN
Definition gscanner.h:81
@ G_TOKEN_RIGHT_CURLY
Definition gscanner.h:84
@ G_TOKEN_COMMA
Definition gscanner.h:88
@ G_TOKEN_CHAR
Definition gscanner.h:94
@ G_TOKEN_IDENTIFIER
Definition gscanner.h:103
@ G_TOKEN_HEX
Definition gscanner.h:98
@ G_TOKEN_NONE
Definition gscanner.h:90
@ G_TOKEN_LEFT_BRACE
Definition gscanner.h:85
@ G_TOKEN_STRING
Definition gscanner.h:100
@ G_TOKEN_OCTAL
Definition gscanner.h:96
@ G_TOKEN_IDENTIFIER_NULL
Definition gscanner.h:104
@ G_TOKEN_RIGHT_PAREN
Definition gscanner.h:82
@ G_TOKEN_BINARY
Definition gscanner.h:95
@ G_TOKEN_RIGHT_BRACE
Definition gscanner.h:86
@ G_TOKEN_SYMBOL
Definition gscanner.h:102
@ G_TOKEN_LAST
Definition gscanner.h:110
@ G_TOKEN_COMMENT_MULTI
Definition gscanner.h:107
@ G_TOKEN_FLOAT
Definition gscanner.h:99

Function Documentation

◆ g_scanner_cur_line()

GLIB_AVAILABLE_IN_ALL guint g_scanner_cur_line ( GScanner * scanner)

◆ g_scanner_cur_position()

GLIB_AVAILABLE_IN_ALL guint g_scanner_cur_position ( GScanner * scanner)

◆ g_scanner_cur_token()

GLIB_AVAILABLE_IN_ALL GTokenType g_scanner_cur_token ( GScanner * scanner)

◆ g_scanner_cur_value()

GLIB_AVAILABLE_IN_ALL GTokenValue g_scanner_cur_value ( GScanner * scanner)

◆ g_scanner_destroy()

GLIB_AVAILABLE_IN_ALL void g_scanner_destroy ( GScanner * scanner)

◆ g_scanner_eof()

GLIB_AVAILABLE_IN_ALL gboolean g_scanner_eof ( GScanner * scanner)

◆ g_scanner_error()

GLIB_AVAILABLE_IN_ALL void g_scanner_error ( GScanner * scanner,
const gchar * format,
... )

◆ g_scanner_get_next_token()

GLIB_AVAILABLE_IN_ALL GTokenType g_scanner_get_next_token ( GScanner * scanner)

◆ g_scanner_input_file()

GLIB_AVAILABLE_IN_ALL void g_scanner_input_file ( GScanner * scanner,
gint input_fd )

◆ g_scanner_input_text()

GLIB_AVAILABLE_IN_ALL void g_scanner_input_text ( GScanner * scanner,
const gchar * text,
guint text_len )

◆ g_scanner_lookup_symbol()

GLIB_AVAILABLE_IN_ALL gpointer g_scanner_lookup_symbol ( GScanner * scanner,
const gchar * symbol )

◆ g_scanner_new()

GLIB_AVAILABLE_IN_ALL GScanner * g_scanner_new ( const GScannerConfig * config_templ)

◆ g_scanner_peek_next_token()

GLIB_AVAILABLE_IN_ALL GTokenType g_scanner_peek_next_token ( GScanner * scanner)

◆ g_scanner_scope_add_symbol()

GLIB_AVAILABLE_IN_ALL void g_scanner_scope_add_symbol ( GScanner * scanner,
guint scope_id,
const gchar * symbol,
gpointer value )

◆ g_scanner_scope_foreach_symbol()

GLIB_AVAILABLE_IN_ALL void g_scanner_scope_foreach_symbol ( GScanner * scanner,
guint scope_id,
GHFunc func,
gpointer user_data )

◆ g_scanner_scope_lookup_symbol()

GLIB_AVAILABLE_IN_ALL gpointer g_scanner_scope_lookup_symbol ( GScanner * scanner,
guint scope_id,
const gchar * symbol )

◆ g_scanner_scope_remove_symbol()

GLIB_AVAILABLE_IN_ALL void g_scanner_scope_remove_symbol ( GScanner * scanner,
guint scope_id,
const gchar * symbol )

◆ g_scanner_set_scope()

GLIB_AVAILABLE_IN_ALL guint g_scanner_set_scope ( GScanner * scanner,
guint scope_id )

◆ g_scanner_sync_file_offset()

GLIB_AVAILABLE_IN_ALL void g_scanner_sync_file_offset ( GScanner * scanner)

◆ g_scanner_unexp_token()

GLIB_AVAILABLE_IN_ALL void g_scanner_unexp_token ( GScanner * scanner,
GTokenType expected_token,
const gchar * identifier_spec,
const gchar * symbol_spec,
const gchar * symbol_name,
const gchar * message,
gint is_error )

◆ g_scanner_warn()

GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void g_scanner_warn ( GScanner * scanner,
const gchar * format,
... )