GLib.StringChunk

Fields

None

Methods

clear ()

free ()

insert (string)

insert_const (string)

insert_len (string, len)

Details

class GLib.StringChunk

An opaque data structure representing String Chunks. It should only be accessed by using the following functions.

clear()[source]

Frees all strings contained within the GLib.StringChunk. After calling GLib.StringChunk.clear() it is not safe to access any of the strings which were contained within it.

New in version 2.14.

free()[source]

Frees all memory allocated by the GLib.StringChunk. After calling GLib.StringChunk.free() it is not safe to access any of the strings which were contained within it.

insert(string)[source]
Parameters:

string (str) – the string to add

Returns:

a pointer to the copy of string within the GLib.StringChunk

Return type:

str

Adds a copy of string to the GLib.StringChunk. It returns a pointer to the new copy of the string in the GLib.StringChunk. The characters in the string can be changed, if necessary, though you should not change anything after the end of the string.

Unlike GLib.StringChunk.insert_const(), this function does not check for duplicates. Also strings added with GLib.StringChunk.insert() will not be searched by GLib.StringChunk.insert_const() when looking for duplicates.

insert_const(string)[source]
Parameters:

string (str) – the string to add

Returns:

a pointer to the new or existing copy of string within the GLib.StringChunk

Return type:

str

Adds a copy of string to the GLib.StringChunk, unless the same string has already been added to the GLib.StringChunk with GLib.StringChunk.insert_const().

This function is useful if you need to copy a large number of strings but do not want to waste space storing duplicates. But you must remember that there may be several pointers to the same string, and so any changes made to the strings should be done very carefully.

Note that GLib.StringChunk.insert_const() will not return a pointer to a string added with GLib.StringChunk.insert(), even if they do match.

insert_len(string, len)[source]
Parameters:
  • string (str) – bytes to insert

  • len (int) – number of bytes of string to insert, or -1 to insert a nul-terminated string

Returns:

a pointer to the copy of string within the GLib.StringChunk

Return type:

str

Adds a copy of the first len bytes of string to the GLib.StringChunk. The copy is nul-terminated.

Since this function does not stop at nul bytes, it is the caller’s responsibility to ensure that string has at least len addressable bytes.

The characters in the returned string can be changed, if necessary, though you should not change anything after the end of the string.

New in version 2.4.