示例#1
0
文件: dump.go 项目: reusee/ggi
func DumpVFuncInfo(info *C.GIVFuncInfo) {
	DumpCallableInfo(asCallableInfo(info))
	flags := C.g_vfunc_info_get_flags(info)
	if flags&C.GI_VFUNC_MUST_CHAIN_UP > 0 {
		p("must chain up\n")
	}
	if flags&C.GI_VFUNC_MUST_OVERRIDE > 0 {
		p("must override\n")
	}
	if flags&C.GI_VFUNC_MUST_NOT_OVERRIDE > 0 {
		p("must not override\n")
	}
	if flags&C.GI_VFUNC_THROWS > 0 {
		p("throws error\n")
	}
	offset := C.g_vfunc_info_get_offset(info)
	p("offset %d\n", offset)
	signal := C.g_vfunc_info_get_signal(info)
	if signal != nil {
		DumpSignalInfo(signal)
	}
	invoker := C.g_vfunc_info_get_invoker(info)
	if invoker != nil {
		DumpFunctionInfo(invoker)
	}
}
示例#2
0
文件: gi.go 项目: bytbox/gogobject
// g_vfunc_info_get_invoker
func (vfi *VFuncInfo) Invoker() *FunctionInfo {
	cptr := (*C.GIBaseInfo)(C.g_vfunc_info_get_invoker((*C.GIVFuncInfo)(vfi.c)))
	if cptr == nil {
		return nil
	}
	ptr := &BaseInfo{cptr}
	return (*FunctionInfo)(unsafe.Pointer(_SetBaseInfoFinalizer(ptr)))
}
示例#3
0
文件: info.go 项目: dradtke/gogi
func (info *GiInfo) GetInvoker() *GiInfo {
	return NewGiInfo((*C.GIBaseInfo)(C.g_vfunc_info_get_invoker((*C.GIVFuncInfo)(info.ptr))))
}