mirror of
https://gitlab.gnome.org/GNOME/gimp.git
synced 2025-07-03 17:33:25 +00:00
libgimpconfig: add gimp_scanner_parse_int64()
This commit is contained in:
parent
7ff7fa84b6
commit
3cc53dab0b
3 changed files with 38 additions and 0 deletions
|
@ -60,6 +60,7 @@ EXPORTS
|
|||
gimp_scanner_parse_float
|
||||
gimp_scanner_parse_identifier
|
||||
gimp_scanner_parse_int
|
||||
gimp_scanner_parse_int64
|
||||
gimp_scanner_parse_matrix2
|
||||
gimp_scanner_parse_string
|
||||
gimp_scanner_parse_string_no_validate
|
||||
|
|
|
@ -371,6 +371,41 @@ gimp_scanner_parse_int (GScanner *scanner,
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_scanner_parse_int64:
|
||||
* @scanner: A #GScanner created by gimp_scanner_new_file() or
|
||||
* gimp_scanner_new_string()
|
||||
* @dest: Return location for the parsed integer
|
||||
*
|
||||
* Return value: %TRUE on success
|
||||
*
|
||||
* Since: GIMP 2.8
|
||||
**/
|
||||
gboolean
|
||||
gimp_scanner_parse_int64 (GScanner *scanner,
|
||||
gint64 *dest)
|
||||
{
|
||||
gboolean negate = FALSE;
|
||||
|
||||
if (g_scanner_peek_next_token (scanner) == '-')
|
||||
{
|
||||
negate = TRUE;
|
||||
g_scanner_get_next_token (scanner);
|
||||
}
|
||||
|
||||
if (g_scanner_peek_next_token (scanner) != G_TOKEN_INT)
|
||||
return FALSE;
|
||||
|
||||
g_scanner_get_next_token (scanner);
|
||||
|
||||
if (negate)
|
||||
*dest = -scanner->value.v_int64;
|
||||
else
|
||||
*dest = scanner->value.v_int64;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_scanner_parse_float:
|
||||
* @scanner: A #GScanner created by gimp_scanner_new_file() or
|
||||
|
|
|
@ -48,6 +48,8 @@ gboolean gimp_scanner_parse_data (GScanner *scanner,
|
|||
guint8 **dest);
|
||||
gboolean gimp_scanner_parse_int (GScanner *scanner,
|
||||
gint *dest);
|
||||
gboolean gimp_scanner_parse_int64 (GScanner *scanner,
|
||||
gint64 *dest);
|
||||
gboolean gimp_scanner_parse_float (GScanner *scanner,
|
||||
gdouble *dest);
|
||||
gboolean gimp_scanner_parse_boolean (GScanner *scanner,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue