![]() |
![]() |
![]() |
exo Reference Manual | ![]() |
---|---|---|---|---|
Top | Description |
#include <exo/exo.h> gchar * exo_str_elide_underscores (const gchar *text); gboolean exo_str_is_equal (const gchar *a, const gchar *b); gchar * exo_str_replace (const gchar *str, const gchar *pattern, const gchar *replacement); gchar * exo_strdup_strftime (const gchar *format, const struct tm *tm); gchar ** exo_strndupv (gchar **strv, gint num); const gchar * exo_intern_string (const gchar *string); const gchar * exo_intern_static_string (const gchar *string); #define I_ (string)
gchar * exo_str_elide_underscores (const gchar *text);
Returns a copy of text
with all mnemonic underscores
stripped off.
|
A zero terminated string. |
Returns : |
A copy of text without underscores. The
returned string must be freed when no
longer required.
|
gboolean exo_str_is_equal (const gchar *a, const gchar *b);
NULL
-safe string comparison. Returns TRUE
if both a
and b
are
NULL
or if a
and b
refer to valid strings which are equal.
You should always prefer this function over strcmp()
.
|
A pointer to first string or NULL .
|
|
A pointer to second string or NULL .
|
Returns : |
TRUE if a equals b , else FALSE .
|
gchar * exo_str_replace (const gchar *str, const gchar *pattern, const gchar *replacement);
Searches str
for occurances of pattern
and replaces each
such occurance with replacement
. Returns a newly allocated
copy of str
on which the given replacement were performed.
The caller is responsible to free the returned string using
g_free()
when no longer needed.
Note that pattern
and replacement
don't need to be of the
same size.
|
the input string. |
|
a search pattern in str .
|
|
replacement string for pattern .
|
Returns : |
a newly allocated copy of str where all
occurances of pattern are replaced with
replacement .
|
Since 0.3.1.1
gchar * exo_strdup_strftime (const gchar *format, const struct tm *tm);
Cover for standard date-and-time-formatting routine strftime that returns
a newly-allocated string of the correct size. The caller is responsible
to free the returned string using g_free()
when no longer needed.
Besides the buffer management, there are two differences between this and the library strftime:
The modifiers "-" and "_" between a "%" and a numeric directive are defined as for the GNU version of strftime. "-" means "do not pad the field" and "_" means "pad with spaces instead of zeroes".
Non-ANSI extensions to strftime are flagged at runtime with a warning, so it's easy to notice use of the extensions without testing with multiple versions of the library.
|
format string to pass to strftime(3). See the strftime(3) documentation for details. |
|
date/time, in struct tm format. |
Returns : |
a newly allocated string containing the formatted date/time. |
Since 0.3.3
gchar ** exo_strndupv (gchar **strv, gint num);
Creates a new string vector containing the
first n
elements of strv
.
|
String vector to duplicate. |
|
Number of strings in strv to
duplicate.
|
Returns : |
The new string vector. Should be
freed using g_strfreev() when no
longer needed.
|
const gchar * exo_intern_string (const gchar *string);
Returns a canonical representation for string
. Interned strings can
be compared for equality by comparing the pointers, instead of using strcmp()
or exo_str_is_equal()
. exo_intern_string()
takes a copy of the string
for its
internal usage, so string
does not need to be static.
|
a string |
Returns : |
a canonical representation for the string |
Since 0.3.1.1
const gchar * exo_intern_static_string (const gchar *string);
Returns a canonical representation for string
. Interned strings can
be compared for equality by comparing the pointers, instead of using strcmp()
or exo_str_is_equal()
. exo_intern_static_string()
does not copy the string,
therefore string
must not be freed or modified.
|
a static string |
Returns : |
a canonical representation for the string |
Since 0.3.1.1
#define I_(string)
Shortcut for exo_intern_static_string()
.
|
a static string. |
Since 0.3.1.1