mirror of
https://github.com/blacktop/ipsw.git
synced 2026-06-07 12:27:36 +00:00
27 lines
562 B
Go
27 lines
562 B
Go
//go:build darwin && cgo && objc
|
|
|
|
package objc
|
|
|
|
// #include <objc/runtime.h>
|
|
import "C"
|
|
import "unsafe"
|
|
|
|
type Ivar uintptr
|
|
|
|
func (ivar Ivar) civar() C.Ivar {
|
|
return (C.Ivar)(unsafe.Pointer(ivar))
|
|
}
|
|
|
|
func (ivar Ivar) Name() string {
|
|
return C.GoString(C.ivar_getName((C.Ivar)(unsafe.Pointer(ivar))))
|
|
}
|
|
|
|
func (ivar Ivar) TypeEncoding() string {
|
|
return C.GoString(C.ivar_getTypeEncoding((C.Ivar)(unsafe.Pointer(ivar))))
|
|
}
|
|
|
|
func nextIvar(list *C.Ivar) *C.Ivar {
|
|
ptr := uintptr(unsafe.Pointer(list)) + unsafe.Sizeof(*list)
|
|
return (*C.Ivar)(unsafe.Pointer(ptr))
|
|
}
|