1package glib 2 3// #include <gio/gio.h> 4// #include <glib.h> 5// #include <glib-object.h> 6// #include "glib.go.h" 7import "C" 8 9type Source C.GSource 10 11// native returns a pointer to the underlying GSource. 12func (v *Source) native() *C.GSource { 13 if v == nil { 14 return nil 15 } 16 return (*C.GSource)(v) 17} 18 19func wrapSource(sourcePtr *C.GSource) *Source { 20 source := Source(*sourcePtr) 21 return &source 22} 23 24// MainCurrentSource is a wrapper around g_main_current_source(). 25func MainCurrentSource() *Source { 26 c := C.g_main_current_source() 27 if c == nil { 28 return nil 29 } 30 return (*Source)(c) 31} 32