Class Relation

java.lang.Object
All Implemented Interfaces:
Proxy

@Generated("io.github.jwharm.JavaGI") @Deprecated public class Relation extends ProxyInstance
Deprecated.
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 new_(int).

To specify which fields should be indexed, use index(int, org.gnome.glib.HashFunc, org.gnome.glib.EqualFunc). Note that this must be called before any tuples are added to the GRelation.

To add records to a GRelation use insert(java.lang.Object...).

To determine if a given record appears in a GRelation, use exists(java.lang.Object...). 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 count(java.lang.foreign.MemorySegment, int).

To get all the records which have a particular value in a given field, use select(java.lang.foreign.MemorySegment, int). To access fields of the resulting records, use Tuples.index(int, int). To free the resulting records use Tuples.destroy().

To delete all records which have a particular value in a given field, use delete(java.lang.foreign.MemorySegment, int).

To destroy the GRelation, use destroy().

To help debug GRelation objects, use print().

GRelation has been marked as deprecated, since this API has never been fully implemented, is not very actively maintained and rarely used.