Struct
GLibRelation
deprecated: 2.26
Description [src]
struct GRelation {
/* No available fields */
}
A GRelation
is a table of data which can be indexed on any number
of fields, rather like simple database tables. A GRelation
contains
a number of records, called tuples. Each record contains a number of
fields. Records are not ordered, so it is not possible to find the
record at a particular index.
Note that GRelation
tables are currently limited to 2 fields.
To create a GRelation
, use g_relation_new()
.
To specify which fields should be indexed, use g_relation_index()
.
Note that this must be called before any tuples are added to the
GRelation
.
To add records to a GRelation
use g_relation_insert()
.
To determine if a given record appears in a GRelation
, use
g_relation_exists()
. Note that fields are compared directly, so
pointers must point to the exact same position (i.e. different
copies of the same string will not match.)
To count the number of records which have a particular value in a
given field, use g_relation_count()
.
To get all the records which have a particular value in a given
field, use g_relation_select()
. To access fields of the resulting
records, use g_tuples_index()
. To free the resulting records use
g_tuples_destroy()
.
To delete all records which have a particular value in a given
field, use g_relation_delete()
.
To destroy the GRelation
, use g_relation_destroy()
.
To help debug GRelation
objects, use g_relation_print()
.
GRelation
has been marked as deprecated, since this API has never
been fully implemented, is not very actively maintained and rarely used.
Deprecated since: 2.26.
Rarely used API.
Functions
g_relation_new
Creates a new GRelation
with the given number of fields. Note that
currently the number of fields must be 2.
deprecated: 2.26
Instance methods
g_relation_count
Returns the number of tuples in a GRelation
that have the given
value in the given field.
deprecated: 2.26
g_relation_delete
Deletes any records from a GRelation
that have the given key value
in the given field.
deprecated: 2.26
g_relation_destroy
Destroys the GRelation
, freeing all memory allocated. However, it
does not free memory allocated for the tuple data, so you should
free that first if appropriate.
deprecated: 2.26
g_relation_exists
Returns TRUE
if a record with the given values exists in a
GRelation
. Note that the values are compared directly, so that, for
example, two copies of the same string will not match.
deprecated: 2.26
g_relation_index
Creates an index on the given field. Note that this must be called
before any records are added to the GRelation
.
deprecated: 2.26
g_relation_print
Outputs information about all records in a GRelation
, as well as
the indexes. It is for debugging.
deprecated: 2.26
g_relation_select
Returns all of the tuples which have the given key in the given
field. Use g_tuples_index()
to access the returned records. The
returned records should be freed with g_tuples_destroy().
deprecated: 2.26