В glib существуют два разных типа деревьев; GTree -- это основное сбалансированное двоичное дерево, подходящее для хранения пар ключ-значение, отсортированных по ключу; GNode хранит произвольные структурированные в дерево данные, такие как дерево синтаксического разбора или таксономию.