Github User Fetcher 1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
gstring.h File Reference
#include <glib/gtypes.h>
#include <glib/gunicode.h>
#include <glib/gbytes.h>
#include <glib/gstrfuncs.h>
#include <glib/gutils.h>
#include <string.h>

Go to the source code of this file.

Data Structures

struct  _GString
 

Macros

#define g_string_append_c(gstr, c)    g_string_append_c_inline (gstr, c)
 
#define g_string_append_len(gstr, val, len)    g_string_append_len_inline (gstr, val, len)
 
#define g_string_truncate(gstr, len)    g_string_truncate_inline (gstr, len)
 
#define g_string_sprintf   g_string_printf GLIB_DEPRECATED_MACRO_IN_2_26_FOR(g_string_printf)
 
#define g_string_sprintfa   g_string_append_printf GLIB_DEPRECATED_MACRO_IN_2_26_FOR(g_string_append_printf)
 

Typedefs

typedef typedefG_BEGIN_DECLS struct _GString GString
 

Functions

GLIB_AVAILABLE_IN_ALL GStringg_string_new (const gchar *init)
 
GLIB_AVAILABLE_IN_2_78 GStringg_string_new_take (gchar *init)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_new_len (const gchar *init, gssize len)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_sized_new (gsize dfl_size)
 
GLIB_AVAILABLE_IN_ALL gcharg_string_free (GString *string, gboolean free_segment)
 
GLIB_AVAILABLE_IN_2_76 gcharg_string_free_and_steal (GString *string) G_GNUC_WARN_UNUSED_RESULT
 
GLIB_AVAILABLE_IN_2_34 GBytesg_string_free_to_bytes (GString *string)
 
GLIB_AVAILABLE_IN_ALL gboolean g_string_equal (const GString *v, const GString *v2)
 
GLIB_AVAILABLE_IN_ALL guint g_string_hash (const GString *str)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_assign (GString *string, const gchar *rval)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_truncate (GString *string, gsize len)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_set_size (GString *string, gsize len)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_insert_len (GString *string, gssize pos, const gchar *val, gssize len)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_append (GString *string, const gchar *val)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_append_len (GString *string, const gchar *val, gssize len)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_append_c (GString *string, gchar c)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_append_unichar (GString *string, gunichar wc)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_prepend (GString *string, const gchar *val)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_prepend_c (GString *string, gchar c)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_prepend_unichar (GString *string, gunichar wc)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_prepend_len (GString *string, const gchar *val, gssize len)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_insert (GString *string, gssize pos, const gchar *val)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_insert_c (GString *string, gssize pos, gchar c)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_insert_unichar (GString *string, gssize pos, gunichar wc)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_overwrite (GString *string, gsize pos, const gchar *val)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_overwrite_len (GString *string, gsize pos, const gchar *val, gssize len)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_erase (GString *string, gssize pos, gssize len)
 
GLIB_AVAILABLE_IN_2_68 guint g_string_replace (GString *string, const gchar *find, const gchar *replace, guint limit)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_ascii_down (GString *string)
 
GLIB_AVAILABLE_IN_ALL GStringg_string_ascii_up (GString *string)
 
GLIB_AVAILABLE_IN_ALL void g_string_vprintf (GString *string, const gchar *format, va_list args) G_GNUC_PRINTF(2
 
GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void g_string_printf (GString *string, const gchar *format,...) G_GNUC_PRINTF(2
 
GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void g_string_append_vprintf (GString *string, const gchar *format, va_list args) G_GNUC_PRINTF(2
 
GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void g_string_append_printf (GString *string, const gchar *format,...) G_GNUC_PRINTF(2
 
GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL GStringg_string_append_uri_escaped (GString *string, const gchar *unescaped, const gchar *reserved_chars_allowed, gboolean allow_utf8)
 
static G_ALWAYS_INLINE GStringg_string_append_c_inline (GString *gstring, gchar c)
 
static G_ALWAYS_INLINE GStringg_string_append_len_inline (GString *gstring, const char *val, gssize len)
 
static G_ALWAYS_INLINE GStringg_string_truncate_inline (GString *gstring, gsize len)
 
GLIB_DEPRECATED GStringg_string_down (GString *string)
 
GLIB_DEPRECATED GStringg_string_up (GString *string)
 

Macro Definition Documentation

◆ g_string_append_c

#define g_string_append_c ( gstr,
c )    g_string_append_c_inline (gstr, c)

Definition at line 213 of file gstring.h.

213#define g_string_append_c(gstr,c) \
214 g_string_append_c_inline (gstr, c)

◆ g_string_append_len

#define g_string_append_len ( gstr,
val,
len )    g_string_append_len_inline (gstr, val, len)

Definition at line 250 of file gstring.h.

250#define g_string_append_len(gstr, val, len) \
251 g_string_append_len_inline (gstr, val, len)

Referenced by g_string_append_len_inline().

◆ g_string_sprintf

Definition at line 295 of file gstring.h.

◆ g_string_sprintfa

Definition at line 296 of file gstring.h.

◆ g_string_truncate

#define g_string_truncate ( gstr,
len )    g_string_truncate_inline (gstr, len)

Definition at line 263 of file gstring.h.

263#define g_string_truncate(gstr, len) \
264 g_string_truncate_inline (gstr, len)

Typedef Documentation

◆ GString

typedef typedefG_BEGIN_DECLS struct _GString GString

Definition at line 43 of file gstring.h.

Function Documentation

◆ g_string_append()

GLIB_AVAILABLE_IN_ALL GString * g_string_append ( GString * string,
const gchar * val )

◆ g_string_append_c()

GLIB_AVAILABLE_IN_ALL GString * g_string_append_c ( GString * string,
gchar c )

◆ g_string_append_c_inline()

static G_ALWAYS_INLINE GString * g_string_append_c_inline ( GString * gstring,
gchar c )
inlinestatic

Definition at line 199 of file gstring.h.

201{
202 if (G_LIKELY (gstring != NULL &&
203 gstring->len + 1 < gstring->allocated_len))
204 {
205 gstring->str[gstring->len++] = c;
206 gstring->str[gstring->len] = 0;
207 }
208 else
209 g_string_insert_c (gstring, -1, c);
210 return gstring;
211}
#define NULL
Definition gmacros.h:924
#define G_LIKELY(expr)
Definition gmacros.h:1251
GLIB_AVAILABLE_IN_ALL GString * g_string_insert_c(GString *string, gssize pos, gchar c)

References G_LIKELY, g_string_insert_c(), and NULL.

◆ g_string_append_len()

GLIB_AVAILABLE_IN_ALL GString * g_string_append_len ( GString * string,
const gchar * val,
gssize len )

◆ g_string_append_len_inline()

static G_ALWAYS_INLINE GString * g_string_append_len_inline ( GString * gstring,
const char * val,
gssize len )
inlinestatic

Definition at line 218 of file gstring.h.

221{
222 gsize len_unsigned;
223
224 if G_UNLIKELY (gstring == NULL)
225 return g_string_append_len (gstring, val, len);
226
227 if G_UNLIKELY (val == NULL)
228 return (len != 0) ? g_string_append_len (gstring, val, len) : gstring;
229
230 if (len < 0)
231 len_unsigned = strlen (val);
232 else
233 len_unsigned = (gsize) len;
234
235 if (G_LIKELY (gstring->len + len_unsigned < gstring->allocated_len))
236 {
237 char *end = gstring->str + gstring->len;
238 if (G_LIKELY (val + len_unsigned <= end || val > end + len_unsigned))
239 memcpy (end, val, len_unsigned);
240 else
241 memmove (end, val, len_unsigned);
242 gstring->len += len_unsigned;
243 gstring->str[gstring->len] = 0;
244 return gstring;
245 }
246 else
247 return g_string_insert_len (gstring, -1, val, len);
248}
unsigned long gsize
Definition glibconfig.h:83
#define G_UNLIKELY(expr)
Definition gmacros.h:1252
GLIB_AVAILABLE_IN_ALL GString * g_string_insert_len(GString *string, gssize pos, const gchar *val, gssize len)
#define g_string_append_len(gstr, val, len)
Definition gstring.h:250

References G_LIKELY, g_string_append_len, g_string_insert_len(), G_UNLIKELY, and NULL.

◆ g_string_append_printf()

GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void g_string_append_printf ( GString * string,
const gchar * format,
... )

◆ g_string_append_unichar()

GLIB_AVAILABLE_IN_ALL GString * g_string_append_unichar ( GString * string,
gunichar wc )

◆ g_string_append_uri_escaped()

GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL GString * g_string_append_uri_escaped ( GString * string,
const gchar * unescaped,
const gchar * reserved_chars_allowed,
gboolean allow_utf8 )

◆ g_string_append_vprintf()

GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void g_string_append_vprintf ( GString * string,
const gchar * format,
va_list args )

◆ g_string_ascii_down()

GLIB_AVAILABLE_IN_ALL GString * g_string_ascii_down ( GString * string)

◆ g_string_ascii_up()

GLIB_AVAILABLE_IN_ALL GString * g_string_ascii_up ( GString * string)

◆ g_string_assign()

GLIB_AVAILABLE_IN_ALL GString * g_string_assign ( GString * string,
const gchar * rval )

◆ g_string_down()

GLIB_DEPRECATED GString * g_string_down ( GString * string)

◆ g_string_equal()

GLIB_AVAILABLE_IN_ALL gboolean g_string_equal ( const GString * v,
const GString * v2 )

◆ g_string_erase()

GLIB_AVAILABLE_IN_ALL GString * g_string_erase ( GString * string,
gssize pos,
gssize len )

◆ g_string_free()

GLIB_AVAILABLE_IN_ALL gchar * g_string_free ( GString * string,
gboolean free_segment )

◆ g_string_free_and_steal()

GLIB_AVAILABLE_IN_2_76 gchar * g_string_free_and_steal ( GString * string)

◆ g_string_free_to_bytes()

GLIB_AVAILABLE_IN_2_34 GBytes * g_string_free_to_bytes ( GString * string)

◆ g_string_hash()

GLIB_AVAILABLE_IN_ALL guint g_string_hash ( const GString * str)

◆ g_string_insert()

GLIB_AVAILABLE_IN_ALL GString * g_string_insert ( GString * string,
gssize pos,
const gchar * val )

◆ g_string_insert_c()

GLIB_AVAILABLE_IN_ALL GString * g_string_insert_c ( GString * string,
gssize pos,
gchar c )

◆ g_string_insert_len()

GLIB_AVAILABLE_IN_ALL GString * g_string_insert_len ( GString * string,
gssize pos,
const gchar * val,
gssize len )

◆ g_string_insert_unichar()

GLIB_AVAILABLE_IN_ALL GString * g_string_insert_unichar ( GString * string,
gssize pos,
gunichar wc )

◆ g_string_new()

GLIB_AVAILABLE_IN_ALL GString * g_string_new ( const gchar * init)

◆ g_string_new_len()

GLIB_AVAILABLE_IN_ALL GString * g_string_new_len ( const gchar * init,
gssize len )

◆ g_string_new_take()

GLIB_AVAILABLE_IN_2_78 GString * g_string_new_take ( gchar * init)

◆ g_string_overwrite()

GLIB_AVAILABLE_IN_ALL GString * g_string_overwrite ( GString * string,
gsize pos,
const gchar * val )

◆ g_string_overwrite_len()

GLIB_AVAILABLE_IN_ALL GString * g_string_overwrite_len ( GString * string,
gsize pos,
const gchar * val,
gssize len )

◆ g_string_prepend()

GLIB_AVAILABLE_IN_ALL GString * g_string_prepend ( GString * string,
const gchar * val )

◆ g_string_prepend_c()

GLIB_AVAILABLE_IN_ALL GString * g_string_prepend_c ( GString * string,
gchar c )

◆ g_string_prepend_len()

GLIB_AVAILABLE_IN_ALL GString * g_string_prepend_len ( GString * string,
const gchar * val,
gssize len )

◆ g_string_prepend_unichar()

GLIB_AVAILABLE_IN_ALL GString * g_string_prepend_unichar ( GString * string,
gunichar wc )

◆ g_string_printf()

GLIB_AVAILABLE_IN_ALL void GLIB_AVAILABLE_IN_ALL void g_string_printf ( GString * string,
const gchar * format,
... )

◆ g_string_replace()

GLIB_AVAILABLE_IN_2_68 guint g_string_replace ( GString * string,
const gchar * find,
const gchar * replace,
guint limit )

◆ g_string_set_size()

GLIB_AVAILABLE_IN_ALL GString * g_string_set_size ( GString * string,
gsize len )

◆ g_string_sized_new()

GLIB_AVAILABLE_IN_ALL GString * g_string_sized_new ( gsize dfl_size)

◆ g_string_truncate()

GLIB_AVAILABLE_IN_ALL GString * g_string_truncate ( GString * string,
gsize len )

◆ g_string_truncate_inline()

static G_ALWAYS_INLINE GString * g_string_truncate_inline ( GString * gstring,
gsize len )
inlinestatic

Definition at line 255 of file gstring.h.

257{
258 gstring->len = MIN (len, gstring->len);
259 gstring->str[gstring->len] = '\0';
260 return gstring;
261}
#define MIN(A, B)
Definition sqlite3.c:14263

References MIN.

◆ g_string_up()

GLIB_DEPRECATED GString * g_string_up ( GString * string)

◆ g_string_vprintf()

GLIB_AVAILABLE_IN_ALL void g_string_vprintf ( GString * string,
const gchar * format,
va_list args )