예제 #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_offset
func (vfi *VFuncInfo) Offset() int {
	return int(C.g_vfunc_info_get_offset((*C.GIVFuncInfo)(vfi.c)))
}
예제 #3
0
파일: info.go 프로젝트: dradtke/gogi
func (info *GiInfo) GetOffset() int {
	// TODO: check for a value of 0xFFFF, which means it's unknown
	return GoInt(C.g_vfunc_info_get_offset((*C.GIVFuncInfo)(info.ptr)))
}