void tpreorder (struct tnode *tree,
                void visitor (int))
{
  if (tree) {
    visitor (tree->content);
    tpreorder (tree->left);
    tpreorder (tree->right);
  }
}