GTraverseType

Specifies the type of traversal performed by glib.tree.Tree.traverse, glib.node.Node.traverse and glib.node.Node.find. The different orders are illustrated here:

  • In order: A, B, C, D, E, F, G, H, I
  • Pre order: F, B, A, D, C, E, G, I, H
  • Post order: A, C, E, D, B, H, I, G, F
  • Level order: F, B, G, A, D, I, C, E, H

Values

ValueMeaning
InOrder0

vists a node's left child first, then the node itself, then its right child. This is the one to use if you want the output sorted according to the compare function.

PreOrder1

visits a node, then its children.

PostOrder2

visits the node's children, then the node itself.

LevelOrder3

is not implemented for [balanced binary trees][glib-Balanced-Binary-Trees]. For [n-ary trees][glib-N-ary-Trees], it vists the root node first, then its children, then its grandchildren, and so on. Note that this is less efficient than the other orders.