sourceview5_sys/
lib.rs

1// Generated by gir (https://github.com/gtk-rs/gir @ b3d444a058cf)
2// from
3// from gir-files (https://github.com/gtk-rs/gir-files.git @ 5c1e490fe50a)
4// DO NOT EDIT
5
6#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
7#![allow(
8    clippy::approx_constant,
9    clippy::type_complexity,
10    clippy::unreadable_literal,
11    clippy::upper_case_acronyms
12)]
13#![cfg_attr(docsrs, feature(doc_cfg))]
14
15use gdk_pixbuf_sys as gdk_pixbuf;
16use gdk_sys as gdk;
17use gio_sys as gio;
18use glib_sys as glib;
19use gobject_sys as gobject;
20use gtk_sys as gtk;
21use pango_sys as pango;
22
23#[cfg(unix)]
24#[allow(unused_imports)]
25use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
26#[allow(unused_imports)]
27use libc::{intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t, FILE};
28#[allow(unused_imports)]
29use std::ffi::{
30    c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
31};
32
33#[allow(unused_imports)]
34use glib::{gboolean, gconstpointer, gpointer, GType};
35
36// Enums
37pub type GtkSourceAnnotationStyle = c_int;
38pub const GTK_SOURCE_ANNOTATION_STYLE_NONE: GtkSourceAnnotationStyle = 0;
39pub const GTK_SOURCE_ANNOTATION_STYLE_WARNING: GtkSourceAnnotationStyle = 1;
40pub const GTK_SOURCE_ANNOTATION_STYLE_ERROR: GtkSourceAnnotationStyle = 2;
41pub const GTK_SOURCE_ANNOTATION_STYLE_ACCENT: GtkSourceAnnotationStyle = 3;
42
43pub type GtkSourceBackgroundPatternType = c_int;
44pub const GTK_SOURCE_BACKGROUND_PATTERN_TYPE_NONE: GtkSourceBackgroundPatternType = 0;
45pub const GTK_SOURCE_BACKGROUND_PATTERN_TYPE_GRID: GtkSourceBackgroundPatternType = 1;
46
47pub type GtkSourceBracketMatchType = c_int;
48pub const GTK_SOURCE_BRACKET_MATCH_NONE: GtkSourceBracketMatchType = 0;
49pub const GTK_SOURCE_BRACKET_MATCH_OUT_OF_RANGE: GtkSourceBracketMatchType = 1;
50pub const GTK_SOURCE_BRACKET_MATCH_NOT_FOUND: GtkSourceBracketMatchType = 2;
51pub const GTK_SOURCE_BRACKET_MATCH_FOUND: GtkSourceBracketMatchType = 3;
52
53pub type GtkSourceChangeCaseType = c_int;
54pub const GTK_SOURCE_CHANGE_CASE_LOWER: GtkSourceChangeCaseType = 0;
55pub const GTK_SOURCE_CHANGE_CASE_UPPER: GtkSourceChangeCaseType = 1;
56pub const GTK_SOURCE_CHANGE_CASE_TOGGLE: GtkSourceChangeCaseType = 2;
57pub const GTK_SOURCE_CHANGE_CASE_TITLE: GtkSourceChangeCaseType = 3;
58
59pub type GtkSourceCompletionActivation = c_int;
60pub const GTK_SOURCE_COMPLETION_ACTIVATION_NONE: GtkSourceCompletionActivation = 0;
61pub const GTK_SOURCE_COMPLETION_ACTIVATION_INTERACTIVE: GtkSourceCompletionActivation = 1;
62pub const GTK_SOURCE_COMPLETION_ACTIVATION_USER_REQUESTED: GtkSourceCompletionActivation = 2;
63
64pub type GtkSourceCompletionColumn = c_int;
65pub const GTK_SOURCE_COMPLETION_COLUMN_ICON: GtkSourceCompletionColumn = 0;
66pub const GTK_SOURCE_COMPLETION_COLUMN_BEFORE: GtkSourceCompletionColumn = 1;
67pub const GTK_SOURCE_COMPLETION_COLUMN_TYPED_TEXT: GtkSourceCompletionColumn = 2;
68pub const GTK_SOURCE_COMPLETION_COLUMN_AFTER: GtkSourceCompletionColumn = 3;
69pub const GTK_SOURCE_COMPLETION_COLUMN_COMMENT: GtkSourceCompletionColumn = 4;
70pub const GTK_SOURCE_COMPLETION_COLUMN_DETAILS: GtkSourceCompletionColumn = 5;
71
72pub type GtkSourceCompressionType = c_int;
73pub const GTK_SOURCE_COMPRESSION_TYPE_NONE: GtkSourceCompressionType = 0;
74pub const GTK_SOURCE_COMPRESSION_TYPE_GZIP: GtkSourceCompressionType = 1;
75
76pub type GtkSourceFileLoaderError = c_int;
77pub const GTK_SOURCE_FILE_LOADER_ERROR_TOO_BIG: GtkSourceFileLoaderError = 0;
78pub const GTK_SOURCE_FILE_LOADER_ERROR_ENCODING_AUTO_DETECTION_FAILED: GtkSourceFileLoaderError = 1;
79pub const GTK_SOURCE_FILE_LOADER_ERROR_CONVERSION_FALLBACK: GtkSourceFileLoaderError = 2;
80
81pub type GtkSourceFileSaverError = c_int;
82pub const GTK_SOURCE_FILE_SAVER_ERROR_INVALID_CHARS: GtkSourceFileSaverError = 0;
83pub const GTK_SOURCE_FILE_SAVER_ERROR_EXTERNALLY_MODIFIED: GtkSourceFileSaverError = 1;
84
85pub type GtkSourceGutterRendererAlignmentMode = c_int;
86pub const GTK_SOURCE_GUTTER_RENDERER_ALIGNMENT_MODE_CELL: GtkSourceGutterRendererAlignmentMode = 0;
87pub const GTK_SOURCE_GUTTER_RENDERER_ALIGNMENT_MODE_FIRST: GtkSourceGutterRendererAlignmentMode = 1;
88pub const GTK_SOURCE_GUTTER_RENDERER_ALIGNMENT_MODE_LAST: GtkSourceGutterRendererAlignmentMode = 2;
89
90pub type GtkSourceNewlineType = c_int;
91pub const GTK_SOURCE_NEWLINE_TYPE_LF: GtkSourceNewlineType = 0;
92pub const GTK_SOURCE_NEWLINE_TYPE_CR: GtkSourceNewlineType = 1;
93pub const GTK_SOURCE_NEWLINE_TYPE_CR_LF: GtkSourceNewlineType = 2;
94
95pub type GtkSourceSmartHomeEndType = c_int;
96pub const GTK_SOURCE_SMART_HOME_END_DISABLED: GtkSourceSmartHomeEndType = 0;
97pub const GTK_SOURCE_SMART_HOME_END_BEFORE: GtkSourceSmartHomeEndType = 1;
98pub const GTK_SOURCE_SMART_HOME_END_AFTER: GtkSourceSmartHomeEndType = 2;
99pub const GTK_SOURCE_SMART_HOME_END_ALWAYS: GtkSourceSmartHomeEndType = 3;
100
101pub type GtkSourceViewGutterPosition = c_int;
102pub const GTK_SOURCE_VIEW_GUTTER_POSITION_LINES: GtkSourceViewGutterPosition = -30;
103pub const GTK_SOURCE_VIEW_GUTTER_POSITION_MARKS: GtkSourceViewGutterPosition = -20;
104
105// Constants
106
107// Flags
108pub type GtkSourceFileSaverFlags = c_uint;
109pub const GTK_SOURCE_FILE_SAVER_FLAGS_NONE: GtkSourceFileSaverFlags = 0;
110pub const GTK_SOURCE_FILE_SAVER_FLAGS_IGNORE_INVALID_CHARS: GtkSourceFileSaverFlags = 1;
111pub const GTK_SOURCE_FILE_SAVER_FLAGS_IGNORE_MODIFICATION_TIME: GtkSourceFileSaverFlags = 2;
112pub const GTK_SOURCE_FILE_SAVER_FLAGS_CREATE_BACKUP: GtkSourceFileSaverFlags = 4;
113
114pub type GtkSourceSortFlags = c_uint;
115pub const GTK_SOURCE_SORT_FLAGS_NONE: GtkSourceSortFlags = 0;
116pub const GTK_SOURCE_SORT_FLAGS_CASE_SENSITIVE: GtkSourceSortFlags = 1;
117pub const GTK_SOURCE_SORT_FLAGS_REVERSE_ORDER: GtkSourceSortFlags = 2;
118pub const GTK_SOURCE_SORT_FLAGS_REMOVE_DUPLICATES: GtkSourceSortFlags = 4;
119#[cfg(feature = "v5_16")]
120#[cfg_attr(docsrs, doc(cfg(feature = "v5_16")))]
121pub const GTK_SOURCE_SORT_FLAGS_FILENAME: GtkSourceSortFlags = 8;
122
123pub type GtkSourceSpaceLocationFlags = c_uint;
124pub const GTK_SOURCE_SPACE_LOCATION_NONE: GtkSourceSpaceLocationFlags = 0;
125pub const GTK_SOURCE_SPACE_LOCATION_LEADING: GtkSourceSpaceLocationFlags = 1;
126pub const GTK_SOURCE_SPACE_LOCATION_INSIDE_TEXT: GtkSourceSpaceLocationFlags = 2;
127pub const GTK_SOURCE_SPACE_LOCATION_TRAILING: GtkSourceSpaceLocationFlags = 4;
128pub const GTK_SOURCE_SPACE_LOCATION_ALL: GtkSourceSpaceLocationFlags = 7;
129
130pub type GtkSourceSpaceTypeFlags = c_uint;
131pub const GTK_SOURCE_SPACE_TYPE_NONE: GtkSourceSpaceTypeFlags = 0;
132pub const GTK_SOURCE_SPACE_TYPE_SPACE: GtkSourceSpaceTypeFlags = 1;
133pub const GTK_SOURCE_SPACE_TYPE_TAB: GtkSourceSpaceTypeFlags = 2;
134pub const GTK_SOURCE_SPACE_TYPE_NEWLINE: GtkSourceSpaceTypeFlags = 4;
135pub const GTK_SOURCE_SPACE_TYPE_NBSP: GtkSourceSpaceTypeFlags = 8;
136pub const GTK_SOURCE_SPACE_TYPE_ALL: GtkSourceSpaceTypeFlags = 15;
137
138// Callbacks
139pub type GtkSourceMountOperationFactory =
140    Option<unsafe extern "C" fn(*mut GtkSourceFile, gpointer) -> *mut gio::GMountOperation>;
141pub type GtkSourceSchedulerCallback = Option<unsafe extern "C" fn(i64, gpointer) -> gboolean>;
142
143// Records
144#[derive(Copy, Clone)]
145#[repr(C)]
146pub struct GtkSourceAnnotationClass {
147    pub parent_class: gobject::GObjectClass,
148}
149
150impl ::std::fmt::Debug for GtkSourceAnnotationClass {
151    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
152        f.debug_struct(&format!("GtkSourceAnnotationClass @ {self:p}"))
153            .field("parent_class", &self.parent_class)
154            .finish()
155    }
156}
157
158#[derive(Copy, Clone)]
159#[repr(C)]
160pub struct GtkSourceAnnotationProviderClass {
161    pub parent_class: gobject::GObjectClass,
162    pub populate_hover_async: Option<
163        unsafe extern "C" fn(
164            *mut GtkSourceAnnotationProvider,
165            *mut GtkSourceAnnotation,
166            *mut GtkSourceHoverDisplay,
167            *mut gio::GCancellable,
168            gio::GAsyncReadyCallback,
169            gpointer,
170        ),
171    >,
172    pub populate_hover_finish: Option<
173        unsafe extern "C" fn(
174            *mut GtkSourceAnnotationProvider,
175            *mut gio::GAsyncResult,
176            *mut *mut glib::GError,
177        ) -> gboolean,
178    >,
179}
180
181impl ::std::fmt::Debug for GtkSourceAnnotationProviderClass {
182    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
183        f.debug_struct(&format!("GtkSourceAnnotationProviderClass @ {self:p}"))
184            .field("parent_class", &self.parent_class)
185            .field("populate_hover_async", &self.populate_hover_async)
186            .field("populate_hover_finish", &self.populate_hover_finish)
187            .finish()
188    }
189}
190
191#[derive(Copy, Clone)]
192#[repr(C)]
193pub struct GtkSourceAnnotationsClass {
194    pub parent_class: gobject::GObjectClass,
195}
196
197impl ::std::fmt::Debug for GtkSourceAnnotationsClass {
198    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
199        f.debug_struct(&format!("GtkSourceAnnotationsClass @ {self:p}"))
200            .field("parent_class", &self.parent_class)
201            .finish()
202    }
203}
204
205#[derive(Copy, Clone)]
206#[repr(C)]
207pub struct GtkSourceBufferClass {
208    pub parent_class: gtk::GtkTextBufferClass,
209    pub bracket_matched: Option<
210        unsafe extern "C" fn(
211            *mut GtkSourceBuffer,
212            *mut gtk::GtkTextIter,
213            GtkSourceBracketMatchType,
214        ),
215    >,
216    pub _reserved: [gpointer; 20],
217}
218
219impl ::std::fmt::Debug for GtkSourceBufferClass {
220    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
221        f.debug_struct(&format!("GtkSourceBufferClass @ {self:p}"))
222            .field("parent_class", &self.parent_class)
223            .field("bracket_matched", &self.bracket_matched)
224            .finish()
225    }
226}
227
228#[derive(Copy, Clone)]
229#[repr(C)]
230pub struct GtkSourceCompletionCellClass {
231    pub parent_class: gtk::GtkWidgetClass,
232}
233
234impl ::std::fmt::Debug for GtkSourceCompletionCellClass {
235    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
236        f.debug_struct(&format!("GtkSourceCompletionCellClass @ {self:p}"))
237            .field("parent_class", &self.parent_class)
238            .finish()
239    }
240}
241
242#[derive(Copy, Clone)]
243#[repr(C)]
244pub struct GtkSourceCompletionClass {
245    pub parent_class: gobject::GObjectClass,
246}
247
248impl ::std::fmt::Debug for GtkSourceCompletionClass {
249    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
250        f.debug_struct(&format!("GtkSourceCompletionClass @ {self:p}"))
251            .field("parent_class", &self.parent_class)
252            .finish()
253    }
254}
255
256#[derive(Copy, Clone)]
257#[repr(C)]
258pub struct GtkSourceCompletionContextClass {
259    pub parent_class: gobject::GObjectClass,
260}
261
262impl ::std::fmt::Debug for GtkSourceCompletionContextClass {
263    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
264        f.debug_struct(&format!("GtkSourceCompletionContextClass @ {self:p}"))
265            .field("parent_class", &self.parent_class)
266            .finish()
267    }
268}
269
270#[derive(Copy, Clone)]
271#[repr(C)]
272pub struct GtkSourceCompletionProposalInterface {
273    pub parent_iface: gobject::GTypeInterface,
274    pub get_typed_text:
275        Option<unsafe extern "C" fn(*mut GtkSourceCompletionProposal) -> *mut c_char>,
276}
277
278impl ::std::fmt::Debug for GtkSourceCompletionProposalInterface {
279    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
280        f.debug_struct(&format!("GtkSourceCompletionProposalInterface @ {self:p}"))
281            .field("parent_iface", &self.parent_iface)
282            .field("get_typed_text", &self.get_typed_text)
283            .finish()
284    }
285}
286
287#[derive(Copy, Clone)]
288#[repr(C)]
289pub struct GtkSourceCompletionProviderInterface {
290    pub parent_iface: gobject::GTypeInterface,
291    pub get_title: Option<unsafe extern "C" fn(*mut GtkSourceCompletionProvider) -> *mut c_char>,
292    pub get_priority: Option<
293        unsafe extern "C" fn(
294            *mut GtkSourceCompletionProvider,
295            *mut GtkSourceCompletionContext,
296        ) -> c_int,
297    >,
298    pub is_trigger: Option<
299        unsafe extern "C" fn(
300            *mut GtkSourceCompletionProvider,
301            *const gtk::GtkTextIter,
302            u32,
303        ) -> gboolean,
304    >,
305    pub key_activates: Option<
306        unsafe extern "C" fn(
307            *mut GtkSourceCompletionProvider,
308            *mut GtkSourceCompletionContext,
309            *mut GtkSourceCompletionProposal,
310            c_uint,
311            gdk::GdkModifierType,
312        ) -> gboolean,
313    >,
314    pub populate: Option<
315        unsafe extern "C" fn(
316            *mut GtkSourceCompletionProvider,
317            *mut GtkSourceCompletionContext,
318            *mut *mut glib::GError,
319        ) -> *mut gio::GListModel,
320    >,
321    pub populate_async: Option<
322        unsafe extern "C" fn(
323            *mut GtkSourceCompletionProvider,
324            *mut GtkSourceCompletionContext,
325            *mut gio::GCancellable,
326            gio::GAsyncReadyCallback,
327            gpointer,
328        ),
329    >,
330    pub populate_finish: Option<
331        unsafe extern "C" fn(
332            *mut GtkSourceCompletionProvider,
333            *mut gio::GAsyncResult,
334            *mut *mut glib::GError,
335        ) -> *mut gio::GListModel,
336    >,
337    pub refilter: Option<
338        unsafe extern "C" fn(
339            *mut GtkSourceCompletionProvider,
340            *mut GtkSourceCompletionContext,
341            *mut gio::GListModel,
342        ),
343    >,
344    pub display: Option<
345        unsafe extern "C" fn(
346            *mut GtkSourceCompletionProvider,
347            *mut GtkSourceCompletionContext,
348            *mut GtkSourceCompletionProposal,
349            *mut GtkSourceCompletionCell,
350        ),
351    >,
352    pub activate: Option<
353        unsafe extern "C" fn(
354            *mut GtkSourceCompletionProvider,
355            *mut GtkSourceCompletionContext,
356            *mut GtkSourceCompletionProposal,
357        ),
358    >,
359    pub list_alternates: Option<
360        unsafe extern "C" fn(
361            *mut GtkSourceCompletionProvider,
362            *mut GtkSourceCompletionContext,
363            *mut GtkSourceCompletionProposal,
364        ) -> *mut glib::GPtrArray,
365    >,
366}
367
368impl ::std::fmt::Debug for GtkSourceCompletionProviderInterface {
369    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
370        f.debug_struct(&format!("GtkSourceCompletionProviderInterface @ {self:p}"))
371            .field("parent_iface", &self.parent_iface)
372            .field("get_title", &self.get_title)
373            .field("get_priority", &self.get_priority)
374            .field("is_trigger", &self.is_trigger)
375            .field("key_activates", &self.key_activates)
376            .field("populate", &self.populate)
377            .field("populate_async", &self.populate_async)
378            .field("populate_finish", &self.populate_finish)
379            .field("refilter", &self.refilter)
380            .field("display", &self.display)
381            .field("activate", &self.activate)
382            .field("list_alternates", &self.list_alternates)
383            .finish()
384    }
385}
386
387#[derive(Copy, Clone)]
388#[repr(C)]
389pub struct GtkSourceCompletionSnippetsClass {
390    pub parent_class: gobject::GObjectClass,
391    pub _reserved: [gpointer; 10],
392}
393
394impl ::std::fmt::Debug for GtkSourceCompletionSnippetsClass {
395    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
396        f.debug_struct(&format!("GtkSourceCompletionSnippetsClass @ {self:p}"))
397            .field("parent_class", &self.parent_class)
398            .finish()
399    }
400}
401
402#[derive(Copy, Clone)]
403#[repr(C)]
404pub struct GtkSourceCompletionWordsClass {
405    pub parent_class: gobject::GObjectClass,
406    pub _reserved: [gpointer; 10],
407}
408
409impl ::std::fmt::Debug for GtkSourceCompletionWordsClass {
410    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
411        f.debug_struct(&format!("GtkSourceCompletionWordsClass @ {self:p}"))
412            .field("parent_class", &self.parent_class)
413            .finish()
414    }
415}
416
417#[repr(C)]
418#[allow(dead_code)]
419pub struct GtkSourceEncoding {
420    _data: [u8; 0],
421    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
422}
423
424impl ::std::fmt::Debug for GtkSourceEncoding {
425    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
426        f.debug_struct(&format!("GtkSourceEncoding @ {self:p}"))
427            .finish()
428    }
429}
430
431#[derive(Copy, Clone)]
432#[repr(C)]
433pub struct GtkSourceFileClass {
434    pub parent_class: gobject::GObjectClass,
435    pub _reserved: [gpointer; 10],
436}
437
438impl ::std::fmt::Debug for GtkSourceFileClass {
439    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
440        f.debug_struct(&format!("GtkSourceFileClass @ {self:p}"))
441            .field("parent_class", &self.parent_class)
442            .finish()
443    }
444}
445
446#[derive(Copy, Clone)]
447#[repr(C)]
448pub struct GtkSourceFileLoaderClass {
449    pub parent_class: gobject::GObjectClass,
450}
451
452impl ::std::fmt::Debug for GtkSourceFileLoaderClass {
453    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
454        f.debug_struct(&format!("GtkSourceFileLoaderClass @ {self:p}"))
455            .field("parent_class", &self.parent_class)
456            .finish()
457    }
458}
459
460#[derive(Copy, Clone)]
461#[repr(C)]
462pub struct GtkSourceFileSaverClass {
463    pub parent_class: gobject::GObjectClass,
464}
465
466impl ::std::fmt::Debug for GtkSourceFileSaverClass {
467    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
468        f.debug_struct(&format!("GtkSourceFileSaverClass @ {self:p}"))
469            .field("parent_class", &self.parent_class)
470            .finish()
471    }
472}
473
474#[derive(Copy, Clone)]
475#[repr(C)]
476pub struct GtkSourceGutterClass {
477    pub parent_class: gtk::GtkWidgetClass,
478}
479
480impl ::std::fmt::Debug for GtkSourceGutterClass {
481    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
482        f.debug_struct(&format!("GtkSourceGutterClass @ {self:p}"))
483            .field("parent_class", &self.parent_class)
484            .finish()
485    }
486}
487
488#[derive(Copy, Clone)]
489#[repr(C)]
490pub struct GtkSourceGutterLinesClass {
491    pub parent_class: gobject::GObjectClass,
492}
493
494impl ::std::fmt::Debug for GtkSourceGutterLinesClass {
495    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
496        f.debug_struct(&format!("GtkSourceGutterLinesClass @ {self:p}"))
497            .field("parent_class", &self.parent_class)
498            .finish()
499    }
500}
501
502#[derive(Copy, Clone)]
503#[repr(C)]
504pub struct GtkSourceGutterRendererClass {
505    pub parent_class: gtk::GtkWidgetClass,
506    pub query_data: Option<
507        unsafe extern "C" fn(*mut GtkSourceGutterRenderer, *mut GtkSourceGutterLines, c_uint),
508    >,
509    pub begin:
510        Option<unsafe extern "C" fn(*mut GtkSourceGutterRenderer, *mut GtkSourceGutterLines)>,
511    pub snapshot_line: Option<
512        unsafe extern "C" fn(
513            *mut GtkSourceGutterRenderer,
514            *mut gtk::GtkSnapshot,
515            *mut GtkSourceGutterLines,
516            c_uint,
517        ),
518    >,
519    pub end: Option<unsafe extern "C" fn(*mut GtkSourceGutterRenderer)>,
520    pub change_view: Option<unsafe extern "C" fn(*mut GtkSourceGutterRenderer, *mut GtkSourceView)>,
521    pub change_buffer:
522        Option<unsafe extern "C" fn(*mut GtkSourceGutterRenderer, *mut GtkSourceBuffer)>,
523    pub query_activatable: Option<
524        unsafe extern "C" fn(
525            *mut GtkSourceGutterRenderer,
526            *mut gtk::GtkTextIter,
527            *mut gdk::GdkRectangle,
528        ) -> gboolean,
529    >,
530    pub activate: Option<
531        unsafe extern "C" fn(
532            *mut GtkSourceGutterRenderer,
533            *mut gtk::GtkTextIter,
534            *mut gdk::GdkRectangle,
535            c_uint,
536            gdk::GdkModifierType,
537            c_int,
538        ),
539    >,
540    pub _reserved: [gpointer; 20],
541}
542
543impl ::std::fmt::Debug for GtkSourceGutterRendererClass {
544    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
545        f.debug_struct(&format!("GtkSourceGutterRendererClass @ {self:p}"))
546            .field("parent_class", &self.parent_class)
547            .field("query_data", &self.query_data)
548            .field("begin", &self.begin)
549            .field("snapshot_line", &self.snapshot_line)
550            .field("end", &self.end)
551            .field("change_view", &self.change_view)
552            .field("change_buffer", &self.change_buffer)
553            .field("query_activatable", &self.query_activatable)
554            .field("activate", &self.activate)
555            .finish()
556    }
557}
558
559#[derive(Copy, Clone)]
560#[repr(C)]
561pub struct GtkSourceGutterRendererPixbufClass {
562    pub parent_class: GtkSourceGutterRendererClass,
563    pub _reserved: [gpointer; 10],
564}
565
566impl ::std::fmt::Debug for GtkSourceGutterRendererPixbufClass {
567    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
568        f.debug_struct(&format!("GtkSourceGutterRendererPixbufClass @ {self:p}"))
569            .field("parent_class", &self.parent_class)
570            .finish()
571    }
572}
573
574#[derive(Copy, Clone)]
575#[repr(C)]
576pub struct GtkSourceGutterRendererTextClass {
577    pub parent_class: GtkSourceGutterRendererClass,
578    pub _reserved: [gpointer; 10],
579}
580
581impl ::std::fmt::Debug for GtkSourceGutterRendererTextClass {
582    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
583        f.debug_struct(&format!("GtkSourceGutterRendererTextClass @ {self:p}"))
584            .field("parent_class", &self.parent_class)
585            .finish()
586    }
587}
588
589#[derive(Copy, Clone)]
590#[repr(C)]
591pub struct GtkSourceHoverClass {
592    pub parent_class: gobject::GObjectClass,
593}
594
595impl ::std::fmt::Debug for GtkSourceHoverClass {
596    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
597        f.debug_struct(&format!("GtkSourceHoverClass @ {self:p}"))
598            .field("parent_class", &self.parent_class)
599            .finish()
600    }
601}
602
603#[derive(Copy, Clone)]
604#[repr(C)]
605pub struct GtkSourceHoverContextClass {
606    pub parent_class: gobject::GObjectClass,
607}
608
609impl ::std::fmt::Debug for GtkSourceHoverContextClass {
610    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
611        f.debug_struct(&format!("GtkSourceHoverContextClass @ {self:p}"))
612            .field("parent_class", &self.parent_class)
613            .finish()
614    }
615}
616
617#[derive(Copy, Clone)]
618#[repr(C)]
619pub struct GtkSourceHoverDisplayClass {
620    pub parent_class: gtk::GtkWidgetClass,
621}
622
623impl ::std::fmt::Debug for GtkSourceHoverDisplayClass {
624    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
625        f.debug_struct(&format!("GtkSourceHoverDisplayClass @ {self:p}"))
626            .field("parent_class", &self.parent_class)
627            .finish()
628    }
629}
630
631#[derive(Copy, Clone)]
632#[repr(C)]
633pub struct GtkSourceHoverProviderInterface {
634    pub parent_iface: gobject::GTypeInterface,
635    pub populate: Option<
636        unsafe extern "C" fn(
637            *mut GtkSourceHoverProvider,
638            *mut GtkSourceHoverContext,
639            *mut GtkSourceHoverDisplay,
640            *mut *mut glib::GError,
641        ) -> gboolean,
642    >,
643    pub populate_async: Option<
644        unsafe extern "C" fn(
645            *mut GtkSourceHoverProvider,
646            *mut GtkSourceHoverContext,
647            *mut GtkSourceHoverDisplay,
648            *mut gio::GCancellable,
649            gio::GAsyncReadyCallback,
650            gpointer,
651        ),
652    >,
653    pub populate_finish: Option<
654        unsafe extern "C" fn(
655            *mut GtkSourceHoverProvider,
656            *mut gio::GAsyncResult,
657            *mut *mut glib::GError,
658        ) -> gboolean,
659    >,
660}
661
662impl ::std::fmt::Debug for GtkSourceHoverProviderInterface {
663    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
664        f.debug_struct(&format!("GtkSourceHoverProviderInterface @ {self:p}"))
665            .field("parent_iface", &self.parent_iface)
666            .field("populate", &self.populate)
667            .field("populate_async", &self.populate_async)
668            .field("populate_finish", &self.populate_finish)
669            .finish()
670    }
671}
672
673#[derive(Copy, Clone)]
674#[repr(C)]
675pub struct GtkSourceIndenterInterface {
676    pub parent_iface: gobject::GTypeInterface,
677    pub is_trigger: Option<
678        unsafe extern "C" fn(
679            *mut GtkSourceIndenter,
680            *mut GtkSourceView,
681            *const gtk::GtkTextIter,
682            gdk::GdkModifierType,
683            c_uint,
684        ) -> gboolean,
685    >,
686    pub indent: Option<
687        unsafe extern "C" fn(*mut GtkSourceIndenter, *mut GtkSourceView, *mut gtk::GtkTextIter),
688    >,
689}
690
691impl ::std::fmt::Debug for GtkSourceIndenterInterface {
692    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
693        f.debug_struct(&format!("GtkSourceIndenterInterface @ {self:p}"))
694            .field("parent_iface", &self.parent_iface)
695            .field("is_trigger", &self.is_trigger)
696            .field("indent", &self.indent)
697            .finish()
698    }
699}
700
701#[derive(Copy, Clone)]
702#[repr(C)]
703pub struct GtkSourceLanguageClass {
704    pub parent_class: gobject::GObjectClass,
705}
706
707impl ::std::fmt::Debug for GtkSourceLanguageClass {
708    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
709        f.debug_struct(&format!("GtkSourceLanguageClass @ {self:p}"))
710            .field("parent_class", &self.parent_class)
711            .finish()
712    }
713}
714
715#[derive(Copy, Clone)]
716#[repr(C)]
717pub struct GtkSourceLanguageManagerClass {
718    pub parent_class: gobject::GObjectClass,
719}
720
721impl ::std::fmt::Debug for GtkSourceLanguageManagerClass {
722    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
723        f.debug_struct(&format!("GtkSourceLanguageManagerClass @ {self:p}"))
724            .field("parent_class", &self.parent_class)
725            .finish()
726    }
727}
728
729#[derive(Copy, Clone)]
730#[repr(C)]
731pub struct GtkSourceMapClass {
732    pub parent_class: GtkSourceViewClass,
733    pub _reserved: [gpointer; 10],
734}
735
736impl ::std::fmt::Debug for GtkSourceMapClass {
737    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
738        f.debug_struct(&format!("GtkSourceMapClass @ {self:p}"))
739            .field("parent_class", &self.parent_class)
740            .finish()
741    }
742}
743
744#[derive(Copy, Clone)]
745#[repr(C)]
746pub struct GtkSourceMarkAttributesClass {
747    pub parent_class: gobject::GObjectClass,
748}
749
750impl ::std::fmt::Debug for GtkSourceMarkAttributesClass {
751    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
752        f.debug_struct(&format!("GtkSourceMarkAttributesClass @ {self:p}"))
753            .field("parent_class", &self.parent_class)
754            .finish()
755    }
756}
757
758#[derive(Copy, Clone)]
759#[repr(C)]
760pub struct GtkSourceMarkClass {
761    pub parent_class: gtk::GtkTextMarkClass,
762    pub _reserved: [gpointer; 10],
763}
764
765impl ::std::fmt::Debug for GtkSourceMarkClass {
766    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
767        f.debug_struct(&format!("GtkSourceMarkClass @ {self:p}"))
768            .field("parent_class", &self.parent_class)
769            .finish()
770    }
771}
772
773#[derive(Copy, Clone)]
774#[repr(C)]
775pub struct GtkSourcePrintCompositorClass {
776    pub parent_class: gobject::GObjectClass,
777    pub _reserved: [gpointer; 10],
778}
779
780impl ::std::fmt::Debug for GtkSourcePrintCompositorClass {
781    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
782        f.debug_struct(&format!("GtkSourcePrintCompositorClass @ {self:p}"))
783            .field("parent_class", &self.parent_class)
784            .finish()
785    }
786}
787
788#[derive(Copy, Clone)]
789#[repr(C)]
790pub struct GtkSourceRegionClass {
791    pub parent_class: gobject::GObjectClass,
792    pub _reserved: [gpointer; 10],
793}
794
795impl ::std::fmt::Debug for GtkSourceRegionClass {
796    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
797        f.debug_struct(&format!("GtkSourceRegionClass @ {self:p}"))
798            .field("parent_class", &self.parent_class)
799            .finish()
800    }
801}
802
803#[derive(Copy, Clone)]
804#[repr(C)]
805pub struct GtkSourceRegionIter {
806    pub dummy1: gpointer,
807    pub dummy2: u32,
808    pub dummy3: gpointer,
809}
810
811impl ::std::fmt::Debug for GtkSourceRegionIter {
812    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
813        f.debug_struct(&format!("GtkSourceRegionIter @ {self:p}"))
814            .finish()
815    }
816}
817
818#[derive(Copy, Clone)]
819#[repr(C)]
820pub struct GtkSourceSearchContextClass {
821    pub parent_class: gobject::GObjectClass,
822}
823
824impl ::std::fmt::Debug for GtkSourceSearchContextClass {
825    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
826        f.debug_struct(&format!("GtkSourceSearchContextClass @ {self:p}"))
827            .field("parent_class", &self.parent_class)
828            .finish()
829    }
830}
831
832#[derive(Copy, Clone)]
833#[repr(C)]
834pub struct GtkSourceSearchSettingsClass {
835    pub parent_class: gobject::GObjectClass,
836    pub _reserved: [gpointer; 10],
837}
838
839impl ::std::fmt::Debug for GtkSourceSearchSettingsClass {
840    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
841        f.debug_struct(&format!("GtkSourceSearchSettingsClass @ {self:p}"))
842            .field("parent_class", &self.parent_class)
843            .finish()
844    }
845}
846
847#[derive(Copy, Clone)]
848#[repr(C)]
849pub struct GtkSourceSnippetChunkClass {
850    pub parent_class: gobject::GInitiallyUnownedClass,
851}
852
853impl ::std::fmt::Debug for GtkSourceSnippetChunkClass {
854    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
855        f.debug_struct(&format!("GtkSourceSnippetChunkClass @ {self:p}"))
856            .field("parent_class", &self.parent_class)
857            .finish()
858    }
859}
860
861#[derive(Copy, Clone)]
862#[repr(C)]
863pub struct GtkSourceSnippetClass {
864    pub parent_class: gobject::GObjectClass,
865}
866
867impl ::std::fmt::Debug for GtkSourceSnippetClass {
868    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
869        f.debug_struct(&format!("GtkSourceSnippetClass @ {self:p}"))
870            .field("parent_class", &self.parent_class)
871            .finish()
872    }
873}
874
875#[derive(Copy, Clone)]
876#[repr(C)]
877pub struct GtkSourceSnippetContextClass {
878    pub parent_class: gobject::GObjectClass,
879}
880
881impl ::std::fmt::Debug for GtkSourceSnippetContextClass {
882    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
883        f.debug_struct(&format!("GtkSourceSnippetContextClass @ {self:p}"))
884            .field("parent_class", &self.parent_class)
885            .finish()
886    }
887}
888
889#[derive(Copy, Clone)]
890#[repr(C)]
891pub struct GtkSourceSnippetManagerClass {
892    pub parent_class: gobject::GObjectClass,
893}
894
895impl ::std::fmt::Debug for GtkSourceSnippetManagerClass {
896    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
897        f.debug_struct(&format!("GtkSourceSnippetManagerClass @ {self:p}"))
898            .field("parent_class", &self.parent_class)
899            .finish()
900    }
901}
902
903#[derive(Copy, Clone)]
904#[repr(C)]
905pub struct GtkSourceSpaceDrawerClass {
906    pub parent_class: gobject::GObjectClass,
907}
908
909impl ::std::fmt::Debug for GtkSourceSpaceDrawerClass {
910    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
911        f.debug_struct(&format!("GtkSourceSpaceDrawerClass @ {self:p}"))
912            .field("parent_class", &self.parent_class)
913            .finish()
914    }
915}
916
917#[derive(Copy, Clone)]
918#[repr(C)]
919pub struct GtkSourceStyleClass {
920    pub parent_class: gobject::GObjectClass,
921}
922
923impl ::std::fmt::Debug for GtkSourceStyleClass {
924    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
925        f.debug_struct(&format!("GtkSourceStyleClass @ {self:p}"))
926            .field("parent_class", &self.parent_class)
927            .finish()
928    }
929}
930
931#[derive(Copy, Clone)]
932#[repr(C)]
933pub struct GtkSourceStyleSchemeChooserButtonClass {
934    pub parent: gtk::GtkButtonClass,
935    pub _reserved: [gpointer; 10],
936}
937
938impl ::std::fmt::Debug for GtkSourceStyleSchemeChooserButtonClass {
939    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
940        f.debug_struct(&format!(
941            "GtkSourceStyleSchemeChooserButtonClass @ {self:p}"
942        ))
943        .field("parent", &self.parent)
944        .finish()
945    }
946}
947
948#[derive(Copy, Clone)]
949#[repr(C)]
950pub struct GtkSourceStyleSchemeChooserInterface {
951    pub base_interface: gobject::GTypeInterface,
952    pub get_style_scheme:
953        Option<unsafe extern "C" fn(*mut GtkSourceStyleSchemeChooser) -> *mut GtkSourceStyleScheme>,
954    pub set_style_scheme:
955        Option<unsafe extern "C" fn(*mut GtkSourceStyleSchemeChooser, *mut GtkSourceStyleScheme)>,
956    pub _reserved: [gpointer; 12],
957}
958
959impl ::std::fmt::Debug for GtkSourceStyleSchemeChooserInterface {
960    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
961        f.debug_struct(&format!("GtkSourceStyleSchemeChooserInterface @ {self:p}"))
962            .field("base_interface", &self.base_interface)
963            .field("get_style_scheme", &self.get_style_scheme)
964            .field("set_style_scheme", &self.set_style_scheme)
965            .finish()
966    }
967}
968
969#[derive(Copy, Clone)]
970#[repr(C)]
971pub struct GtkSourceStyleSchemeChooserWidgetClass {
972    pub parent: gtk::GtkWidgetClass,
973    pub _reserved: [gpointer; 10],
974}
975
976impl ::std::fmt::Debug for GtkSourceStyleSchemeChooserWidgetClass {
977    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
978        f.debug_struct(&format!(
979            "GtkSourceStyleSchemeChooserWidgetClass @ {self:p}"
980        ))
981        .field("parent", &self.parent)
982        .finish()
983    }
984}
985
986#[derive(Copy, Clone)]
987#[repr(C)]
988pub struct GtkSourceStyleSchemeClass {
989    pub parent_class: gobject::GObjectClass,
990}
991
992impl ::std::fmt::Debug for GtkSourceStyleSchemeClass {
993    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
994        f.debug_struct(&format!("GtkSourceStyleSchemeClass @ {self:p}"))
995            .field("parent_class", &self.parent_class)
996            .finish()
997    }
998}
999
1000#[derive(Copy, Clone)]
1001#[repr(C)]
1002pub struct GtkSourceStyleSchemeManagerClass {
1003    pub parent_class: gobject::GObjectClass,
1004}
1005
1006impl ::std::fmt::Debug for GtkSourceStyleSchemeManagerClass {
1007    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1008        f.debug_struct(&format!("GtkSourceStyleSchemeManagerClass @ {self:p}"))
1009            .field("parent_class", &self.parent_class)
1010            .finish()
1011    }
1012}
1013
1014#[derive(Copy, Clone)]
1015#[repr(C)]
1016pub struct GtkSourceStyleSchemePreviewClass {
1017    pub parent_class: gtk::GtkWidgetClass,
1018}
1019
1020impl ::std::fmt::Debug for GtkSourceStyleSchemePreviewClass {
1021    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1022        f.debug_struct(&format!("GtkSourceStyleSchemePreviewClass @ {self:p}"))
1023            .field("parent_class", &self.parent_class)
1024            .finish()
1025    }
1026}
1027
1028#[derive(Copy, Clone)]
1029#[repr(C)]
1030pub struct GtkSourceTagClass {
1031    pub parent_class: gtk::GtkTextTagClass,
1032    pub _reserved: [gpointer; 10],
1033}
1034
1035impl ::std::fmt::Debug for GtkSourceTagClass {
1036    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1037        f.debug_struct(&format!("GtkSourceTagClass @ {self:p}"))
1038            .field("parent_class", &self.parent_class)
1039            .finish()
1040    }
1041}
1042
1043#[derive(Copy, Clone)]
1044#[repr(C)]
1045pub struct GtkSourceViewClass {
1046    pub parent_class: gtk::GtkTextViewClass,
1047    pub line_mark_activated: Option<
1048        unsafe extern "C" fn(
1049            *mut GtkSourceView,
1050            *const gtk::GtkTextIter,
1051            c_uint,
1052            gdk::GdkModifierType,
1053            c_int,
1054        ),
1055    >,
1056    pub show_completion: Option<unsafe extern "C" fn(*mut GtkSourceView)>,
1057    pub move_lines: Option<unsafe extern "C" fn(*mut GtkSourceView, gboolean)>,
1058    pub move_words: Option<unsafe extern "C" fn(*mut GtkSourceView, c_int)>,
1059    pub push_snippet: Option<
1060        unsafe extern "C" fn(*mut GtkSourceView, *mut GtkSourceSnippet, *mut gtk::GtkTextIter),
1061    >,
1062    pub _reserved: [gpointer; 20],
1063}
1064
1065impl ::std::fmt::Debug for GtkSourceViewClass {
1066    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1067        f.debug_struct(&format!("GtkSourceViewClass @ {self:p}"))
1068            .field("parent_class", &self.parent_class)
1069            .field("line_mark_activated", &self.line_mark_activated)
1070            .field("show_completion", &self.show_completion)
1071            .field("move_lines", &self.move_lines)
1072            .field("move_words", &self.move_words)
1073            .field("push_snippet", &self.push_snippet)
1074            .finish()
1075    }
1076}
1077
1078#[derive(Copy, Clone)]
1079#[repr(C)]
1080pub struct GtkSourceVimIMContextClass {
1081    pub parent_class: gtk::GtkIMContextClass,
1082}
1083
1084impl ::std::fmt::Debug for GtkSourceVimIMContextClass {
1085    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1086        f.debug_struct(&format!("GtkSourceVimIMContextClass @ {self:p}"))
1087            .field("parent_class", &self.parent_class)
1088            .finish()
1089    }
1090}
1091
1092// Classes
1093#[repr(C)]
1094#[allow(dead_code)]
1095pub struct GtkSourceAnnotation {
1096    _data: [u8; 0],
1097    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1098}
1099
1100impl ::std::fmt::Debug for GtkSourceAnnotation {
1101    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1102        f.debug_struct(&format!("GtkSourceAnnotation @ {self:p}"))
1103            .finish()
1104    }
1105}
1106
1107#[derive(Copy, Clone)]
1108#[repr(C)]
1109pub struct GtkSourceAnnotationProvider {
1110    pub parent_instance: gobject::GObject,
1111}
1112
1113impl ::std::fmt::Debug for GtkSourceAnnotationProvider {
1114    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1115        f.debug_struct(&format!("GtkSourceAnnotationProvider @ {self:p}"))
1116            .field("parent_instance", &self.parent_instance)
1117            .finish()
1118    }
1119}
1120
1121#[repr(C)]
1122#[allow(dead_code)]
1123pub struct GtkSourceAnnotations {
1124    _data: [u8; 0],
1125    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1126}
1127
1128impl ::std::fmt::Debug for GtkSourceAnnotations {
1129    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1130        f.debug_struct(&format!("GtkSourceAnnotations @ {self:p}"))
1131            .finish()
1132    }
1133}
1134
1135#[derive(Copy, Clone)]
1136#[repr(C)]
1137pub struct GtkSourceBuffer {
1138    pub parent_instance: gtk::GtkTextBuffer,
1139}
1140
1141impl ::std::fmt::Debug for GtkSourceBuffer {
1142    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1143        f.debug_struct(&format!("GtkSourceBuffer @ {self:p}"))
1144            .field("parent_instance", &self.parent_instance)
1145            .finish()
1146    }
1147}
1148
1149#[repr(C)]
1150#[allow(dead_code)]
1151pub struct GtkSourceCompletion {
1152    _data: [u8; 0],
1153    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1154}
1155
1156impl ::std::fmt::Debug for GtkSourceCompletion {
1157    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1158        f.debug_struct(&format!("GtkSourceCompletion @ {self:p}"))
1159            .finish()
1160    }
1161}
1162
1163#[repr(C)]
1164#[allow(dead_code)]
1165pub struct GtkSourceCompletionCell {
1166    _data: [u8; 0],
1167    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1168}
1169
1170impl ::std::fmt::Debug for GtkSourceCompletionCell {
1171    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1172        f.debug_struct(&format!("GtkSourceCompletionCell @ {self:p}"))
1173            .finish()
1174    }
1175}
1176
1177#[repr(C)]
1178#[allow(dead_code)]
1179pub struct GtkSourceCompletionContext {
1180    _data: [u8; 0],
1181    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1182}
1183
1184impl ::std::fmt::Debug for GtkSourceCompletionContext {
1185    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1186        f.debug_struct(&format!("GtkSourceCompletionContext @ {self:p}"))
1187            .finish()
1188    }
1189}
1190
1191#[derive(Copy, Clone)]
1192#[repr(C)]
1193pub struct GtkSourceCompletionSnippets {
1194    pub parent_instance: gobject::GObject,
1195}
1196
1197impl ::std::fmt::Debug for GtkSourceCompletionSnippets {
1198    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1199        f.debug_struct(&format!("GtkSourceCompletionSnippets @ {self:p}"))
1200            .field("parent_instance", &self.parent_instance)
1201            .finish()
1202    }
1203}
1204
1205#[derive(Copy, Clone)]
1206#[repr(C)]
1207pub struct GtkSourceCompletionWords {
1208    pub parent_instance: gobject::GObject,
1209}
1210
1211impl ::std::fmt::Debug for GtkSourceCompletionWords {
1212    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1213        f.debug_struct(&format!("GtkSourceCompletionWords @ {self:p}"))
1214            .field("parent_instance", &self.parent_instance)
1215            .finish()
1216    }
1217}
1218
1219#[derive(Copy, Clone)]
1220#[repr(C)]
1221pub struct GtkSourceFile {
1222    pub parent_instance: gobject::GObject,
1223}
1224
1225impl ::std::fmt::Debug for GtkSourceFile {
1226    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1227        f.debug_struct(&format!("GtkSourceFile @ {self:p}"))
1228            .field("parent_instance", &self.parent_instance)
1229            .finish()
1230    }
1231}
1232
1233#[repr(C)]
1234#[allow(dead_code)]
1235pub struct GtkSourceFileLoader {
1236    _data: [u8; 0],
1237    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1238}
1239
1240impl ::std::fmt::Debug for GtkSourceFileLoader {
1241    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1242        f.debug_struct(&format!("GtkSourceFileLoader @ {self:p}"))
1243            .finish()
1244    }
1245}
1246
1247#[repr(C)]
1248#[allow(dead_code)]
1249pub struct GtkSourceFileSaver {
1250    _data: [u8; 0],
1251    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1252}
1253
1254impl ::std::fmt::Debug for GtkSourceFileSaver {
1255    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1256        f.debug_struct(&format!("GtkSourceFileSaver @ {self:p}"))
1257            .finish()
1258    }
1259}
1260
1261#[repr(C)]
1262#[allow(dead_code)]
1263pub struct GtkSourceGutter {
1264    _data: [u8; 0],
1265    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1266}
1267
1268impl ::std::fmt::Debug for GtkSourceGutter {
1269    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1270        f.debug_struct(&format!("GtkSourceGutter @ {self:p}"))
1271            .finish()
1272    }
1273}
1274
1275#[repr(C)]
1276#[allow(dead_code)]
1277pub struct GtkSourceGutterLines {
1278    _data: [u8; 0],
1279    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1280}
1281
1282impl ::std::fmt::Debug for GtkSourceGutterLines {
1283    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1284        f.debug_struct(&format!("GtkSourceGutterLines @ {self:p}"))
1285            .finish()
1286    }
1287}
1288
1289#[derive(Copy, Clone)]
1290#[repr(C)]
1291pub struct GtkSourceGutterRenderer {
1292    pub parent_instance: gtk::GtkWidget,
1293}
1294
1295impl ::std::fmt::Debug for GtkSourceGutterRenderer {
1296    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1297        f.debug_struct(&format!("GtkSourceGutterRenderer @ {self:p}"))
1298            .field("parent_instance", &self.parent_instance)
1299            .finish()
1300    }
1301}
1302
1303#[derive(Copy, Clone)]
1304#[repr(C)]
1305pub struct GtkSourceGutterRendererPixbuf {
1306    pub parent_instance: GtkSourceGutterRenderer,
1307}
1308
1309impl ::std::fmt::Debug for GtkSourceGutterRendererPixbuf {
1310    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1311        f.debug_struct(&format!("GtkSourceGutterRendererPixbuf @ {self:p}"))
1312            .field("parent_instance", &self.parent_instance)
1313            .finish()
1314    }
1315}
1316
1317#[derive(Copy, Clone)]
1318#[repr(C)]
1319pub struct GtkSourceGutterRendererText {
1320    pub parent_instance: GtkSourceGutterRenderer,
1321}
1322
1323impl ::std::fmt::Debug for GtkSourceGutterRendererText {
1324    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1325        f.debug_struct(&format!("GtkSourceGutterRendererText @ {self:p}"))
1326            .field("parent_instance", &self.parent_instance)
1327            .finish()
1328    }
1329}
1330
1331#[repr(C)]
1332#[allow(dead_code)]
1333pub struct GtkSourceHover {
1334    _data: [u8; 0],
1335    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1336}
1337
1338impl ::std::fmt::Debug for GtkSourceHover {
1339    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1340        f.debug_struct(&format!("GtkSourceHover @ {self:p}"))
1341            .finish()
1342    }
1343}
1344
1345#[repr(C)]
1346#[allow(dead_code)]
1347pub struct GtkSourceHoverContext {
1348    _data: [u8; 0],
1349    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1350}
1351
1352impl ::std::fmt::Debug for GtkSourceHoverContext {
1353    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1354        f.debug_struct(&format!("GtkSourceHoverContext @ {self:p}"))
1355            .finish()
1356    }
1357}
1358
1359#[repr(C)]
1360#[allow(dead_code)]
1361pub struct GtkSourceHoverDisplay {
1362    _data: [u8; 0],
1363    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1364}
1365
1366impl ::std::fmt::Debug for GtkSourceHoverDisplay {
1367    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1368        f.debug_struct(&format!("GtkSourceHoverDisplay @ {self:p}"))
1369            .finish()
1370    }
1371}
1372
1373#[repr(C)]
1374#[allow(dead_code)]
1375pub struct GtkSourceLanguage {
1376    _data: [u8; 0],
1377    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1378}
1379
1380impl ::std::fmt::Debug for GtkSourceLanguage {
1381    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1382        f.debug_struct(&format!("GtkSourceLanguage @ {self:p}"))
1383            .finish()
1384    }
1385}
1386
1387#[repr(C)]
1388#[allow(dead_code)]
1389pub struct GtkSourceLanguageManager {
1390    _data: [u8; 0],
1391    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1392}
1393
1394impl ::std::fmt::Debug for GtkSourceLanguageManager {
1395    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1396        f.debug_struct(&format!("GtkSourceLanguageManager @ {self:p}"))
1397            .finish()
1398    }
1399}
1400
1401#[derive(Copy, Clone)]
1402#[repr(C)]
1403pub struct GtkSourceMap {
1404    pub parent_instance: GtkSourceView,
1405}
1406
1407impl ::std::fmt::Debug for GtkSourceMap {
1408    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1409        f.debug_struct(&format!("GtkSourceMap @ {self:p}"))
1410            .field("parent_instance", &self.parent_instance)
1411            .finish()
1412    }
1413}
1414
1415#[derive(Copy, Clone)]
1416#[repr(C)]
1417pub struct GtkSourceMark {
1418    pub parent_instance: gtk::GtkTextMark,
1419}
1420
1421impl ::std::fmt::Debug for GtkSourceMark {
1422    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1423        f.debug_struct(&format!("GtkSourceMark @ {self:p}"))
1424            .field("parent_instance", &self.parent_instance)
1425            .finish()
1426    }
1427}
1428
1429#[repr(C)]
1430#[allow(dead_code)]
1431pub struct GtkSourceMarkAttributes {
1432    _data: [u8; 0],
1433    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1434}
1435
1436impl ::std::fmt::Debug for GtkSourceMarkAttributes {
1437    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1438        f.debug_struct(&format!("GtkSourceMarkAttributes @ {self:p}"))
1439            .finish()
1440    }
1441}
1442
1443#[derive(Copy, Clone)]
1444#[repr(C)]
1445pub struct GtkSourcePrintCompositor {
1446    pub parent_instance: gobject::GObject,
1447}
1448
1449impl ::std::fmt::Debug for GtkSourcePrintCompositor {
1450    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1451        f.debug_struct(&format!("GtkSourcePrintCompositor @ {self:p}"))
1452            .field("parent_instance", &self.parent_instance)
1453            .finish()
1454    }
1455}
1456
1457#[derive(Copy, Clone)]
1458#[repr(C)]
1459pub struct GtkSourceRegion {
1460    pub parent_instance: gobject::GObject,
1461}
1462
1463impl ::std::fmt::Debug for GtkSourceRegion {
1464    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1465        f.debug_struct(&format!("GtkSourceRegion @ {self:p}"))
1466            .field("parent_instance", &self.parent_instance)
1467            .finish()
1468    }
1469}
1470
1471#[repr(C)]
1472#[allow(dead_code)]
1473pub struct GtkSourceSearchContext {
1474    _data: [u8; 0],
1475    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1476}
1477
1478impl ::std::fmt::Debug for GtkSourceSearchContext {
1479    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1480        f.debug_struct(&format!("GtkSourceSearchContext @ {self:p}"))
1481            .finish()
1482    }
1483}
1484
1485#[derive(Copy, Clone)]
1486#[repr(C)]
1487pub struct GtkSourceSearchSettings {
1488    pub parent_instance: gobject::GObject,
1489}
1490
1491impl ::std::fmt::Debug for GtkSourceSearchSettings {
1492    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1493        f.debug_struct(&format!("GtkSourceSearchSettings @ {self:p}"))
1494            .field("parent_instance", &self.parent_instance)
1495            .finish()
1496    }
1497}
1498
1499#[repr(C)]
1500#[allow(dead_code)]
1501pub struct GtkSourceSnippet {
1502    _data: [u8; 0],
1503    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1504}
1505
1506impl ::std::fmt::Debug for GtkSourceSnippet {
1507    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1508        f.debug_struct(&format!("GtkSourceSnippet @ {self:p}"))
1509            .finish()
1510    }
1511}
1512
1513#[repr(C)]
1514#[allow(dead_code)]
1515pub struct GtkSourceSnippetChunk {
1516    _data: [u8; 0],
1517    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1518}
1519
1520impl ::std::fmt::Debug for GtkSourceSnippetChunk {
1521    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1522        f.debug_struct(&format!("GtkSourceSnippetChunk @ {self:p}"))
1523            .finish()
1524    }
1525}
1526
1527#[repr(C)]
1528#[allow(dead_code)]
1529pub struct GtkSourceSnippetContext {
1530    _data: [u8; 0],
1531    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1532}
1533
1534impl ::std::fmt::Debug for GtkSourceSnippetContext {
1535    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1536        f.debug_struct(&format!("GtkSourceSnippetContext @ {self:p}"))
1537            .finish()
1538    }
1539}
1540
1541#[repr(C)]
1542#[allow(dead_code)]
1543pub struct GtkSourceSnippetManager {
1544    _data: [u8; 0],
1545    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1546}
1547
1548impl ::std::fmt::Debug for GtkSourceSnippetManager {
1549    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1550        f.debug_struct(&format!("GtkSourceSnippetManager @ {self:p}"))
1551            .finish()
1552    }
1553}
1554
1555#[repr(C)]
1556#[allow(dead_code)]
1557pub struct GtkSourceSpaceDrawer {
1558    _data: [u8; 0],
1559    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1560}
1561
1562impl ::std::fmt::Debug for GtkSourceSpaceDrawer {
1563    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1564        f.debug_struct(&format!("GtkSourceSpaceDrawer @ {self:p}"))
1565            .finish()
1566    }
1567}
1568
1569#[repr(C)]
1570#[allow(dead_code)]
1571pub struct GtkSourceStyle {
1572    _data: [u8; 0],
1573    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1574}
1575
1576impl ::std::fmt::Debug for GtkSourceStyle {
1577    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1578        f.debug_struct(&format!("GtkSourceStyle @ {self:p}"))
1579            .finish()
1580    }
1581}
1582
1583#[repr(C)]
1584#[allow(dead_code)]
1585pub struct GtkSourceStyleScheme {
1586    _data: [u8; 0],
1587    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1588}
1589
1590impl ::std::fmt::Debug for GtkSourceStyleScheme {
1591    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1592        f.debug_struct(&format!("GtkSourceStyleScheme @ {self:p}"))
1593            .finish()
1594    }
1595}
1596
1597#[derive(Copy, Clone)]
1598#[repr(C)]
1599pub struct GtkSourceStyleSchemeChooserButton {
1600    pub parent_instance: gtk::GtkButton,
1601}
1602
1603impl ::std::fmt::Debug for GtkSourceStyleSchemeChooserButton {
1604    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1605        f.debug_struct(&format!("GtkSourceStyleSchemeChooserButton @ {self:p}"))
1606            .field("parent_instance", &self.parent_instance)
1607            .finish()
1608    }
1609}
1610
1611#[derive(Copy, Clone)]
1612#[repr(C)]
1613pub struct GtkSourceStyleSchemeChooserWidget {
1614    pub parent_instance: gtk::GtkWidget,
1615}
1616
1617impl ::std::fmt::Debug for GtkSourceStyleSchemeChooserWidget {
1618    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1619        f.debug_struct(&format!("GtkSourceStyleSchemeChooserWidget @ {self:p}"))
1620            .field("parent_instance", &self.parent_instance)
1621            .finish()
1622    }
1623}
1624
1625#[repr(C)]
1626#[allow(dead_code)]
1627pub struct GtkSourceStyleSchemeManager {
1628    _data: [u8; 0],
1629    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1630}
1631
1632impl ::std::fmt::Debug for GtkSourceStyleSchemeManager {
1633    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1634        f.debug_struct(&format!("GtkSourceStyleSchemeManager @ {self:p}"))
1635            .finish()
1636    }
1637}
1638
1639#[repr(C)]
1640#[allow(dead_code)]
1641pub struct GtkSourceStyleSchemePreview {
1642    _data: [u8; 0],
1643    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1644}
1645
1646impl ::std::fmt::Debug for GtkSourceStyleSchemePreview {
1647    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1648        f.debug_struct(&format!("GtkSourceStyleSchemePreview @ {self:p}"))
1649            .finish()
1650    }
1651}
1652
1653#[derive(Copy, Clone)]
1654#[repr(C)]
1655pub struct GtkSourceTag {
1656    pub parent_instance: gtk::GtkTextTag,
1657}
1658
1659impl ::std::fmt::Debug for GtkSourceTag {
1660    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1661        f.debug_struct(&format!("GtkSourceTag @ {self:p}"))
1662            .field("parent_instance", &self.parent_instance)
1663            .finish()
1664    }
1665}
1666
1667#[derive(Copy, Clone)]
1668#[repr(C)]
1669pub struct GtkSourceView {
1670    pub parent_instance: gtk::GtkTextView,
1671}
1672
1673impl ::std::fmt::Debug for GtkSourceView {
1674    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1675        f.debug_struct(&format!("GtkSourceView @ {self:p}"))
1676            .field("parent_instance", &self.parent_instance)
1677            .finish()
1678    }
1679}
1680
1681#[repr(C)]
1682#[allow(dead_code)]
1683pub struct GtkSourceVimIMContext {
1684    _data: [u8; 0],
1685    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1686}
1687
1688impl ::std::fmt::Debug for GtkSourceVimIMContext {
1689    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1690        f.debug_struct(&format!("GtkSourceVimIMContext @ {self:p}"))
1691            .finish()
1692    }
1693}
1694
1695// Interfaces
1696#[repr(C)]
1697#[allow(dead_code)]
1698pub struct GtkSourceCompletionProposal {
1699    _data: [u8; 0],
1700    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1701}
1702
1703impl ::std::fmt::Debug for GtkSourceCompletionProposal {
1704    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1705        write!(f, "GtkSourceCompletionProposal @ {self:p}")
1706    }
1707}
1708
1709#[repr(C)]
1710#[allow(dead_code)]
1711pub struct GtkSourceCompletionProvider {
1712    _data: [u8; 0],
1713    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1714}
1715
1716impl ::std::fmt::Debug for GtkSourceCompletionProvider {
1717    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1718        write!(f, "GtkSourceCompletionProvider @ {self:p}")
1719    }
1720}
1721
1722#[repr(C)]
1723#[allow(dead_code)]
1724pub struct GtkSourceHoverProvider {
1725    _data: [u8; 0],
1726    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1727}
1728
1729impl ::std::fmt::Debug for GtkSourceHoverProvider {
1730    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1731        write!(f, "GtkSourceHoverProvider @ {self:p}")
1732    }
1733}
1734
1735#[repr(C)]
1736#[allow(dead_code)]
1737pub struct GtkSourceIndenter {
1738    _data: [u8; 0],
1739    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1740}
1741
1742impl ::std::fmt::Debug for GtkSourceIndenter {
1743    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1744        write!(f, "GtkSourceIndenter @ {self:p}")
1745    }
1746}
1747
1748#[repr(C)]
1749#[allow(dead_code)]
1750pub struct GtkSourceStyleSchemeChooser {
1751    _data: [u8; 0],
1752    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1753}
1754
1755impl ::std::fmt::Debug for GtkSourceStyleSchemeChooser {
1756    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1757        write!(f, "GtkSourceStyleSchemeChooser @ {self:p}")
1758    }
1759}
1760
1761extern "C" {
1762
1763    //=========================================================================
1764    // GtkSourceAnnotationStyle
1765    //=========================================================================
1766    #[cfg(feature = "v5_18")]
1767    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1768    pub fn gtk_source_annotation_style_get_type() -> GType;
1769
1770    //=========================================================================
1771    // GtkSourceBackgroundPatternType
1772    //=========================================================================
1773    pub fn gtk_source_background_pattern_type_get_type() -> GType;
1774
1775    //=========================================================================
1776    // GtkSourceBracketMatchType
1777    //=========================================================================
1778    pub fn gtk_source_bracket_match_type_get_type() -> GType;
1779
1780    //=========================================================================
1781    // GtkSourceChangeCaseType
1782    //=========================================================================
1783    pub fn gtk_source_change_case_type_get_type() -> GType;
1784
1785    //=========================================================================
1786    // GtkSourceCompletionActivation
1787    //=========================================================================
1788    pub fn gtk_source_completion_activation_get_type() -> GType;
1789
1790    //=========================================================================
1791    // GtkSourceCompletionColumn
1792    //=========================================================================
1793    pub fn gtk_source_completion_column_get_type() -> GType;
1794
1795    //=========================================================================
1796    // GtkSourceCompressionType
1797    //=========================================================================
1798    pub fn gtk_source_compression_type_get_type() -> GType;
1799
1800    //=========================================================================
1801    // GtkSourceFileLoaderError
1802    //=========================================================================
1803    pub fn gtk_source_file_loader_error_get_type() -> GType;
1804    pub fn gtk_source_file_loader_error_quark() -> glib::GQuark;
1805
1806    //=========================================================================
1807    // GtkSourceFileSaverError
1808    //=========================================================================
1809    pub fn gtk_source_file_saver_error_get_type() -> GType;
1810    pub fn gtk_source_file_saver_error_quark() -> glib::GQuark;
1811
1812    //=========================================================================
1813    // GtkSourceGutterRendererAlignmentMode
1814    //=========================================================================
1815    pub fn gtk_source_gutter_renderer_alignment_mode_get_type() -> GType;
1816
1817    //=========================================================================
1818    // GtkSourceNewlineType
1819    //=========================================================================
1820    pub fn gtk_source_newline_type_get_type() -> GType;
1821
1822    //=========================================================================
1823    // GtkSourceSmartHomeEndType
1824    //=========================================================================
1825    pub fn gtk_source_smart_home_end_type_get_type() -> GType;
1826
1827    //=========================================================================
1828    // GtkSourceViewGutterPosition
1829    //=========================================================================
1830    pub fn gtk_source_view_gutter_position_get_type() -> GType;
1831
1832    //=========================================================================
1833    // GtkSourceFileSaverFlags
1834    //=========================================================================
1835    pub fn gtk_source_file_saver_flags_get_type() -> GType;
1836
1837    //=========================================================================
1838    // GtkSourceSortFlags
1839    //=========================================================================
1840    pub fn gtk_source_sort_flags_get_type() -> GType;
1841
1842    //=========================================================================
1843    // GtkSourceSpaceLocationFlags
1844    //=========================================================================
1845    pub fn gtk_source_space_location_flags_get_type() -> GType;
1846
1847    //=========================================================================
1848    // GtkSourceSpaceTypeFlags
1849    //=========================================================================
1850    pub fn gtk_source_space_type_flags_get_type() -> GType;
1851
1852    //=========================================================================
1853    // GtkSourceEncoding
1854    //=========================================================================
1855    pub fn gtk_source_encoding_get_type() -> GType;
1856    pub fn gtk_source_encoding_copy(enc: *const GtkSourceEncoding) -> *mut GtkSourceEncoding;
1857    pub fn gtk_source_encoding_free(enc: *mut GtkSourceEncoding);
1858    pub fn gtk_source_encoding_get_charset(enc: *const GtkSourceEncoding) -> *const c_char;
1859    pub fn gtk_source_encoding_get_name(enc: *const GtkSourceEncoding) -> *const c_char;
1860    pub fn gtk_source_encoding_to_string(enc: *const GtkSourceEncoding) -> *mut c_char;
1861    pub fn gtk_source_encoding_get_all() -> *mut glib::GSList;
1862    pub fn gtk_source_encoding_get_current() -> *const GtkSourceEncoding;
1863    pub fn gtk_source_encoding_get_default_candidates() -> *mut glib::GSList;
1864    pub fn gtk_source_encoding_get_from_charset(charset: *const c_char)
1865        -> *const GtkSourceEncoding;
1866    pub fn gtk_source_encoding_get_utf8() -> *const GtkSourceEncoding;
1867
1868    //=========================================================================
1869    // GtkSourceRegionIter
1870    //=========================================================================
1871    pub fn gtk_source_region_iter_get_subregion(
1872        iter: *mut GtkSourceRegionIter,
1873        start: *mut gtk::GtkTextIter,
1874        end: *mut gtk::GtkTextIter,
1875    ) -> gboolean;
1876    pub fn gtk_source_region_iter_is_end(iter: *mut GtkSourceRegionIter) -> gboolean;
1877    pub fn gtk_source_region_iter_next(iter: *mut GtkSourceRegionIter) -> gboolean;
1878
1879    //=========================================================================
1880    // GtkSourceAnnotation
1881    //=========================================================================
1882    #[cfg(feature = "v5_18")]
1883    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1884    pub fn gtk_source_annotation_get_type() -> GType;
1885    #[cfg(feature = "v5_18")]
1886    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1887    pub fn gtk_source_annotation_new(
1888        description: *const c_char,
1889        icon: *mut gio::GIcon,
1890        line: c_int,
1891        style: GtkSourceAnnotationStyle,
1892    ) -> *mut GtkSourceAnnotation;
1893    #[cfg(feature = "v5_18")]
1894    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1895    pub fn gtk_source_annotation_get_description(self_: *mut GtkSourceAnnotation) -> *const c_char;
1896    #[cfg(feature = "v5_18")]
1897    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1898    pub fn gtk_source_annotation_get_icon(self_: *mut GtkSourceAnnotation) -> *mut gio::GIcon;
1899    #[cfg(feature = "v5_18")]
1900    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1901    pub fn gtk_source_annotation_get_line(self_: *mut GtkSourceAnnotation) -> c_int;
1902    #[cfg(feature = "v5_18")]
1903    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1904    pub fn gtk_source_annotation_get_style(
1905        self_: *mut GtkSourceAnnotation,
1906    ) -> GtkSourceAnnotationStyle;
1907
1908    //=========================================================================
1909    // GtkSourceAnnotationProvider
1910    //=========================================================================
1911    #[cfg(feature = "v5_18")]
1912    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1913    pub fn gtk_source_annotation_provider_get_type() -> GType;
1914    #[cfg(feature = "v5_18")]
1915    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1916    pub fn gtk_source_annotation_provider_new() -> *mut GtkSourceAnnotationProvider;
1917    #[cfg(feature = "v5_18")]
1918    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1919    pub fn gtk_source_annotation_provider_add_annotation(
1920        self_: *mut GtkSourceAnnotationProvider,
1921        annotation: *mut GtkSourceAnnotation,
1922    );
1923    #[cfg(feature = "v5_18")]
1924    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1925    pub fn gtk_source_annotation_provider_populate_hover_async(
1926        self_: *mut GtkSourceAnnotationProvider,
1927        annotation: *mut GtkSourceAnnotation,
1928        display: *mut GtkSourceHoverDisplay,
1929        cancellable: *mut gio::GCancellable,
1930        callback: gio::GAsyncReadyCallback,
1931        user_data: gpointer,
1932    );
1933    #[cfg(feature = "v5_18")]
1934    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1935    pub fn gtk_source_annotation_provider_populate_hover_finish(
1936        self_: *mut GtkSourceAnnotationProvider,
1937        result: *mut gio::GAsyncResult,
1938        error: *mut *mut glib::GError,
1939    ) -> gboolean;
1940    #[cfg(feature = "v5_18")]
1941    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1942    pub fn gtk_source_annotation_provider_remove_all(self_: *mut GtkSourceAnnotationProvider);
1943    #[cfg(feature = "v5_18")]
1944    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1945    pub fn gtk_source_annotation_provider_remove_annotation(
1946        self_: *mut GtkSourceAnnotationProvider,
1947        annotation: *mut GtkSourceAnnotation,
1948    ) -> gboolean;
1949
1950    //=========================================================================
1951    // GtkSourceAnnotations
1952    //=========================================================================
1953    #[cfg(feature = "v5_18")]
1954    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1955    pub fn gtk_source_annotations_get_type() -> GType;
1956    #[cfg(feature = "v5_18")]
1957    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1958    pub fn gtk_source_annotations_add_provider(
1959        self_: *mut GtkSourceAnnotations,
1960        provider: *mut GtkSourceAnnotationProvider,
1961    );
1962    #[cfg(feature = "v5_18")]
1963    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
1964    pub fn gtk_source_annotations_remove_provider(
1965        self_: *mut GtkSourceAnnotations,
1966        provider: *mut GtkSourceAnnotationProvider,
1967    ) -> gboolean;
1968
1969    //=========================================================================
1970    // GtkSourceBuffer
1971    //=========================================================================
1972    pub fn gtk_source_buffer_get_type() -> GType;
1973    pub fn gtk_source_buffer_new(table: *mut gtk::GtkTextTagTable) -> *mut GtkSourceBuffer;
1974    pub fn gtk_source_buffer_new_with_language(
1975        language: *mut GtkSourceLanguage,
1976    ) -> *mut GtkSourceBuffer;
1977    pub fn gtk_source_buffer_backward_iter_to_source_mark(
1978        buffer: *mut GtkSourceBuffer,
1979        iter: *mut gtk::GtkTextIter,
1980        category: *const c_char,
1981    ) -> gboolean;
1982    pub fn gtk_source_buffer_change_case(
1983        buffer: *mut GtkSourceBuffer,
1984        case_type: GtkSourceChangeCaseType,
1985        start: *mut gtk::GtkTextIter,
1986        end: *mut gtk::GtkTextIter,
1987    );
1988    pub fn gtk_source_buffer_create_source_mark(
1989        buffer: *mut GtkSourceBuffer,
1990        name: *const c_char,
1991        category: *const c_char,
1992        where_: *const gtk::GtkTextIter,
1993    ) -> *mut GtkSourceMark;
1994    pub fn gtk_source_buffer_create_source_tag(
1995        buffer: *mut GtkSourceBuffer,
1996        tag_name: *const c_char,
1997        first_property_name: *const c_char,
1998        ...
1999    ) -> *mut gtk::GtkTextTag;
2000    pub fn gtk_source_buffer_ensure_highlight(
2001        buffer: *mut GtkSourceBuffer,
2002        start: *const gtk::GtkTextIter,
2003        end: *const gtk::GtkTextIter,
2004    );
2005    pub fn gtk_source_buffer_forward_iter_to_source_mark(
2006        buffer: *mut GtkSourceBuffer,
2007        iter: *mut gtk::GtkTextIter,
2008        category: *const c_char,
2009    ) -> gboolean;
2010    pub fn gtk_source_buffer_get_context_classes_at_iter(
2011        buffer: *mut GtkSourceBuffer,
2012        iter: *const gtk::GtkTextIter,
2013    ) -> *mut *mut c_char;
2014    pub fn gtk_source_buffer_get_highlight_matching_brackets(
2015        buffer: *mut GtkSourceBuffer,
2016    ) -> gboolean;
2017    pub fn gtk_source_buffer_get_highlight_syntax(buffer: *mut GtkSourceBuffer) -> gboolean;
2018    pub fn gtk_source_buffer_get_implicit_trailing_newline(
2019        buffer: *mut GtkSourceBuffer,
2020    ) -> gboolean;
2021    pub fn gtk_source_buffer_get_language(buffer: *mut GtkSourceBuffer) -> *mut GtkSourceLanguage;
2022    pub fn gtk_source_buffer_get_loading(buffer: *mut GtkSourceBuffer) -> gboolean;
2023    #[cfg(feature = "v5_18")]
2024    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
2025    pub fn gtk_source_buffer_get_markup(
2026        buffer: *mut GtkSourceBuffer,
2027        start: *mut gtk::GtkTextIter,
2028        end: *mut gtk::GtkTextIter,
2029    ) -> *mut c_char;
2030    pub fn gtk_source_buffer_get_source_marks_at_iter(
2031        buffer: *mut GtkSourceBuffer,
2032        iter: *mut gtk::GtkTextIter,
2033        category: *const c_char,
2034    ) -> *mut glib::GSList;
2035    pub fn gtk_source_buffer_get_source_marks_at_line(
2036        buffer: *mut GtkSourceBuffer,
2037        line: c_int,
2038        category: *const c_char,
2039    ) -> *mut glib::GSList;
2040    pub fn gtk_source_buffer_get_style_scheme(
2041        buffer: *mut GtkSourceBuffer,
2042    ) -> *mut GtkSourceStyleScheme;
2043    pub fn gtk_source_buffer_iter_backward_to_context_class_toggle(
2044        buffer: *mut GtkSourceBuffer,
2045        iter: *mut gtk::GtkTextIter,
2046        context_class: *const c_char,
2047    ) -> gboolean;
2048    pub fn gtk_source_buffer_iter_forward_to_context_class_toggle(
2049        buffer: *mut GtkSourceBuffer,
2050        iter: *mut gtk::GtkTextIter,
2051        context_class: *const c_char,
2052    ) -> gboolean;
2053    pub fn gtk_source_buffer_iter_has_context_class(
2054        buffer: *mut GtkSourceBuffer,
2055        iter: *const gtk::GtkTextIter,
2056        context_class: *const c_char,
2057    ) -> gboolean;
2058    pub fn gtk_source_buffer_join_lines(
2059        buffer: *mut GtkSourceBuffer,
2060        start: *mut gtk::GtkTextIter,
2061        end: *mut gtk::GtkTextIter,
2062    );
2063    pub fn gtk_source_buffer_remove_source_marks(
2064        buffer: *mut GtkSourceBuffer,
2065        start: *const gtk::GtkTextIter,
2066        end: *const gtk::GtkTextIter,
2067        category: *const c_char,
2068    );
2069    pub fn gtk_source_buffer_set_highlight_matching_brackets(
2070        buffer: *mut GtkSourceBuffer,
2071        highlight: gboolean,
2072    );
2073    pub fn gtk_source_buffer_set_highlight_syntax(
2074        buffer: *mut GtkSourceBuffer,
2075        highlight: gboolean,
2076    );
2077    pub fn gtk_source_buffer_set_implicit_trailing_newline(
2078        buffer: *mut GtkSourceBuffer,
2079        implicit_trailing_newline: gboolean,
2080    );
2081    pub fn gtk_source_buffer_set_language(
2082        buffer: *mut GtkSourceBuffer,
2083        language: *mut GtkSourceLanguage,
2084    );
2085    pub fn gtk_source_buffer_set_style_scheme(
2086        buffer: *mut GtkSourceBuffer,
2087        scheme: *mut GtkSourceStyleScheme,
2088    );
2089    pub fn gtk_source_buffer_sort_lines(
2090        buffer: *mut GtkSourceBuffer,
2091        start: *mut gtk::GtkTextIter,
2092        end: *mut gtk::GtkTextIter,
2093        flags: GtkSourceSortFlags,
2094        column: c_int,
2095    );
2096
2097    //=========================================================================
2098    // GtkSourceCompletion
2099    //=========================================================================
2100    pub fn gtk_source_completion_get_type() -> GType;
2101    pub fn gtk_source_completion_fuzzy_highlight(
2102        haystack: *const c_char,
2103        casefold_query: *const c_char,
2104    ) -> *mut pango::PangoAttrList;
2105    pub fn gtk_source_completion_fuzzy_match(
2106        haystack: *const c_char,
2107        casefold_needle: *const c_char,
2108        priority: *mut c_uint,
2109    ) -> gboolean;
2110    pub fn gtk_source_completion_add_provider(
2111        self_: *mut GtkSourceCompletion,
2112        provider: *mut GtkSourceCompletionProvider,
2113    );
2114    pub fn gtk_source_completion_block_interactive(self_: *mut GtkSourceCompletion);
2115    pub fn gtk_source_completion_get_buffer(
2116        self_: *mut GtkSourceCompletion,
2117    ) -> *mut GtkSourceBuffer;
2118    pub fn gtk_source_completion_get_page_size(self_: *mut GtkSourceCompletion) -> c_uint;
2119    pub fn gtk_source_completion_get_view(self_: *mut GtkSourceCompletion) -> *mut GtkSourceView;
2120    pub fn gtk_source_completion_hide(self_: *mut GtkSourceCompletion);
2121    pub fn gtk_source_completion_remove_provider(
2122        self_: *mut GtkSourceCompletion,
2123        provider: *mut GtkSourceCompletionProvider,
2124    );
2125    pub fn gtk_source_completion_set_page_size(self_: *mut GtkSourceCompletion, page_size: c_uint);
2126    pub fn gtk_source_completion_show(self_: *mut GtkSourceCompletion);
2127    pub fn gtk_source_completion_unblock_interactive(self_: *mut GtkSourceCompletion);
2128
2129    //=========================================================================
2130    // GtkSourceCompletionCell
2131    //=========================================================================
2132    pub fn gtk_source_completion_cell_get_type() -> GType;
2133    pub fn gtk_source_completion_cell_get_column(
2134        self_: *mut GtkSourceCompletionCell,
2135    ) -> GtkSourceCompletionColumn;
2136    pub fn gtk_source_completion_cell_get_widget(
2137        self_: *mut GtkSourceCompletionCell,
2138    ) -> *mut gtk::GtkWidget;
2139    pub fn gtk_source_completion_cell_set_gicon(
2140        self_: *mut GtkSourceCompletionCell,
2141        gicon: *mut gio::GIcon,
2142    );
2143    pub fn gtk_source_completion_cell_set_icon_name(
2144        self_: *mut GtkSourceCompletionCell,
2145        icon_name: *const c_char,
2146    );
2147    pub fn gtk_source_completion_cell_set_markup(
2148        self_: *mut GtkSourceCompletionCell,
2149        markup: *const c_char,
2150    );
2151    pub fn gtk_source_completion_cell_set_paintable(
2152        self_: *mut GtkSourceCompletionCell,
2153        paintable: *mut gdk::GdkPaintable,
2154    );
2155    pub fn gtk_source_completion_cell_set_text(
2156        self_: *mut GtkSourceCompletionCell,
2157        text: *const c_char,
2158    );
2159    pub fn gtk_source_completion_cell_set_text_with_attributes(
2160        self_: *mut GtkSourceCompletionCell,
2161        text: *const c_char,
2162        attrs: *mut pango::PangoAttrList,
2163    );
2164    pub fn gtk_source_completion_cell_set_widget(
2165        self_: *mut GtkSourceCompletionCell,
2166        child: *mut gtk::GtkWidget,
2167    );
2168
2169    //=========================================================================
2170    // GtkSourceCompletionContext
2171    //=========================================================================
2172    pub fn gtk_source_completion_context_get_type() -> GType;
2173    pub fn gtk_source_completion_context_get_activation(
2174        self_: *mut GtkSourceCompletionContext,
2175    ) -> GtkSourceCompletionActivation;
2176    pub fn gtk_source_completion_context_get_bounds(
2177        self_: *mut GtkSourceCompletionContext,
2178        begin: *mut gtk::GtkTextIter,
2179        end: *mut gtk::GtkTextIter,
2180    ) -> gboolean;
2181    pub fn gtk_source_completion_context_get_buffer(
2182        self_: *mut GtkSourceCompletionContext,
2183    ) -> *mut GtkSourceBuffer;
2184    pub fn gtk_source_completion_context_get_busy(
2185        self_: *mut GtkSourceCompletionContext,
2186    ) -> gboolean;
2187    pub fn gtk_source_completion_context_get_completion(
2188        self_: *mut GtkSourceCompletionContext,
2189    ) -> *mut GtkSourceCompletion;
2190    pub fn gtk_source_completion_context_get_empty(
2191        self_: *mut GtkSourceCompletionContext,
2192    ) -> gboolean;
2193    pub fn gtk_source_completion_context_get_language(
2194        self_: *mut GtkSourceCompletionContext,
2195    ) -> *mut GtkSourceLanguage;
2196    #[cfg(feature = "v5_6")]
2197    #[cfg_attr(docsrs, doc(cfg(feature = "v5_6")))]
2198    pub fn gtk_source_completion_context_get_proposals_for_provider(
2199        self_: *mut GtkSourceCompletionContext,
2200        provider: *mut GtkSourceCompletionProvider,
2201    ) -> *mut gio::GListModel;
2202    pub fn gtk_source_completion_context_get_view(
2203        self_: *mut GtkSourceCompletionContext,
2204    ) -> *mut GtkSourceView;
2205    pub fn gtk_source_completion_context_get_word(
2206        self_: *mut GtkSourceCompletionContext,
2207    ) -> *mut c_char;
2208    #[cfg(feature = "v5_6")]
2209    #[cfg_attr(docsrs, doc(cfg(feature = "v5_6")))]
2210    pub fn gtk_source_completion_context_list_providers(
2211        self_: *mut GtkSourceCompletionContext,
2212    ) -> *mut gio::GListModel;
2213    pub fn gtk_source_completion_context_set_proposals_for_provider(
2214        self_: *mut GtkSourceCompletionContext,
2215        provider: *mut GtkSourceCompletionProvider,
2216        results: *mut gio::GListModel,
2217    );
2218
2219    //=========================================================================
2220    // GtkSourceCompletionSnippets
2221    //=========================================================================
2222    pub fn gtk_source_completion_snippets_get_type() -> GType;
2223    pub fn gtk_source_completion_snippets_new() -> *mut GtkSourceCompletionSnippets;
2224
2225    //=========================================================================
2226    // GtkSourceCompletionWords
2227    //=========================================================================
2228    pub fn gtk_source_completion_words_get_type() -> GType;
2229    pub fn gtk_source_completion_words_new(title: *const c_char) -> *mut GtkSourceCompletionWords;
2230    pub fn gtk_source_completion_words_register(
2231        words: *mut GtkSourceCompletionWords,
2232        buffer: *mut gtk::GtkTextBuffer,
2233    );
2234    pub fn gtk_source_completion_words_unregister(
2235        words: *mut GtkSourceCompletionWords,
2236        buffer: *mut gtk::GtkTextBuffer,
2237    );
2238
2239    //=========================================================================
2240    // GtkSourceFile
2241    //=========================================================================
2242    pub fn gtk_source_file_get_type() -> GType;
2243    pub fn gtk_source_file_new() -> *mut GtkSourceFile;
2244    pub fn gtk_source_file_check_file_on_disk(file: *mut GtkSourceFile);
2245    pub fn gtk_source_file_get_compression_type(
2246        file: *mut GtkSourceFile,
2247    ) -> GtkSourceCompressionType;
2248    pub fn gtk_source_file_get_encoding(file: *mut GtkSourceFile) -> *const GtkSourceEncoding;
2249    pub fn gtk_source_file_get_location(file: *mut GtkSourceFile) -> *mut gio::GFile;
2250    pub fn gtk_source_file_get_newline_type(file: *mut GtkSourceFile) -> GtkSourceNewlineType;
2251    pub fn gtk_source_file_is_deleted(file: *mut GtkSourceFile) -> gboolean;
2252    pub fn gtk_source_file_is_externally_modified(file: *mut GtkSourceFile) -> gboolean;
2253    pub fn gtk_source_file_is_local(file: *mut GtkSourceFile) -> gboolean;
2254    pub fn gtk_source_file_is_readonly(file: *mut GtkSourceFile) -> gboolean;
2255    pub fn gtk_source_file_set_location(file: *mut GtkSourceFile, location: *mut gio::GFile);
2256    pub fn gtk_source_file_set_mount_operation_factory(
2257        file: *mut GtkSourceFile,
2258        callback: GtkSourceMountOperationFactory,
2259        user_data: gpointer,
2260        notify: glib::GDestroyNotify,
2261    );
2262
2263    //=========================================================================
2264    // GtkSourceFileLoader
2265    //=========================================================================
2266    pub fn gtk_source_file_loader_get_type() -> GType;
2267    pub fn gtk_source_file_loader_new(
2268        buffer: *mut GtkSourceBuffer,
2269        file: *mut GtkSourceFile,
2270    ) -> *mut GtkSourceFileLoader;
2271    pub fn gtk_source_file_loader_new_from_stream(
2272        buffer: *mut GtkSourceBuffer,
2273        file: *mut GtkSourceFile,
2274        stream: *mut gio::GInputStream,
2275    ) -> *mut GtkSourceFileLoader;
2276    pub fn gtk_source_file_loader_get_buffer(
2277        loader: *mut GtkSourceFileLoader,
2278    ) -> *mut GtkSourceBuffer;
2279    pub fn gtk_source_file_loader_get_compression_type(
2280        loader: *mut GtkSourceFileLoader,
2281    ) -> GtkSourceCompressionType;
2282    pub fn gtk_source_file_loader_get_encoding(
2283        loader: *mut GtkSourceFileLoader,
2284    ) -> *const GtkSourceEncoding;
2285    pub fn gtk_source_file_loader_get_file(loader: *mut GtkSourceFileLoader) -> *mut GtkSourceFile;
2286    pub fn gtk_source_file_loader_get_input_stream(
2287        loader: *mut GtkSourceFileLoader,
2288    ) -> *mut gio::GInputStream;
2289    pub fn gtk_source_file_loader_get_location(loader: *mut GtkSourceFileLoader)
2290        -> *mut gio::GFile;
2291    pub fn gtk_source_file_loader_get_newline_type(
2292        loader: *mut GtkSourceFileLoader,
2293    ) -> GtkSourceNewlineType;
2294    pub fn gtk_source_file_loader_load_async(
2295        loader: *mut GtkSourceFileLoader,
2296        io_priority: c_int,
2297        cancellable: *mut gio::GCancellable,
2298        progress_callback: gio::GFileProgressCallback,
2299        progress_callback_data: gpointer,
2300        progress_callback_notify: glib::GDestroyNotify,
2301        callback: gio::GAsyncReadyCallback,
2302        user_data: gpointer,
2303    );
2304    pub fn gtk_source_file_loader_load_finish(
2305        loader: *mut GtkSourceFileLoader,
2306        result: *mut gio::GAsyncResult,
2307        error: *mut *mut glib::GError,
2308    ) -> gboolean;
2309    pub fn gtk_source_file_loader_set_candidate_encodings(
2310        loader: *mut GtkSourceFileLoader,
2311        candidate_encodings: *mut glib::GSList,
2312    );
2313
2314    //=========================================================================
2315    // GtkSourceFileSaver
2316    //=========================================================================
2317    pub fn gtk_source_file_saver_get_type() -> GType;
2318    pub fn gtk_source_file_saver_new(
2319        buffer: *mut GtkSourceBuffer,
2320        file: *mut GtkSourceFile,
2321    ) -> *mut GtkSourceFileSaver;
2322    pub fn gtk_source_file_saver_new_with_target(
2323        buffer: *mut GtkSourceBuffer,
2324        file: *mut GtkSourceFile,
2325        target_location: *mut gio::GFile,
2326    ) -> *mut GtkSourceFileSaver;
2327    pub fn gtk_source_file_saver_get_buffer(saver: *mut GtkSourceFileSaver)
2328        -> *mut GtkSourceBuffer;
2329    pub fn gtk_source_file_saver_get_compression_type(
2330        saver: *mut GtkSourceFileSaver,
2331    ) -> GtkSourceCompressionType;
2332    pub fn gtk_source_file_saver_get_encoding(
2333        saver: *mut GtkSourceFileSaver,
2334    ) -> *const GtkSourceEncoding;
2335    pub fn gtk_source_file_saver_get_file(saver: *mut GtkSourceFileSaver) -> *mut GtkSourceFile;
2336    pub fn gtk_source_file_saver_get_flags(
2337        saver: *mut GtkSourceFileSaver,
2338    ) -> GtkSourceFileSaverFlags;
2339    pub fn gtk_source_file_saver_get_location(saver: *mut GtkSourceFileSaver) -> *mut gio::GFile;
2340    pub fn gtk_source_file_saver_get_newline_type(
2341        saver: *mut GtkSourceFileSaver,
2342    ) -> GtkSourceNewlineType;
2343    pub fn gtk_source_file_saver_save_async(
2344        saver: *mut GtkSourceFileSaver,
2345        io_priority: c_int,
2346        cancellable: *mut gio::GCancellable,
2347        progress_callback: gio::GFileProgressCallback,
2348        progress_callback_data: gpointer,
2349        progress_callback_notify: glib::GDestroyNotify,
2350        callback: gio::GAsyncReadyCallback,
2351        user_data: gpointer,
2352    );
2353    pub fn gtk_source_file_saver_save_finish(
2354        saver: *mut GtkSourceFileSaver,
2355        result: *mut gio::GAsyncResult,
2356        error: *mut *mut glib::GError,
2357    ) -> gboolean;
2358    pub fn gtk_source_file_saver_set_compression_type(
2359        saver: *mut GtkSourceFileSaver,
2360        compression_type: GtkSourceCompressionType,
2361    );
2362    pub fn gtk_source_file_saver_set_encoding(
2363        saver: *mut GtkSourceFileSaver,
2364        encoding: *const GtkSourceEncoding,
2365    );
2366    pub fn gtk_source_file_saver_set_flags(
2367        saver: *mut GtkSourceFileSaver,
2368        flags: GtkSourceFileSaverFlags,
2369    );
2370    pub fn gtk_source_file_saver_set_newline_type(
2371        saver: *mut GtkSourceFileSaver,
2372        newline_type: GtkSourceNewlineType,
2373    );
2374
2375    //=========================================================================
2376    // GtkSourceGutter
2377    //=========================================================================
2378    pub fn gtk_source_gutter_get_type() -> GType;
2379    pub fn gtk_source_gutter_get_view(gutter: *mut GtkSourceGutter) -> *mut GtkSourceView;
2380    pub fn gtk_source_gutter_insert(
2381        gutter: *mut GtkSourceGutter,
2382        renderer: *mut GtkSourceGutterRenderer,
2383        position: c_int,
2384    ) -> gboolean;
2385    pub fn gtk_source_gutter_remove(
2386        gutter: *mut GtkSourceGutter,
2387        renderer: *mut GtkSourceGutterRenderer,
2388    );
2389    pub fn gtk_source_gutter_reorder(
2390        gutter: *mut GtkSourceGutter,
2391        renderer: *mut GtkSourceGutterRenderer,
2392        position: c_int,
2393    );
2394
2395    //=========================================================================
2396    // GtkSourceGutterLines
2397    //=========================================================================
2398    pub fn gtk_source_gutter_lines_get_type() -> GType;
2399    pub fn gtk_source_gutter_lines_add_class(
2400        lines: *mut GtkSourceGutterLines,
2401        line: c_uint,
2402        name: *const c_char,
2403    );
2404    pub fn gtk_source_gutter_lines_add_qclass(
2405        lines: *mut GtkSourceGutterLines,
2406        line: c_uint,
2407        qname: glib::GQuark,
2408    );
2409    pub fn gtk_source_gutter_lines_get_buffer(
2410        lines: *mut GtkSourceGutterLines,
2411    ) -> *mut gtk::GtkTextBuffer;
2412    pub fn gtk_source_gutter_lines_get_first(lines: *mut GtkSourceGutterLines) -> c_uint;
2413    pub fn gtk_source_gutter_lines_get_iter_at_line(
2414        lines: *mut GtkSourceGutterLines,
2415        iter: *mut gtk::GtkTextIter,
2416        line: c_uint,
2417    );
2418    pub fn gtk_source_gutter_lines_get_last(lines: *mut GtkSourceGutterLines) -> c_uint;
2419    #[cfg(feature = "v5_18")]
2420    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
2421    pub fn gtk_source_gutter_lines_get_line_extent(
2422        lines: *mut GtkSourceGutterLines,
2423        line: c_uint,
2424        mode: GtkSourceGutterRendererAlignmentMode,
2425        y: *mut c_double,
2426        height: *mut c_double,
2427    );
2428    pub fn gtk_source_gutter_lines_get_line_yrange(
2429        lines: *mut GtkSourceGutterLines,
2430        line: c_uint,
2431        mode: GtkSourceGutterRendererAlignmentMode,
2432        y: *mut c_int,
2433        height: *mut c_int,
2434    );
2435    pub fn gtk_source_gutter_lines_get_view(
2436        lines: *mut GtkSourceGutterLines,
2437    ) -> *mut gtk::GtkTextView;
2438    #[cfg(feature = "v5_6")]
2439    #[cfg_attr(docsrs, doc(cfg(feature = "v5_6")))]
2440    pub fn gtk_source_gutter_lines_has_any_class(
2441        lines: *mut GtkSourceGutterLines,
2442        line: c_uint,
2443    ) -> gboolean;
2444    pub fn gtk_source_gutter_lines_has_class(
2445        lines: *mut GtkSourceGutterLines,
2446        line: c_uint,
2447        name: *const c_char,
2448    ) -> gboolean;
2449    pub fn gtk_source_gutter_lines_has_qclass(
2450        lines: *mut GtkSourceGutterLines,
2451        line: c_uint,
2452        qname: glib::GQuark,
2453    ) -> gboolean;
2454    pub fn gtk_source_gutter_lines_is_cursor(
2455        lines: *mut GtkSourceGutterLines,
2456        line: c_uint,
2457    ) -> gboolean;
2458    pub fn gtk_source_gutter_lines_is_prelit(
2459        lines: *mut GtkSourceGutterLines,
2460        line: c_uint,
2461    ) -> gboolean;
2462    pub fn gtk_source_gutter_lines_is_selected(
2463        lines: *mut GtkSourceGutterLines,
2464        line: c_uint,
2465    ) -> gboolean;
2466    pub fn gtk_source_gutter_lines_remove_class(
2467        lines: *mut GtkSourceGutterLines,
2468        line: c_uint,
2469        name: *const c_char,
2470    );
2471    pub fn gtk_source_gutter_lines_remove_qclass(
2472        lines: *mut GtkSourceGutterLines,
2473        line: c_uint,
2474        qname: glib::GQuark,
2475    );
2476
2477    //=========================================================================
2478    // GtkSourceGutterRenderer
2479    //=========================================================================
2480    pub fn gtk_source_gutter_renderer_get_type() -> GType;
2481    pub fn gtk_source_gutter_renderer_activate(
2482        renderer: *mut GtkSourceGutterRenderer,
2483        iter: *const gtk::GtkTextIter,
2484        area: *const gdk::GdkRectangle,
2485        button: c_uint,
2486        state: gdk::GdkModifierType,
2487        n_presses: c_int,
2488    );
2489    pub fn gtk_source_gutter_renderer_align_cell(
2490        renderer: *mut GtkSourceGutterRenderer,
2491        line: c_uint,
2492        width: c_float,
2493        height: c_float,
2494        x: *mut c_float,
2495        y: *mut c_float,
2496    );
2497    pub fn gtk_source_gutter_renderer_get_alignment_mode(
2498        renderer: *mut GtkSourceGutterRenderer,
2499    ) -> GtkSourceGutterRendererAlignmentMode;
2500    pub fn gtk_source_gutter_renderer_get_buffer(
2501        renderer: *mut GtkSourceGutterRenderer,
2502    ) -> *mut GtkSourceBuffer;
2503    pub fn gtk_source_gutter_renderer_get_view(
2504        renderer: *mut GtkSourceGutterRenderer,
2505    ) -> *mut GtkSourceView;
2506    pub fn gtk_source_gutter_renderer_get_xalign(renderer: *mut GtkSourceGutterRenderer)
2507        -> c_float;
2508    pub fn gtk_source_gutter_renderer_get_xpad(renderer: *mut GtkSourceGutterRenderer) -> c_int;
2509    pub fn gtk_source_gutter_renderer_get_yalign(renderer: *mut GtkSourceGutterRenderer)
2510        -> c_float;
2511    pub fn gtk_source_gutter_renderer_get_ypad(renderer: *mut GtkSourceGutterRenderer) -> c_int;
2512    pub fn gtk_source_gutter_renderer_query_activatable(
2513        renderer: *mut GtkSourceGutterRenderer,
2514        iter: *const gtk::GtkTextIter,
2515        area: *const gdk::GdkRectangle,
2516    ) -> gboolean;
2517    pub fn gtk_source_gutter_renderer_set_alignment_mode(
2518        renderer: *mut GtkSourceGutterRenderer,
2519        mode: GtkSourceGutterRendererAlignmentMode,
2520    );
2521    pub fn gtk_source_gutter_renderer_set_xalign(
2522        renderer: *mut GtkSourceGutterRenderer,
2523        xalign: c_float,
2524    );
2525    pub fn gtk_source_gutter_renderer_set_xpad(renderer: *mut GtkSourceGutterRenderer, xpad: c_int);
2526    pub fn gtk_source_gutter_renderer_set_yalign(
2527        renderer: *mut GtkSourceGutterRenderer,
2528        yalign: c_float,
2529    );
2530    pub fn gtk_source_gutter_renderer_set_ypad(renderer: *mut GtkSourceGutterRenderer, ypad: c_int);
2531
2532    //=========================================================================
2533    // GtkSourceGutterRendererPixbuf
2534    //=========================================================================
2535    pub fn gtk_source_gutter_renderer_pixbuf_get_type() -> GType;
2536    pub fn gtk_source_gutter_renderer_pixbuf_new() -> *mut GtkSourceGutterRenderer;
2537    pub fn gtk_source_gutter_renderer_pixbuf_get_gicon(
2538        renderer: *mut GtkSourceGutterRendererPixbuf,
2539    ) -> *mut gio::GIcon;
2540    pub fn gtk_source_gutter_renderer_pixbuf_get_icon_name(
2541        renderer: *mut GtkSourceGutterRendererPixbuf,
2542    ) -> *const c_char;
2543    pub fn gtk_source_gutter_renderer_pixbuf_get_paintable(
2544        renderer: *mut GtkSourceGutterRendererPixbuf,
2545    ) -> *mut gdk::GdkPaintable;
2546    pub fn gtk_source_gutter_renderer_pixbuf_get_pixbuf(
2547        renderer: *mut GtkSourceGutterRendererPixbuf,
2548    ) -> *mut gdk_pixbuf::GdkPixbuf;
2549    pub fn gtk_source_gutter_renderer_pixbuf_overlay_paintable(
2550        renderer: *mut GtkSourceGutterRendererPixbuf,
2551        paintable: *mut gdk::GdkPaintable,
2552    );
2553    pub fn gtk_source_gutter_renderer_pixbuf_set_gicon(
2554        renderer: *mut GtkSourceGutterRendererPixbuf,
2555        icon: *mut gio::GIcon,
2556    );
2557    pub fn gtk_source_gutter_renderer_pixbuf_set_icon_name(
2558        renderer: *mut GtkSourceGutterRendererPixbuf,
2559        icon_name: *const c_char,
2560    );
2561    pub fn gtk_source_gutter_renderer_pixbuf_set_paintable(
2562        renderer: *mut GtkSourceGutterRendererPixbuf,
2563        paintable: *mut gdk::GdkPaintable,
2564    );
2565    pub fn gtk_source_gutter_renderer_pixbuf_set_pixbuf(
2566        renderer: *mut GtkSourceGutterRendererPixbuf,
2567        pixbuf: *mut gdk_pixbuf::GdkPixbuf,
2568    );
2569
2570    //=========================================================================
2571    // GtkSourceGutterRendererText
2572    //=========================================================================
2573    pub fn gtk_source_gutter_renderer_text_get_type() -> GType;
2574    pub fn gtk_source_gutter_renderer_text_new() -> *mut GtkSourceGutterRenderer;
2575    pub fn gtk_source_gutter_renderer_text_measure(
2576        renderer: *mut GtkSourceGutterRendererText,
2577        text: *const c_char,
2578        width: *mut c_int,
2579        height: *mut c_int,
2580    );
2581    pub fn gtk_source_gutter_renderer_text_measure_markup(
2582        renderer: *mut GtkSourceGutterRendererText,
2583        markup: *const c_char,
2584        width: *mut c_int,
2585        height: *mut c_int,
2586    );
2587    pub fn gtk_source_gutter_renderer_text_set_markup(
2588        renderer: *mut GtkSourceGutterRendererText,
2589        markup: *const c_char,
2590        length: c_int,
2591    );
2592    pub fn gtk_source_gutter_renderer_text_set_text(
2593        renderer: *mut GtkSourceGutterRendererText,
2594        text: *const c_char,
2595        length: c_int,
2596    );
2597
2598    //=========================================================================
2599    // GtkSourceHover
2600    //=========================================================================
2601    pub fn gtk_source_hover_get_type() -> GType;
2602    pub fn gtk_source_hover_add_provider(
2603        self_: *mut GtkSourceHover,
2604        provider: *mut GtkSourceHoverProvider,
2605    );
2606    pub fn gtk_source_hover_remove_provider(
2607        self_: *mut GtkSourceHover,
2608        provider: *mut GtkSourceHoverProvider,
2609    );
2610
2611    //=========================================================================
2612    // GtkSourceHoverContext
2613    //=========================================================================
2614    pub fn gtk_source_hover_context_get_type() -> GType;
2615    pub fn gtk_source_hover_context_get_bounds(
2616        self_: *mut GtkSourceHoverContext,
2617        begin: *mut gtk::GtkTextIter,
2618        end: *mut gtk::GtkTextIter,
2619    ) -> gboolean;
2620    pub fn gtk_source_hover_context_get_buffer(
2621        self_: *mut GtkSourceHoverContext,
2622    ) -> *mut GtkSourceBuffer;
2623    pub fn gtk_source_hover_context_get_iter(
2624        self_: *mut GtkSourceHoverContext,
2625        iter: *mut gtk::GtkTextIter,
2626    ) -> gboolean;
2627    pub fn gtk_source_hover_context_get_view(
2628        self_: *mut GtkSourceHoverContext,
2629    ) -> *mut GtkSourceView;
2630
2631    //=========================================================================
2632    // GtkSourceHoverDisplay
2633    //=========================================================================
2634    pub fn gtk_source_hover_display_get_type() -> GType;
2635    pub fn gtk_source_hover_display_append(
2636        self_: *mut GtkSourceHoverDisplay,
2637        child: *mut gtk::GtkWidget,
2638    );
2639    pub fn gtk_source_hover_display_insert_after(
2640        self_: *mut GtkSourceHoverDisplay,
2641        child: *mut gtk::GtkWidget,
2642        sibling: *mut gtk::GtkWidget,
2643    );
2644    pub fn gtk_source_hover_display_prepend(
2645        self_: *mut GtkSourceHoverDisplay,
2646        child: *mut gtk::GtkWidget,
2647    );
2648    pub fn gtk_source_hover_display_remove(
2649        self_: *mut GtkSourceHoverDisplay,
2650        child: *mut gtk::GtkWidget,
2651    );
2652
2653    //=========================================================================
2654    // GtkSourceLanguage
2655    //=========================================================================
2656    pub fn gtk_source_language_get_type() -> GType;
2657    pub fn gtk_source_language_get_globs(language: *mut GtkSourceLanguage) -> *mut *mut c_char;
2658    pub fn gtk_source_language_get_hidden(language: *mut GtkSourceLanguage) -> gboolean;
2659    pub fn gtk_source_language_get_id(language: *mut GtkSourceLanguage) -> *const c_char;
2660    pub fn gtk_source_language_get_metadata(
2661        language: *mut GtkSourceLanguage,
2662        name: *const c_char,
2663    ) -> *const c_char;
2664    pub fn gtk_source_language_get_mime_types(language: *mut GtkSourceLanguage)
2665        -> *mut *mut c_char;
2666    pub fn gtk_source_language_get_name(language: *mut GtkSourceLanguage) -> *const c_char;
2667    pub fn gtk_source_language_get_section(language: *mut GtkSourceLanguage) -> *const c_char;
2668    pub fn gtk_source_language_get_style_fallback(
2669        language: *mut GtkSourceLanguage,
2670        style_id: *const c_char,
2671    ) -> *const c_char;
2672    pub fn gtk_source_language_get_style_ids(language: *mut GtkSourceLanguage) -> *mut *mut c_char;
2673    pub fn gtk_source_language_get_style_name(
2674        language: *mut GtkSourceLanguage,
2675        style_id: *const c_char,
2676    ) -> *const c_char;
2677
2678    //=========================================================================
2679    // GtkSourceLanguageManager
2680    //=========================================================================
2681    pub fn gtk_source_language_manager_get_type() -> GType;
2682    pub fn gtk_source_language_manager_new() -> *mut GtkSourceLanguageManager;
2683    pub fn gtk_source_language_manager_get_default() -> *mut GtkSourceLanguageManager;
2684    #[cfg(feature = "v5_4")]
2685    #[cfg_attr(docsrs, doc(cfg(feature = "v5_4")))]
2686    pub fn gtk_source_language_manager_append_search_path(
2687        lm: *mut GtkSourceLanguageManager,
2688        path: *const c_char,
2689    );
2690    pub fn gtk_source_language_manager_get_language(
2691        lm: *mut GtkSourceLanguageManager,
2692        id: *const c_char,
2693    ) -> *mut GtkSourceLanguage;
2694    pub fn gtk_source_language_manager_get_language_ids(
2695        lm: *mut GtkSourceLanguageManager,
2696    ) -> *const *const c_char;
2697    pub fn gtk_source_language_manager_get_search_path(
2698        lm: *mut GtkSourceLanguageManager,
2699    ) -> *const *const c_char;
2700    pub fn gtk_source_language_manager_guess_language(
2701        lm: *mut GtkSourceLanguageManager,
2702        filename: *const c_char,
2703        content_type: *const c_char,
2704    ) -> *mut GtkSourceLanguage;
2705    #[cfg(feature = "v5_4")]
2706    #[cfg_attr(docsrs, doc(cfg(feature = "v5_4")))]
2707    pub fn gtk_source_language_manager_prepend_search_path(
2708        lm: *mut GtkSourceLanguageManager,
2709        path: *const c_char,
2710    );
2711    pub fn gtk_source_language_manager_set_search_path(
2712        lm: *mut GtkSourceLanguageManager,
2713        dirs: *const *const c_char,
2714    );
2715
2716    //=========================================================================
2717    // GtkSourceMap
2718    //=========================================================================
2719    pub fn gtk_source_map_get_type() -> GType;
2720    pub fn gtk_source_map_new() -> *mut gtk::GtkWidget;
2721    pub fn gtk_source_map_get_view(map: *mut GtkSourceMap) -> *mut GtkSourceView;
2722    pub fn gtk_source_map_set_view(map: *mut GtkSourceMap, view: *mut GtkSourceView);
2723
2724    //=========================================================================
2725    // GtkSourceMark
2726    //=========================================================================
2727    pub fn gtk_source_mark_get_type() -> GType;
2728    pub fn gtk_source_mark_new(name: *const c_char, category: *const c_char) -> *mut GtkSourceMark;
2729    pub fn gtk_source_mark_get_category(mark: *mut GtkSourceMark) -> *const c_char;
2730    pub fn gtk_source_mark_next(
2731        mark: *mut GtkSourceMark,
2732        category: *const c_char,
2733    ) -> *mut GtkSourceMark;
2734    pub fn gtk_source_mark_prev(
2735        mark: *mut GtkSourceMark,
2736        category: *const c_char,
2737    ) -> *mut GtkSourceMark;
2738
2739    //=========================================================================
2740    // GtkSourceMarkAttributes
2741    //=========================================================================
2742    pub fn gtk_source_mark_attributes_get_type() -> GType;
2743    pub fn gtk_source_mark_attributes_new() -> *mut GtkSourceMarkAttributes;
2744    pub fn gtk_source_mark_attributes_get_background(
2745        attributes: *mut GtkSourceMarkAttributes,
2746        background: *mut gdk::GdkRGBA,
2747    ) -> gboolean;
2748    pub fn gtk_source_mark_attributes_get_gicon(
2749        attributes: *mut GtkSourceMarkAttributes,
2750    ) -> *mut gio::GIcon;
2751    pub fn gtk_source_mark_attributes_get_icon_name(
2752        attributes: *mut GtkSourceMarkAttributes,
2753    ) -> *const c_char;
2754    pub fn gtk_source_mark_attributes_get_pixbuf(
2755        attributes: *mut GtkSourceMarkAttributes,
2756    ) -> *const gdk_pixbuf::GdkPixbuf;
2757    pub fn gtk_source_mark_attributes_get_tooltip_markup(
2758        attributes: *mut GtkSourceMarkAttributes,
2759        mark: *mut GtkSourceMark,
2760    ) -> *mut c_char;
2761    pub fn gtk_source_mark_attributes_get_tooltip_text(
2762        attributes: *mut GtkSourceMarkAttributes,
2763        mark: *mut GtkSourceMark,
2764    ) -> *mut c_char;
2765    pub fn gtk_source_mark_attributes_render_icon(
2766        attributes: *mut GtkSourceMarkAttributes,
2767        widget: *mut gtk::GtkWidget,
2768        size: c_int,
2769    ) -> *mut gdk::GdkPaintable;
2770    pub fn gtk_source_mark_attributes_set_background(
2771        attributes: *mut GtkSourceMarkAttributes,
2772        background: *const gdk::GdkRGBA,
2773    );
2774    pub fn gtk_source_mark_attributes_set_gicon(
2775        attributes: *mut GtkSourceMarkAttributes,
2776        gicon: *mut gio::GIcon,
2777    );
2778    pub fn gtk_source_mark_attributes_set_icon_name(
2779        attributes: *mut GtkSourceMarkAttributes,
2780        icon_name: *const c_char,
2781    );
2782    pub fn gtk_source_mark_attributes_set_pixbuf(
2783        attributes: *mut GtkSourceMarkAttributes,
2784        pixbuf: *const gdk_pixbuf::GdkPixbuf,
2785    );
2786
2787    //=========================================================================
2788    // GtkSourcePrintCompositor
2789    //=========================================================================
2790    pub fn gtk_source_print_compositor_get_type() -> GType;
2791    pub fn gtk_source_print_compositor_new(
2792        buffer: *mut GtkSourceBuffer,
2793    ) -> *mut GtkSourcePrintCompositor;
2794    pub fn gtk_source_print_compositor_new_from_view(
2795        view: *mut GtkSourceView,
2796    ) -> *mut GtkSourcePrintCompositor;
2797    pub fn gtk_source_print_compositor_draw_page(
2798        compositor: *mut GtkSourcePrintCompositor,
2799        context: *mut gtk::GtkPrintContext,
2800        page_nr: c_int,
2801    );
2802    pub fn gtk_source_print_compositor_get_body_font_name(
2803        compositor: *mut GtkSourcePrintCompositor,
2804    ) -> *mut c_char;
2805    pub fn gtk_source_print_compositor_get_bottom_margin(
2806        compositor: *mut GtkSourcePrintCompositor,
2807        unit: gtk::GtkUnit,
2808    ) -> c_double;
2809    pub fn gtk_source_print_compositor_get_buffer(
2810        compositor: *mut GtkSourcePrintCompositor,
2811    ) -> *mut GtkSourceBuffer;
2812    pub fn gtk_source_print_compositor_get_footer_font_name(
2813        compositor: *mut GtkSourcePrintCompositor,
2814    ) -> *mut c_char;
2815    pub fn gtk_source_print_compositor_get_header_font_name(
2816        compositor: *mut GtkSourcePrintCompositor,
2817    ) -> *mut c_char;
2818    pub fn gtk_source_print_compositor_get_highlight_syntax(
2819        compositor: *mut GtkSourcePrintCompositor,
2820    ) -> gboolean;
2821    pub fn gtk_source_print_compositor_get_left_margin(
2822        compositor: *mut GtkSourcePrintCompositor,
2823        unit: gtk::GtkUnit,
2824    ) -> c_double;
2825    pub fn gtk_source_print_compositor_get_line_numbers_font_name(
2826        compositor: *mut GtkSourcePrintCompositor,
2827    ) -> *mut c_char;
2828    pub fn gtk_source_print_compositor_get_n_pages(
2829        compositor: *mut GtkSourcePrintCompositor,
2830    ) -> c_int;
2831    pub fn gtk_source_print_compositor_get_pagination_progress(
2832        compositor: *mut GtkSourcePrintCompositor,
2833    ) -> c_double;
2834    pub fn gtk_source_print_compositor_get_print_footer(
2835        compositor: *mut GtkSourcePrintCompositor,
2836    ) -> gboolean;
2837    pub fn gtk_source_print_compositor_get_print_header(
2838        compositor: *mut GtkSourcePrintCompositor,
2839    ) -> gboolean;
2840    pub fn gtk_source_print_compositor_get_print_line_numbers(
2841        compositor: *mut GtkSourcePrintCompositor,
2842    ) -> c_uint;
2843    pub fn gtk_source_print_compositor_get_right_margin(
2844        compositor: *mut GtkSourcePrintCompositor,
2845        unit: gtk::GtkUnit,
2846    ) -> c_double;
2847    pub fn gtk_source_print_compositor_get_tab_width(
2848        compositor: *mut GtkSourcePrintCompositor,
2849    ) -> c_uint;
2850    pub fn gtk_source_print_compositor_get_top_margin(
2851        compositor: *mut GtkSourcePrintCompositor,
2852        unit: gtk::GtkUnit,
2853    ) -> c_double;
2854    pub fn gtk_source_print_compositor_get_wrap_mode(
2855        compositor: *mut GtkSourcePrintCompositor,
2856    ) -> gtk::GtkWrapMode;
2857    #[cfg(feature = "v5_2")]
2858    #[cfg_attr(docsrs, doc(cfg(feature = "v5_2")))]
2859    pub fn gtk_source_print_compositor_ignore_tag(
2860        compositor: *mut GtkSourcePrintCompositor,
2861        tag: *mut gtk::GtkTextTag,
2862    );
2863    pub fn gtk_source_print_compositor_paginate(
2864        compositor: *mut GtkSourcePrintCompositor,
2865        context: *mut gtk::GtkPrintContext,
2866    ) -> gboolean;
2867    pub fn gtk_source_print_compositor_set_body_font_name(
2868        compositor: *mut GtkSourcePrintCompositor,
2869        font_name: *const c_char,
2870    );
2871    pub fn gtk_source_print_compositor_set_bottom_margin(
2872        compositor: *mut GtkSourcePrintCompositor,
2873        margin: c_double,
2874        unit: gtk::GtkUnit,
2875    );
2876    pub fn gtk_source_print_compositor_set_footer_font_name(
2877        compositor: *mut GtkSourcePrintCompositor,
2878        font_name: *const c_char,
2879    );
2880    pub fn gtk_source_print_compositor_set_footer_format(
2881        compositor: *mut GtkSourcePrintCompositor,
2882        separator: gboolean,
2883        left: *const c_char,
2884        center: *const c_char,
2885        right: *const c_char,
2886    );
2887    pub fn gtk_source_print_compositor_set_header_font_name(
2888        compositor: *mut GtkSourcePrintCompositor,
2889        font_name: *const c_char,
2890    );
2891    pub fn gtk_source_print_compositor_set_header_format(
2892        compositor: *mut GtkSourcePrintCompositor,
2893        separator: gboolean,
2894        left: *const c_char,
2895        center: *const c_char,
2896        right: *const c_char,
2897    );
2898    pub fn gtk_source_print_compositor_set_highlight_syntax(
2899        compositor: *mut GtkSourcePrintCompositor,
2900        highlight: gboolean,
2901    );
2902    pub fn gtk_source_print_compositor_set_left_margin(
2903        compositor: *mut GtkSourcePrintCompositor,
2904        margin: c_double,
2905        unit: gtk::GtkUnit,
2906    );
2907    pub fn gtk_source_print_compositor_set_line_numbers_font_name(
2908        compositor: *mut GtkSourcePrintCompositor,
2909        font_name: *const c_char,
2910    );
2911    pub fn gtk_source_print_compositor_set_print_footer(
2912        compositor: *mut GtkSourcePrintCompositor,
2913        print: gboolean,
2914    );
2915    pub fn gtk_source_print_compositor_set_print_header(
2916        compositor: *mut GtkSourcePrintCompositor,
2917        print: gboolean,
2918    );
2919    pub fn gtk_source_print_compositor_set_print_line_numbers(
2920        compositor: *mut GtkSourcePrintCompositor,
2921        interval: c_uint,
2922    );
2923    pub fn gtk_source_print_compositor_set_right_margin(
2924        compositor: *mut GtkSourcePrintCompositor,
2925        margin: c_double,
2926        unit: gtk::GtkUnit,
2927    );
2928    pub fn gtk_source_print_compositor_set_tab_width(
2929        compositor: *mut GtkSourcePrintCompositor,
2930        width: c_uint,
2931    );
2932    pub fn gtk_source_print_compositor_set_top_margin(
2933        compositor: *mut GtkSourcePrintCompositor,
2934        margin: c_double,
2935        unit: gtk::GtkUnit,
2936    );
2937    pub fn gtk_source_print_compositor_set_wrap_mode(
2938        compositor: *mut GtkSourcePrintCompositor,
2939        wrap_mode: gtk::GtkWrapMode,
2940    );
2941
2942    //=========================================================================
2943    // GtkSourceRegion
2944    //=========================================================================
2945    pub fn gtk_source_region_get_type() -> GType;
2946    pub fn gtk_source_region_new(buffer: *mut gtk::GtkTextBuffer) -> *mut GtkSourceRegion;
2947    pub fn gtk_source_region_add_region(
2948        region: *mut GtkSourceRegion,
2949        region_to_add: *mut GtkSourceRegion,
2950    );
2951    pub fn gtk_source_region_add_subregion(
2952        region: *mut GtkSourceRegion,
2953        _start: *const gtk::GtkTextIter,
2954        _end: *const gtk::GtkTextIter,
2955    );
2956    pub fn gtk_source_region_get_bounds(
2957        region: *mut GtkSourceRegion,
2958        start: *mut gtk::GtkTextIter,
2959        end: *mut gtk::GtkTextIter,
2960    ) -> gboolean;
2961    pub fn gtk_source_region_get_buffer(region: *mut GtkSourceRegion) -> *mut gtk::GtkTextBuffer;
2962    pub fn gtk_source_region_get_start_region_iter(
2963        region: *mut GtkSourceRegion,
2964        iter: *mut GtkSourceRegionIter,
2965    );
2966    pub fn gtk_source_region_intersect_region(
2967        region1: *mut GtkSourceRegion,
2968        region2: *mut GtkSourceRegion,
2969    ) -> *mut GtkSourceRegion;
2970    pub fn gtk_source_region_intersect_subregion(
2971        region: *mut GtkSourceRegion,
2972        _start: *const gtk::GtkTextIter,
2973        _end: *const gtk::GtkTextIter,
2974    ) -> *mut GtkSourceRegion;
2975    pub fn gtk_source_region_is_empty(region: *mut GtkSourceRegion) -> gboolean;
2976    pub fn gtk_source_region_subtract_region(
2977        region: *mut GtkSourceRegion,
2978        region_to_subtract: *mut GtkSourceRegion,
2979    );
2980    pub fn gtk_source_region_subtract_subregion(
2981        region: *mut GtkSourceRegion,
2982        _start: *const gtk::GtkTextIter,
2983        _end: *const gtk::GtkTextIter,
2984    );
2985    pub fn gtk_source_region_to_string(region: *mut GtkSourceRegion) -> *mut c_char;
2986
2987    //=========================================================================
2988    // GtkSourceSearchContext
2989    //=========================================================================
2990    pub fn gtk_source_search_context_get_type() -> GType;
2991    pub fn gtk_source_search_context_new(
2992        buffer: *mut GtkSourceBuffer,
2993        settings: *mut GtkSourceSearchSettings,
2994    ) -> *mut GtkSourceSearchContext;
2995    pub fn gtk_source_search_context_backward(
2996        search: *mut GtkSourceSearchContext,
2997        iter: *const gtk::GtkTextIter,
2998        match_start: *mut gtk::GtkTextIter,
2999        match_end: *mut gtk::GtkTextIter,
3000        has_wrapped_around: *mut gboolean,
3001    ) -> gboolean;
3002    pub fn gtk_source_search_context_backward_async(
3003        search: *mut GtkSourceSearchContext,
3004        iter: *const gtk::GtkTextIter,
3005        cancellable: *mut gio::GCancellable,
3006        callback: gio::GAsyncReadyCallback,
3007        user_data: gpointer,
3008    );
3009    pub fn gtk_source_search_context_backward_finish(
3010        search: *mut GtkSourceSearchContext,
3011        result: *mut gio::GAsyncResult,
3012        match_start: *mut gtk::GtkTextIter,
3013        match_end: *mut gtk::GtkTextIter,
3014        has_wrapped_around: *mut gboolean,
3015        error: *mut *mut glib::GError,
3016    ) -> gboolean;
3017    pub fn gtk_source_search_context_forward(
3018        search: *mut GtkSourceSearchContext,
3019        iter: *const gtk::GtkTextIter,
3020        match_start: *mut gtk::GtkTextIter,
3021        match_end: *mut gtk::GtkTextIter,
3022        has_wrapped_around: *mut gboolean,
3023    ) -> gboolean;
3024    pub fn gtk_source_search_context_forward_async(
3025        search: *mut GtkSourceSearchContext,
3026        iter: *const gtk::GtkTextIter,
3027        cancellable: *mut gio::GCancellable,
3028        callback: gio::GAsyncReadyCallback,
3029        user_data: gpointer,
3030    );
3031    pub fn gtk_source_search_context_forward_finish(
3032        search: *mut GtkSourceSearchContext,
3033        result: *mut gio::GAsyncResult,
3034        match_start: *mut gtk::GtkTextIter,
3035        match_end: *mut gtk::GtkTextIter,
3036        has_wrapped_around: *mut gboolean,
3037        error: *mut *mut glib::GError,
3038    ) -> gboolean;
3039    pub fn gtk_source_search_context_get_buffer(
3040        search: *mut GtkSourceSearchContext,
3041    ) -> *mut GtkSourceBuffer;
3042    pub fn gtk_source_search_context_get_highlight(search: *mut GtkSourceSearchContext)
3043        -> gboolean;
3044    pub fn gtk_source_search_context_get_match_style(
3045        search: *mut GtkSourceSearchContext,
3046    ) -> *mut GtkSourceStyle;
3047    pub fn gtk_source_search_context_get_occurrence_position(
3048        search: *mut GtkSourceSearchContext,
3049        match_start: *const gtk::GtkTextIter,
3050        match_end: *const gtk::GtkTextIter,
3051    ) -> c_int;
3052    pub fn gtk_source_search_context_get_occurrences_count(
3053        search: *mut GtkSourceSearchContext,
3054    ) -> c_int;
3055    pub fn gtk_source_search_context_get_regex_error(
3056        search: *mut GtkSourceSearchContext,
3057    ) -> *mut glib::GError;
3058    pub fn gtk_source_search_context_get_settings(
3059        search: *mut GtkSourceSearchContext,
3060    ) -> *mut GtkSourceSearchSettings;
3061    pub fn gtk_source_search_context_replace(
3062        search: *mut GtkSourceSearchContext,
3063        match_start: *mut gtk::GtkTextIter,
3064        match_end: *mut gtk::GtkTextIter,
3065        replace: *const c_char,
3066        replace_length: c_int,
3067        error: *mut *mut glib::GError,
3068    ) -> gboolean;
3069    pub fn gtk_source_search_context_replace_all(
3070        search: *mut GtkSourceSearchContext,
3071        replace: *const c_char,
3072        replace_length: c_int,
3073        error: *mut *mut glib::GError,
3074    ) -> c_uint;
3075    pub fn gtk_source_search_context_set_highlight(
3076        search: *mut GtkSourceSearchContext,
3077        highlight: gboolean,
3078    );
3079    pub fn gtk_source_search_context_set_match_style(
3080        search: *mut GtkSourceSearchContext,
3081        match_style: *mut GtkSourceStyle,
3082    );
3083
3084    //=========================================================================
3085    // GtkSourceSearchSettings
3086    //=========================================================================
3087    pub fn gtk_source_search_settings_get_type() -> GType;
3088    pub fn gtk_source_search_settings_new() -> *mut GtkSourceSearchSettings;
3089    pub fn gtk_source_search_settings_get_at_word_boundaries(
3090        settings: *mut GtkSourceSearchSettings,
3091    ) -> gboolean;
3092    pub fn gtk_source_search_settings_get_case_sensitive(
3093        settings: *mut GtkSourceSearchSettings,
3094    ) -> gboolean;
3095    pub fn gtk_source_search_settings_get_regex_enabled(
3096        settings: *mut GtkSourceSearchSettings,
3097    ) -> gboolean;
3098    pub fn gtk_source_search_settings_get_search_text(
3099        settings: *mut GtkSourceSearchSettings,
3100    ) -> *const c_char;
3101    #[cfg(feature = "v5_12")]
3102    #[cfg_attr(docsrs, doc(cfg(feature = "v5_12")))]
3103    pub fn gtk_source_search_settings_get_visible_only(
3104        settings: *mut GtkSourceSearchSettings,
3105    ) -> gboolean;
3106    pub fn gtk_source_search_settings_get_wrap_around(
3107        settings: *mut GtkSourceSearchSettings,
3108    ) -> gboolean;
3109    pub fn gtk_source_search_settings_set_at_word_boundaries(
3110        settings: *mut GtkSourceSearchSettings,
3111        at_word_boundaries: gboolean,
3112    );
3113    pub fn gtk_source_search_settings_set_case_sensitive(
3114        settings: *mut GtkSourceSearchSettings,
3115        case_sensitive: gboolean,
3116    );
3117    pub fn gtk_source_search_settings_set_regex_enabled(
3118        settings: *mut GtkSourceSearchSettings,
3119        regex_enabled: gboolean,
3120    );
3121    pub fn gtk_source_search_settings_set_search_text(
3122        settings: *mut GtkSourceSearchSettings,
3123        search_text: *const c_char,
3124    );
3125    #[cfg(feature = "v5_12")]
3126    #[cfg_attr(docsrs, doc(cfg(feature = "v5_12")))]
3127    pub fn gtk_source_search_settings_set_visible_only(
3128        settings: *mut GtkSourceSearchSettings,
3129        visible_only: gboolean,
3130    );
3131    pub fn gtk_source_search_settings_set_wrap_around(
3132        settings: *mut GtkSourceSearchSettings,
3133        wrap_around: gboolean,
3134    );
3135
3136    //=========================================================================
3137    // GtkSourceSnippet
3138    //=========================================================================
3139    pub fn gtk_source_snippet_get_type() -> GType;
3140    pub fn gtk_source_snippet_new(
3141        trigger: *const c_char,
3142        language_id: *const c_char,
3143    ) -> *mut GtkSourceSnippet;
3144    #[cfg(feature = "v5_6")]
3145    #[cfg_attr(docsrs, doc(cfg(feature = "v5_6")))]
3146    pub fn gtk_source_snippet_new_parsed(
3147        text: *const c_char,
3148        error: *mut *mut glib::GError,
3149    ) -> *mut GtkSourceSnippet;
3150    pub fn gtk_source_snippet_add_chunk(
3151        snippet: *mut GtkSourceSnippet,
3152        chunk: *mut GtkSourceSnippetChunk,
3153    );
3154    pub fn gtk_source_snippet_copy(snippet: *mut GtkSourceSnippet) -> *mut GtkSourceSnippet;
3155    pub fn gtk_source_snippet_get_context(
3156        snippet: *mut GtkSourceSnippet,
3157    ) -> *mut GtkSourceSnippetContext;
3158    pub fn gtk_source_snippet_get_description(snippet: *mut GtkSourceSnippet) -> *const c_char;
3159    pub fn gtk_source_snippet_get_focus_position(snippet: *mut GtkSourceSnippet) -> c_int;
3160    pub fn gtk_source_snippet_get_language_id(snippet: *mut GtkSourceSnippet) -> *const c_char;
3161    pub fn gtk_source_snippet_get_n_chunks(snippet: *mut GtkSourceSnippet) -> c_uint;
3162    pub fn gtk_source_snippet_get_name(snippet: *mut GtkSourceSnippet) -> *const c_char;
3163    pub fn gtk_source_snippet_get_nth_chunk(
3164        snippet: *mut GtkSourceSnippet,
3165        nth: c_uint,
3166    ) -> *mut GtkSourceSnippetChunk;
3167    pub fn gtk_source_snippet_get_trigger(snippet: *mut GtkSourceSnippet) -> *const c_char;
3168    pub fn gtk_source_snippet_set_description(
3169        snippet: *mut GtkSourceSnippet,
3170        description: *const c_char,
3171    );
3172    pub fn gtk_source_snippet_set_language_id(
3173        snippet: *mut GtkSourceSnippet,
3174        language_id: *const c_char,
3175    );
3176    pub fn gtk_source_snippet_set_name(snippet: *mut GtkSourceSnippet, name: *const c_char);
3177    pub fn gtk_source_snippet_set_trigger(snippet: *mut GtkSourceSnippet, trigger: *const c_char);
3178
3179    //=========================================================================
3180    // GtkSourceSnippetChunk
3181    //=========================================================================
3182    pub fn gtk_source_snippet_chunk_get_type() -> GType;
3183    pub fn gtk_source_snippet_chunk_new() -> *mut GtkSourceSnippetChunk;
3184    pub fn gtk_source_snippet_chunk_copy(
3185        chunk: *mut GtkSourceSnippetChunk,
3186    ) -> *mut GtkSourceSnippetChunk;
3187    pub fn gtk_source_snippet_chunk_get_context(
3188        chunk: *mut GtkSourceSnippetChunk,
3189    ) -> *mut GtkSourceSnippetContext;
3190    pub fn gtk_source_snippet_chunk_get_focus_position(chunk: *mut GtkSourceSnippetChunk) -> c_int;
3191    pub fn gtk_source_snippet_chunk_get_spec(chunk: *mut GtkSourceSnippetChunk) -> *const c_char;
3192    pub fn gtk_source_snippet_chunk_get_text(chunk: *mut GtkSourceSnippetChunk) -> *const c_char;
3193    pub fn gtk_source_snippet_chunk_get_text_set(chunk: *mut GtkSourceSnippetChunk) -> gboolean;
3194    pub fn gtk_source_snippet_chunk_get_tooltip_text(
3195        chunk: *mut GtkSourceSnippetChunk,
3196    ) -> *const c_char;
3197    pub fn gtk_source_snippet_chunk_set_context(
3198        chunk: *mut GtkSourceSnippetChunk,
3199        context: *mut GtkSourceSnippetContext,
3200    );
3201    pub fn gtk_source_snippet_chunk_set_focus_position(
3202        chunk: *mut GtkSourceSnippetChunk,
3203        focus_position: c_int,
3204    );
3205    pub fn gtk_source_snippet_chunk_set_spec(
3206        chunk: *mut GtkSourceSnippetChunk,
3207        spec: *const c_char,
3208    );
3209    pub fn gtk_source_snippet_chunk_set_text(
3210        chunk: *mut GtkSourceSnippetChunk,
3211        text: *const c_char,
3212    );
3213    pub fn gtk_source_snippet_chunk_set_text_set(
3214        chunk: *mut GtkSourceSnippetChunk,
3215        text_set: gboolean,
3216    );
3217    pub fn gtk_source_snippet_chunk_set_tooltip_text(
3218        chunk: *mut GtkSourceSnippetChunk,
3219        tooltip_text: *const c_char,
3220    );
3221
3222    //=========================================================================
3223    // GtkSourceSnippetContext
3224    //=========================================================================
3225    pub fn gtk_source_snippet_context_get_type() -> GType;
3226    pub fn gtk_source_snippet_context_new() -> *mut GtkSourceSnippetContext;
3227    pub fn gtk_source_snippet_context_clear_variables(self_: *mut GtkSourceSnippetContext);
3228    pub fn gtk_source_snippet_context_expand(
3229        self_: *mut GtkSourceSnippetContext,
3230        input: *const c_char,
3231    ) -> *mut c_char;
3232    pub fn gtk_source_snippet_context_get_variable(
3233        self_: *mut GtkSourceSnippetContext,
3234        key: *const c_char,
3235    ) -> *const c_char;
3236    pub fn gtk_source_snippet_context_set_constant(
3237        self_: *mut GtkSourceSnippetContext,
3238        key: *const c_char,
3239        value: *const c_char,
3240    );
3241    pub fn gtk_source_snippet_context_set_line_prefix(
3242        self_: *mut GtkSourceSnippetContext,
3243        line_prefix: *const c_char,
3244    );
3245    pub fn gtk_source_snippet_context_set_tab_width(
3246        self_: *mut GtkSourceSnippetContext,
3247        tab_width: c_int,
3248    );
3249    pub fn gtk_source_snippet_context_set_use_spaces(
3250        self_: *mut GtkSourceSnippetContext,
3251        use_spaces: gboolean,
3252    );
3253    pub fn gtk_source_snippet_context_set_variable(
3254        self_: *mut GtkSourceSnippetContext,
3255        key: *const c_char,
3256        value: *const c_char,
3257    );
3258
3259    //=========================================================================
3260    // GtkSourceSnippetManager
3261    //=========================================================================
3262    pub fn gtk_source_snippet_manager_get_type() -> GType;
3263    pub fn gtk_source_snippet_manager_get_default() -> *mut GtkSourceSnippetManager;
3264    pub fn gtk_source_snippet_manager_get_search_path(
3265        self_: *mut GtkSourceSnippetManager,
3266    ) -> *const *const c_char;
3267    pub fn gtk_source_snippet_manager_get_snippet(
3268        self_: *mut GtkSourceSnippetManager,
3269        group: *const c_char,
3270        language_id: *const c_char,
3271        trigger: *const c_char,
3272    ) -> *mut GtkSourceSnippet;
3273    #[cfg(feature = "v5_6")]
3274    #[cfg_attr(docsrs, doc(cfg(feature = "v5_6")))]
3275    pub fn gtk_source_snippet_manager_list_all(
3276        self_: *mut GtkSourceSnippetManager,
3277    ) -> *mut gio::GListModel;
3278    pub fn gtk_source_snippet_manager_list_groups(
3279        self_: *mut GtkSourceSnippetManager,
3280    ) -> *mut *const c_char;
3281    pub fn gtk_source_snippet_manager_list_matching(
3282        self_: *mut GtkSourceSnippetManager,
3283        group: *const c_char,
3284        language_id: *const c_char,
3285        trigger_prefix: *const c_char,
3286    ) -> *mut gio::GListModel;
3287    pub fn gtk_source_snippet_manager_set_search_path(
3288        self_: *mut GtkSourceSnippetManager,
3289        dirs: *const *const c_char,
3290    );
3291
3292    //=========================================================================
3293    // GtkSourceSpaceDrawer
3294    //=========================================================================
3295    pub fn gtk_source_space_drawer_get_type() -> GType;
3296    pub fn gtk_source_space_drawer_new() -> *mut GtkSourceSpaceDrawer;
3297    pub fn gtk_source_space_drawer_bind_matrix_setting(
3298        drawer: *mut GtkSourceSpaceDrawer,
3299        settings: *mut gio::GSettings,
3300        key: *const c_char,
3301        flags: gio::GSettingsBindFlags,
3302    );
3303    pub fn gtk_source_space_drawer_get_enable_matrix(drawer: *mut GtkSourceSpaceDrawer)
3304        -> gboolean;
3305    pub fn gtk_source_space_drawer_get_matrix(
3306        drawer: *mut GtkSourceSpaceDrawer,
3307    ) -> *mut glib::GVariant;
3308    pub fn gtk_source_space_drawer_get_types_for_locations(
3309        drawer: *mut GtkSourceSpaceDrawer,
3310        locations: GtkSourceSpaceLocationFlags,
3311    ) -> GtkSourceSpaceTypeFlags;
3312    pub fn gtk_source_space_drawer_set_enable_matrix(
3313        drawer: *mut GtkSourceSpaceDrawer,
3314        enable_matrix: gboolean,
3315    );
3316    pub fn gtk_source_space_drawer_set_matrix(
3317        drawer: *mut GtkSourceSpaceDrawer,
3318        matrix: *mut glib::GVariant,
3319    );
3320    pub fn gtk_source_space_drawer_set_types_for_locations(
3321        drawer: *mut GtkSourceSpaceDrawer,
3322        locations: GtkSourceSpaceLocationFlags,
3323        types: GtkSourceSpaceTypeFlags,
3324    );
3325
3326    //=========================================================================
3327    // GtkSourceStyle
3328    //=========================================================================
3329    pub fn gtk_source_style_get_type() -> GType;
3330    pub fn gtk_source_style_apply(style: *const GtkSourceStyle, tag: *mut gtk::GtkTextTag);
3331    pub fn gtk_source_style_copy(style: *const GtkSourceStyle) -> *mut GtkSourceStyle;
3332
3333    //=========================================================================
3334    // GtkSourceStyleScheme
3335    //=========================================================================
3336    pub fn gtk_source_style_scheme_get_type() -> GType;
3337    pub fn gtk_source_style_scheme_get_authors(
3338        scheme: *mut GtkSourceStyleScheme,
3339    ) -> *const *const c_char;
3340    pub fn gtk_source_style_scheme_get_description(
3341        scheme: *mut GtkSourceStyleScheme,
3342    ) -> *const c_char;
3343    pub fn gtk_source_style_scheme_get_filename(scheme: *mut GtkSourceStyleScheme)
3344        -> *const c_char;
3345    pub fn gtk_source_style_scheme_get_id(scheme: *mut GtkSourceStyleScheme) -> *const c_char;
3346    #[cfg(feature = "v5_4")]
3347    #[cfg_attr(docsrs, doc(cfg(feature = "v5_4")))]
3348    pub fn gtk_source_style_scheme_get_metadata(
3349        scheme: *mut GtkSourceStyleScheme,
3350        name: *const c_char,
3351    ) -> *const c_char;
3352    pub fn gtk_source_style_scheme_get_name(scheme: *mut GtkSourceStyleScheme) -> *const c_char;
3353    pub fn gtk_source_style_scheme_get_style(
3354        scheme: *mut GtkSourceStyleScheme,
3355        style_id: *const c_char,
3356    ) -> *mut GtkSourceStyle;
3357
3358    //=========================================================================
3359    // GtkSourceStyleSchemeChooserButton
3360    //=========================================================================
3361    pub fn gtk_source_style_scheme_chooser_button_get_type() -> GType;
3362    pub fn gtk_source_style_scheme_chooser_button_new() -> *mut gtk::GtkWidget;
3363
3364    //=========================================================================
3365    // GtkSourceStyleSchemeChooserWidget
3366    //=========================================================================
3367    pub fn gtk_source_style_scheme_chooser_widget_get_type() -> GType;
3368    pub fn gtk_source_style_scheme_chooser_widget_new() -> *mut gtk::GtkWidget;
3369
3370    //=========================================================================
3371    // GtkSourceStyleSchemeManager
3372    //=========================================================================
3373    pub fn gtk_source_style_scheme_manager_get_type() -> GType;
3374    pub fn gtk_source_style_scheme_manager_new() -> *mut GtkSourceStyleSchemeManager;
3375    pub fn gtk_source_style_scheme_manager_get_default() -> *mut GtkSourceStyleSchemeManager;
3376    pub fn gtk_source_style_scheme_manager_append_search_path(
3377        manager: *mut GtkSourceStyleSchemeManager,
3378        path: *const c_char,
3379    );
3380    pub fn gtk_source_style_scheme_manager_force_rescan(manager: *mut GtkSourceStyleSchemeManager);
3381    pub fn gtk_source_style_scheme_manager_get_scheme(
3382        manager: *mut GtkSourceStyleSchemeManager,
3383        scheme_id: *const c_char,
3384    ) -> *mut GtkSourceStyleScheme;
3385    pub fn gtk_source_style_scheme_manager_get_scheme_ids(
3386        manager: *mut GtkSourceStyleSchemeManager,
3387    ) -> *const *const c_char;
3388    pub fn gtk_source_style_scheme_manager_get_search_path(
3389        manager: *mut GtkSourceStyleSchemeManager,
3390    ) -> *const *const c_char;
3391    pub fn gtk_source_style_scheme_manager_prepend_search_path(
3392        manager: *mut GtkSourceStyleSchemeManager,
3393        path: *const c_char,
3394    );
3395    pub fn gtk_source_style_scheme_manager_set_search_path(
3396        manager: *mut GtkSourceStyleSchemeManager,
3397        path: *const *const c_char,
3398    );
3399
3400    //=========================================================================
3401    // GtkSourceStyleSchemePreview
3402    //=========================================================================
3403    #[cfg(feature = "v5_4")]
3404    #[cfg_attr(docsrs, doc(cfg(feature = "v5_4")))]
3405    pub fn gtk_source_style_scheme_preview_get_type() -> GType;
3406    #[cfg(feature = "v5_4")]
3407    #[cfg_attr(docsrs, doc(cfg(feature = "v5_4")))]
3408    pub fn gtk_source_style_scheme_preview_new(
3409        scheme: *mut GtkSourceStyleScheme,
3410    ) -> *mut gtk::GtkWidget;
3411    #[cfg(feature = "v5_4")]
3412    #[cfg_attr(docsrs, doc(cfg(feature = "v5_4")))]
3413    pub fn gtk_source_style_scheme_preview_get_scheme(
3414        self_: *mut GtkSourceStyleSchemePreview,
3415    ) -> *mut GtkSourceStyleScheme;
3416    #[cfg(feature = "v5_4")]
3417    #[cfg_attr(docsrs, doc(cfg(feature = "v5_4")))]
3418    pub fn gtk_source_style_scheme_preview_get_selected(
3419        self_: *mut GtkSourceStyleSchemePreview,
3420    ) -> gboolean;
3421    #[cfg(feature = "v5_4")]
3422    #[cfg_attr(docsrs, doc(cfg(feature = "v5_4")))]
3423    pub fn gtk_source_style_scheme_preview_set_selected(
3424        self_: *mut GtkSourceStyleSchemePreview,
3425        selected: gboolean,
3426    );
3427
3428    //=========================================================================
3429    // GtkSourceTag
3430    //=========================================================================
3431    pub fn gtk_source_tag_get_type() -> GType;
3432    pub fn gtk_source_tag_new(name: *const c_char) -> *mut gtk::GtkTextTag;
3433
3434    //=========================================================================
3435    // GtkSourceView
3436    //=========================================================================
3437    pub fn gtk_source_view_get_type() -> GType;
3438    pub fn gtk_source_view_new() -> *mut gtk::GtkWidget;
3439    pub fn gtk_source_view_new_with_buffer(buffer: *mut GtkSourceBuffer) -> *mut gtk::GtkWidget;
3440    #[cfg(feature = "v5_18")]
3441    #[cfg_attr(docsrs, doc(cfg(feature = "v5_18")))]
3442    pub fn gtk_source_view_get_annotations(view: *mut GtkSourceView) -> *mut GtkSourceAnnotations;
3443    pub fn gtk_source_view_get_auto_indent(view: *mut GtkSourceView) -> gboolean;
3444    pub fn gtk_source_view_get_background_pattern(
3445        view: *mut GtkSourceView,
3446    ) -> GtkSourceBackgroundPatternType;
3447    pub fn gtk_source_view_get_completion(view: *mut GtkSourceView) -> *mut GtkSourceCompletion;
3448    pub fn gtk_source_view_get_enable_snippets(view: *mut GtkSourceView) -> gboolean;
3449    pub fn gtk_source_view_get_gutter(
3450        view: *mut GtkSourceView,
3451        window_type: gtk::GtkTextWindowType,
3452    ) -> *mut GtkSourceGutter;
3453    pub fn gtk_source_view_get_highlight_current_line(view: *mut GtkSourceView) -> gboolean;
3454    pub fn gtk_source_view_get_hover(view: *mut GtkSourceView) -> *mut GtkSourceHover;
3455    pub fn gtk_source_view_get_indent_on_tab(view: *mut GtkSourceView) -> gboolean;
3456    pub fn gtk_source_view_get_indent_width(view: *mut GtkSourceView) -> c_int;
3457    pub fn gtk_source_view_get_indenter(view: *mut GtkSourceView) -> *mut GtkSourceIndenter;
3458    pub fn gtk_source_view_get_insert_spaces_instead_of_tabs(view: *mut GtkSourceView) -> gboolean;
3459    pub fn gtk_source_view_get_mark_attributes(
3460        view: *mut GtkSourceView,
3461        category: *const c_char,
3462        priority: *mut c_int,
3463    ) -> *mut GtkSourceMarkAttributes;
3464    pub fn gtk_source_view_get_right_margin_position(view: *mut GtkSourceView) -> c_uint;
3465    pub fn gtk_source_view_get_show_line_marks(view: *mut GtkSourceView) -> gboolean;
3466    pub fn gtk_source_view_get_show_line_numbers(view: *mut GtkSourceView) -> gboolean;
3467    pub fn gtk_source_view_get_show_right_margin(view: *mut GtkSourceView) -> gboolean;
3468    pub fn gtk_source_view_get_smart_backspace(view: *mut GtkSourceView) -> gboolean;
3469    pub fn gtk_source_view_get_smart_home_end(
3470        view: *mut GtkSourceView,
3471    ) -> GtkSourceSmartHomeEndType;
3472    pub fn gtk_source_view_get_space_drawer(view: *mut GtkSourceView) -> *mut GtkSourceSpaceDrawer;
3473    pub fn gtk_source_view_get_tab_width(view: *mut GtkSourceView) -> c_uint;
3474    pub fn gtk_source_view_get_visual_column(
3475        view: *mut GtkSourceView,
3476        iter: *const gtk::GtkTextIter,
3477    ) -> c_uint;
3478    pub fn gtk_source_view_indent_lines(
3479        view: *mut GtkSourceView,
3480        start: *mut gtk::GtkTextIter,
3481        end: *mut gtk::GtkTextIter,
3482    );
3483    pub fn gtk_source_view_push_snippet(
3484        view: *mut GtkSourceView,
3485        snippet: *mut GtkSourceSnippet,
3486        location: *mut gtk::GtkTextIter,
3487    );
3488    pub fn gtk_source_view_set_auto_indent(view: *mut GtkSourceView, enable: gboolean);
3489    pub fn gtk_source_view_set_background_pattern(
3490        view: *mut GtkSourceView,
3491        background_pattern: GtkSourceBackgroundPatternType,
3492    );
3493    pub fn gtk_source_view_set_enable_snippets(view: *mut GtkSourceView, enable_snippets: gboolean);
3494    pub fn gtk_source_view_set_highlight_current_line(
3495        view: *mut GtkSourceView,
3496        highlight: gboolean,
3497    );
3498    pub fn gtk_source_view_set_indent_on_tab(view: *mut GtkSourceView, enable: gboolean);
3499    pub fn gtk_source_view_set_indent_width(view: *mut GtkSourceView, width: c_int);
3500    pub fn gtk_source_view_set_indenter(view: *mut GtkSourceView, indenter: *mut GtkSourceIndenter);
3501    pub fn gtk_source_view_set_insert_spaces_instead_of_tabs(
3502        view: *mut GtkSourceView,
3503        enable: gboolean,
3504    );
3505    pub fn gtk_source_view_set_mark_attributes(
3506        view: *mut GtkSourceView,
3507        category: *const c_char,
3508        attributes: *mut GtkSourceMarkAttributes,
3509        priority: c_int,
3510    );
3511    pub fn gtk_source_view_set_right_margin_position(view: *mut GtkSourceView, pos: c_uint);
3512    pub fn gtk_source_view_set_show_line_marks(view: *mut GtkSourceView, show: gboolean);
3513    pub fn gtk_source_view_set_show_line_numbers(view: *mut GtkSourceView, show: gboolean);
3514    pub fn gtk_source_view_set_show_right_margin(view: *mut GtkSourceView, show: gboolean);
3515    pub fn gtk_source_view_set_smart_backspace(view: *mut GtkSourceView, smart_backspace: gboolean);
3516    pub fn gtk_source_view_set_smart_home_end(
3517        view: *mut GtkSourceView,
3518        smart_home_end: GtkSourceSmartHomeEndType,
3519    );
3520    pub fn gtk_source_view_set_tab_width(view: *mut GtkSourceView, width: c_uint);
3521    pub fn gtk_source_view_unindent_lines(
3522        view: *mut GtkSourceView,
3523        start: *mut gtk::GtkTextIter,
3524        end: *mut gtk::GtkTextIter,
3525    );
3526
3527    //=========================================================================
3528    // GtkSourceVimIMContext
3529    //=========================================================================
3530    #[cfg(feature = "v5_4")]
3531    #[cfg_attr(docsrs, doc(cfg(feature = "v5_4")))]
3532    pub fn gtk_source_vim_im_context_get_type() -> GType;
3533    #[cfg(feature = "v5_4")]
3534    #[cfg_attr(docsrs, doc(cfg(feature = "v5_4")))]
3535    pub fn gtk_source_vim_im_context_new() -> *mut gtk::GtkIMContext;
3536    #[cfg(feature = "v5_4")]
3537    #[cfg_attr(docsrs, doc(cfg(feature = "v5_4")))]
3538    pub fn gtk_source_vim_im_context_execute_command(
3539        self_: *mut GtkSourceVimIMContext,
3540        command: *const c_char,
3541    );
3542    #[cfg(feature = "v5_4")]
3543    #[cfg_attr(docsrs, doc(cfg(feature = "v5_4")))]
3544    pub fn gtk_source_vim_im_context_get_command_bar_text(
3545        self_: *mut GtkSourceVimIMContext,
3546    ) -> *const c_char;
3547    #[cfg(feature = "v5_4")]
3548    #[cfg_attr(docsrs, doc(cfg(feature = "v5_4")))]
3549    pub fn gtk_source_vim_im_context_get_command_text(
3550        self_: *mut GtkSourceVimIMContext,
3551    ) -> *const c_char;
3552
3553    //=========================================================================
3554    // GtkSourceCompletionProposal
3555    //=========================================================================
3556    pub fn gtk_source_completion_proposal_get_type() -> GType;
3557    #[cfg(feature = "v5_6")]
3558    #[cfg_attr(docsrs, doc(cfg(feature = "v5_6")))]
3559    pub fn gtk_source_completion_proposal_get_typed_text(
3560        proposal: *mut GtkSourceCompletionProposal,
3561    ) -> *mut c_char;
3562
3563    //=========================================================================
3564    // GtkSourceCompletionProvider
3565    //=========================================================================
3566    pub fn gtk_source_completion_provider_get_type() -> GType;
3567    pub fn gtk_source_completion_provider_activate(
3568        self_: *mut GtkSourceCompletionProvider,
3569        context: *mut GtkSourceCompletionContext,
3570        proposal: *mut GtkSourceCompletionProposal,
3571    );
3572    pub fn gtk_source_completion_provider_display(
3573        self_: *mut GtkSourceCompletionProvider,
3574        context: *mut GtkSourceCompletionContext,
3575        proposal: *mut GtkSourceCompletionProposal,
3576        cell: *mut GtkSourceCompletionCell,
3577    );
3578    pub fn gtk_source_completion_provider_get_priority(
3579        self_: *mut GtkSourceCompletionProvider,
3580        context: *mut GtkSourceCompletionContext,
3581    ) -> c_int;
3582    pub fn gtk_source_completion_provider_get_title(
3583        self_: *mut GtkSourceCompletionProvider,
3584    ) -> *mut c_char;
3585    pub fn gtk_source_completion_provider_is_trigger(
3586        self_: *mut GtkSourceCompletionProvider,
3587        iter: *const gtk::GtkTextIter,
3588        ch: u32,
3589    ) -> gboolean;
3590    pub fn gtk_source_completion_provider_key_activates(
3591        self_: *mut GtkSourceCompletionProvider,
3592        context: *mut GtkSourceCompletionContext,
3593        proposal: *mut GtkSourceCompletionProposal,
3594        keyval: c_uint,
3595        state: gdk::GdkModifierType,
3596    ) -> gboolean;
3597    pub fn gtk_source_completion_provider_list_alternates(
3598        self_: *mut GtkSourceCompletionProvider,
3599        context: *mut GtkSourceCompletionContext,
3600        proposal: *mut GtkSourceCompletionProposal,
3601    ) -> *mut glib::GPtrArray;
3602    pub fn gtk_source_completion_provider_populate_async(
3603        self_: *mut GtkSourceCompletionProvider,
3604        context: *mut GtkSourceCompletionContext,
3605        cancellable: *mut gio::GCancellable,
3606        callback: gio::GAsyncReadyCallback,
3607        user_data: gpointer,
3608    );
3609    pub fn gtk_source_completion_provider_populate_finish(
3610        self_: *mut GtkSourceCompletionProvider,
3611        result: *mut gio::GAsyncResult,
3612        error: *mut *mut glib::GError,
3613    ) -> *mut gio::GListModel;
3614    pub fn gtk_source_completion_provider_refilter(
3615        self_: *mut GtkSourceCompletionProvider,
3616        context: *mut GtkSourceCompletionContext,
3617        model: *mut gio::GListModel,
3618    );
3619
3620    //=========================================================================
3621    // GtkSourceHoverProvider
3622    //=========================================================================
3623    pub fn gtk_source_hover_provider_get_type() -> GType;
3624    pub fn gtk_source_hover_provider_populate_async(
3625        self_: *mut GtkSourceHoverProvider,
3626        context: *mut GtkSourceHoverContext,
3627        display: *mut GtkSourceHoverDisplay,
3628        cancellable: *mut gio::GCancellable,
3629        callback: gio::GAsyncReadyCallback,
3630        user_data: gpointer,
3631    );
3632    pub fn gtk_source_hover_provider_populate_finish(
3633        self_: *mut GtkSourceHoverProvider,
3634        result: *mut gio::GAsyncResult,
3635        error: *mut *mut glib::GError,
3636    ) -> gboolean;
3637
3638    //=========================================================================
3639    // GtkSourceIndenter
3640    //=========================================================================
3641    pub fn gtk_source_indenter_get_type() -> GType;
3642    pub fn gtk_source_indenter_indent(
3643        self_: *mut GtkSourceIndenter,
3644        view: *mut GtkSourceView,
3645        iter: *mut gtk::GtkTextIter,
3646    );
3647    pub fn gtk_source_indenter_is_trigger(
3648        self_: *mut GtkSourceIndenter,
3649        view: *mut GtkSourceView,
3650        location: *const gtk::GtkTextIter,
3651        state: gdk::GdkModifierType,
3652        keyval: c_uint,
3653    ) -> gboolean;
3654
3655    //=========================================================================
3656    // GtkSourceStyleSchemeChooser
3657    //=========================================================================
3658    pub fn gtk_source_style_scheme_chooser_get_type() -> GType;
3659    pub fn gtk_source_style_scheme_chooser_get_style_scheme(
3660        chooser: *mut GtkSourceStyleSchemeChooser,
3661    ) -> *mut GtkSourceStyleScheme;
3662    pub fn gtk_source_style_scheme_chooser_set_style_scheme(
3663        chooser: *mut GtkSourceStyleSchemeChooser,
3664        scheme: *mut GtkSourceStyleScheme,
3665    );
3666
3667    //=========================================================================
3668    // Other functions
3669    //=========================================================================
3670    pub fn gtk_source_check_version(major: c_uint, minor: c_uint, micro: c_uint) -> gboolean;
3671    pub fn gtk_source_finalize();
3672    pub fn gtk_source_get_major_version() -> c_uint;
3673    pub fn gtk_source_get_micro_version() -> c_uint;
3674    pub fn gtk_source_get_minor_version() -> c_uint;
3675    pub fn gtk_source_init();
3676    #[cfg(feature = "v5_2")]
3677    #[cfg_attr(docsrs, doc(cfg(feature = "v5_2")))]
3678    pub fn gtk_source_scheduler_add(
3679        callback: GtkSourceSchedulerCallback,
3680        user_data: gpointer,
3681    ) -> size_t;
3682    #[cfg(feature = "v5_2")]
3683    #[cfg_attr(docsrs, doc(cfg(feature = "v5_2")))]
3684    pub fn gtk_source_scheduler_add_full(
3685        callback: GtkSourceSchedulerCallback,
3686        user_data: gpointer,
3687        notify: glib::GDestroyNotify,
3688    ) -> size_t;
3689    #[cfg(feature = "v5_2")]
3690    #[cfg_attr(docsrs, doc(cfg(feature = "v5_2")))]
3691    pub fn gtk_source_scheduler_remove(handler_id: size_t);
3692    pub fn gtk_source_utils_escape_search_text(text: *const c_char) -> *mut c_char;
3693    pub fn gtk_source_utils_unescape_search_text(text: *const c_char) -> *mut c_char;
3694
3695}