- func Assign(closure unsafe.Pointer, fs FuncStack)
- func Delete(closure unsafe.Pointer)
- func DisconnectSignal(handle uint)
- func RegisterSignal(handle uint, closure unsafe.Pointer)
- type FuncStack
const FrameSize = 3
FrameSize is the number of frames that FuncStack should trace back from.
This section is empty.
Assign assigns the given FuncStack to the given closure.
Delete deletes the closure pointer from the registry while also checking for any existing signal handler associated with the given callback ID. If a signal handler is found, then its behavior is similar to DisconnectSignal.
func DisconnectSignal ¶
func DisconnectSignal(handle uint)
DisconnectSignal removes both the signal and the closure associated with it from the internal registry. Since this function will also remove the closure itself from the internal registry, Gtk's disconnect functions should be called first.
func RegisterSignal ¶
RegisterSignal registers the given signal handle to be associated with the closure pointer. This association allows the closure to be removed as well when the signal removal is requested from the user using DisconnectSignal.
FuncStack wraps a function value and provides function frames containing the caller trace for debugging.
Get gets the reflect-value callback from the closure pointer.
func NewFuncStack ¶
NewFuncStack creates a new FuncStack. It panics if fn is not a function. The given frameSkip is added 2, meaning the first frame from 0 will start from the caller of NewFuncStack.
func NewIdleFuncStack ¶
NewIdleFuncStack works akin to NewFuncStack, but it also validates the given function type for the correct acceptable signatures for SourceFunc while also caching the checks.
IsValid returns true if the given FuncStack is not a zero-value i.e. valid.
Panicf panics with the given FuncStack printed to standard error.