sig
  val cast :
    'Gobject.obj ->
    GtkSourceView2_types.source_completion_context Gobject.obj
  module P :
    sig
      val completion :
        ([> `sourcecompletioncontext ],
         GtkSourceView2_types.source_completion Gobject.obj)
        Gobject.property
      val iter :
        ([> `sourcecompletioncontext ], Gtk.text_iter) Gobject.property
    end
  module S :
    sig
      val cancelled :
        ([> `sourcecompletioncontext ], unit -> unit) GtkSignal.t
    end
  val create :
    ?completion:GtkSourceView2_types.source_completion Gobject.obj ->
    GtkSourceView2_types.source_completion_context Gobject.param list ->
    GtkSourceView2_types.source_completion_context Gobject.obj
  external get_activation :
    [> `sourcecompletioncontext ] Gobject.obj ->
    SourceView2Enums.source_completion_activation_flags list
    = "ml_gtk_source_completion_context_get_activation"
  external set_activation :
    [> `sourcecompletioncontext ] Gobject.obj ->
    SourceView2Enums.source_completion_activation_flags list -> unit
    = "ml_gtk_source_completion_context_set_activation"
  external add_proposals :
    [> `sourcecompletioncontext ] Gobject.obj ->
    GtkSourceView2_types.source_completion_provider Gobject.obj ->
    GtkSourceView2_types.source_completion_proposal Gobject.obj list ->
    bool -> unit = "ml_gtk_source_completion_context_add_proposals"
end