`sig
external create_ : unit -> Gtk.tree_path = "ml_gtk_tree_path_new"
external from_string : string -> Gtk.tree_path
= "ml_gtk_tree_path_new_from_string"
external to_string : Gtk.tree_path -> string = "ml_gtk_tree_path_to_string"
external append_index : Gtk.tree_path -> int -> unit
= "ml_gtk_tree_path_append_index"
val create : int list -> Gtk.tree_path
external prepend_index : Gtk.tree_path -> int -> unit
= "ml_gtk_tree_path_prepend_index"
external get_depth : Gtk.tree_path -> int = "ml_gtk_tree_path_get_depth"
external get_indices : Gtk.tree_path -> int array
= "ml_gtk_tree_path_get_indices"
external copy : Gtk.tree_path -> Gtk.tree_path = "ml_gtk_tree_path_copy"
external next : Gtk.tree_path -> unit = "ml_gtk_tree_path_next"
external prev : Gtk.tree_path -> bool = "ml_gtk_tree_path_prev"
external up : Gtk.tree_path -> bool = "ml_gtk_tree_path_up"
external down : Gtk.tree_path -> unit = "ml_gtk_tree_path_down"
external is_ancestor : Gtk.tree_path -> Gtk.tree_path -> bool
= "ml_gtk_tree_path_is_ancestor"
end`