sig
  external copy : Gtk.text_iter -> Gtk.text_iter = "ml_gtk_text_iter_copy"
  external get_buffer : Gtk.text_iter -> Gtk.text_buffer
    = "ml_gtk_text_iter_get_buffer"
  external get_offset : Gtk.text_iter -> int = "ml_gtk_text_iter_get_offset"
  external get_line : Gtk.text_iter -> int = "ml_gtk_text_iter_get_line"
  external get_line_offset : Gtk.text_iter -> int
    = "ml_gtk_text_iter_get_line_offset"
  external get_line_index : Gtk.text_iter -> int
    = "ml_gtk_text_iter_get_line_index"
  external get_visible_line_index : Gtk.text_iter -> int
    = "ml_gtk_text_iter_get_visible_line_index"
  external get_visible_line_offset : Gtk.text_iter -> int
    = "ml_gtk_text_iter_get_visible_line_offset"
  external get_char : Gtk.text_iter -> Glib.unichar
    = "ml_gtk_text_iter_get_char"
  external get_slice : Gtk.text_iter -> Gtk.text_iter -> string
    = "ml_gtk_text_iter_get_slice"
  external get_text : Gtk.text_iter -> Gtk.text_iter -> string
    = "ml_gtk_text_iter_get_text"
  external get_visible_slice : Gtk.text_iter -> Gtk.text_iter -> string
    = "ml_gtk_text_iter_get_visible_slice"
  external get_visible_text : Gtk.text_iter -> Gtk.text_iter -> string
    = "ml_gtk_text_iter_get_visible_text"
  external get_pixbuf : Gtk.text_iter -> GdkPixbuf.pixbuf option
    = "ml_gtk_text_iter_get_pixbuf"
  external get_marks : Gtk.text_iter -> Gtk.text_mark list
    = "ml_gtk_text_iter_get_marks"
  external get_toggled_tags : Gtk.text_iter -> bool -> Gtk.text_tag list
    = "ml_gtk_text_iter_get_toggled_tags"
  external get_child_anchor : Gtk.text_iter -> Gtk.text_child_anchor option
    = "ml_gtk_text_iter_get_child_anchor"
  external begins_tag : Gtk.text_iter -> Gtk.text_tag option -> bool
    = "ml_gtk_text_iter_begins_tag"
  external ends_tag : Gtk.text_iter -> Gtk.text_tag option -> bool
    = "ml_gtk_text_iter_ends_tag"
  external toggles_tag : Gtk.text_iter -> Gtk.text_tag option -> bool
    = "ml_gtk_text_iter_toggles_tag"
  external has_tag : Gtk.text_iter -> Gtk.text_tag -> bool
    = "ml_gtk_text_iter_has_tag"
  external get_tags : Gtk.text_iter -> Gtk.text_tag list
    = "ml_gtk_text_iter_get_tags"
  external editable : Gtk.text_iter -> default:bool -> bool
    = "ml_gtk_text_iter_editable"
  external can_insert : Gtk.text_iter -> default:bool -> bool
    = "ml_gtk_text_iter_can_insert"
  external starts_word : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_starts_word"
  external ends_word : Gtk.text_iter -> bool = "ml_gtk_text_iter_ends_word"
  external inside_word : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_inside_word"
  external starts_line : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_starts_line"
  external ends_line : Gtk.text_iter -> bool = "ml_gtk_text_iter_ends_line"
  external starts_sentence : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_starts_sentence"
  external ends_sentence : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_ends_sentence"
  external inside_sentence : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_inside_sentence"
  external is_cursor_position : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_is_cursor_position"
  external get_chars_in_line : Gtk.text_iter -> int
    = "ml_gtk_text_iter_get_chars_in_line"
  external get_bytes_in_line : Gtk.text_iter -> int
    = "ml_gtk_text_iter_get_bytes_in_line"
  external get_language : Gtk.text_iter -> Pango.language
    = "ml_gtk_text_iter_get_language"
  external is_end : Gtk.text_iter -> bool = "ml_gtk_text_iter_is_end"
  external is_start : Gtk.text_iter -> bool = "ml_gtk_text_iter_is_start"
  external forward_char : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_forward_char"
  external backward_char : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_backward_char"
  external forward_chars : Gtk.text_iter -> int -> bool
    = "ml_gtk_text_iter_forward_chars"
  external backward_chars : Gtk.text_iter -> int -> bool
    = "ml_gtk_text_iter_backward_chars"
  external forward_line : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_forward_line"
  external backward_line : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_backward_line"
  external forward_lines : Gtk.text_iter -> int -> bool
    = "ml_gtk_text_iter_forward_lines"
  external backward_lines : Gtk.text_iter -> int -> bool
    = "ml_gtk_text_iter_backward_lines"
  external forward_word_end : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_forward_word_end"
  external forward_word_ends : Gtk.text_iter -> int -> bool
    = "ml_gtk_text_iter_forward_word_ends"
  external backward_word_start : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_backward_word_start"
  external backward_word_starts : Gtk.text_iter -> int -> bool
    = "ml_gtk_text_iter_backward_word_starts"
  external forward_cursor_position : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_forward_cursor_position"
  external backward_cursor_position : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_backward_cursor_position"
  external forward_cursor_positions : Gtk.text_iter -> int -> bool
    = "ml_gtk_text_iter_forward_cursor_positions"
  external backward_cursor_positions : Gtk.text_iter -> int -> bool
    = "ml_gtk_text_iter_backward_cursor_positions"
  external forward_sentence_end : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_forward_sentence_end"
  external backward_sentence_start : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_backward_sentence_start"
  external forward_sentence_ends : Gtk.text_iter -> int -> bool
    = "ml_gtk_text_iter_forward_sentence_ends"
  external backward_sentence_starts : Gtk.text_iter -> int -> bool
    = "ml_gtk_text_iter_backward_sentence_starts"
  external set_offset : Gtk.text_iter -> int -> unit
    = "ml_gtk_text_iter_set_offset"
  external set_line : Gtk.text_iter -> int -> unit
    = "ml_gtk_text_iter_set_line"
  external set_line_offset : Gtk.text_iter -> int -> unit
    = "ml_gtk_text_iter_set_line_offset"
  external set_line_index : Gtk.text_iter -> int -> unit
    = "ml_gtk_text_iter_set_line_index"
  external set_visible_line_index : Gtk.text_iter -> int -> unit
    = "ml_gtk_text_iter_set_visible_line_index"
  external set_visible_line_offset : Gtk.text_iter -> int -> unit
    = "ml_gtk_text_iter_set_visible_line_offset"
  external forward_to_end : Gtk.text_iter -> unit
    = "ml_gtk_text_iter_forward_to_end"
  external forward_to_line_end : Gtk.text_iter -> bool
    = "ml_gtk_text_iter_forward_to_line_end"
  external forward_to_tag_toggle :
    Gtk.text_iter -> Gtk.text_tag option -> bool
    = "ml_gtk_text_iter_forward_to_tag_toggle"
  external backward_to_tag_toggle :
    Gtk.text_iter -> Gtk.text_tag option -> bool
    = "ml_gtk_text_iter_backward_to_tag_toggle"
  external equal : Gtk.text_iter -> Gtk.text_iter -> bool
    = "ml_gtk_text_iter_equal"
  external compare : Gtk.text_iter -> Gtk.text_iter -> int
    = "ml_gtk_text_iter_compare"
  external in_range : Gtk.text_iter -> Gtk.text_iter -> Gtk.text_iter -> bool
    = "ml_gtk_text_iter_in_range"
  external order : Gtk.text_iter -> Gtk.text_iter -> unit
    = "ml_gtk_text_iter_order"
  external forward_search :
    Gtk.text_iter ->
    string ->
    ?flags:Gtk.Tags.text_search_flag list ->
    Gtk.text_iter option -> (Gtk.text_iter * Gtk.text_iter) option
    = "ml_gtk_text_iter_forward_search"
  external backward_search :
    Gtk.text_iter ->
    string ->
    ?flags:Gtk.Tags.text_search_flag list ->
    Gtk.text_iter option -> (Gtk.text_iter * Gtk.text_iter) option
    = "ml_gtk_text_iter_backward_search"
  external forward_find_char :
    Gtk.text_iter -> (Glib.unichar -> bool) -> Gtk.text_iter option -> bool
    = "ml_gtk_text_iter_forward_find_char"
  external backward_find_char :
    Gtk.text_iter -> (Glib.unichar -> bool) -> Gtk.text_iter option -> bool
    = "ml_gtk_text_iter_backward_find_char"
end