feat(c/libuv): Add io, fs, signal, core, poll features

Signed-off-by: hackerchai <i@hackerchai.com>

feat(c/libuv): Add io, fs, signal features

Signed-off-by: hackerchai <i@hackerchai.com>

refactor(c/libuv): rename io into libuv

Signed-off-by: hackerchai <i@hackerchai.com>

fix(c/libuv): fix some compile errors

Signed-off-by: hackerchai <i@hackerchai.com>
This commit is contained in:
hackerchai
2024-07-19 17:27:18 +08:00
parent 89bdb315d5
commit db6930d9e4
3 changed files with 622 additions and 0 deletions

30
c/libuv/signal.go Normal file
View File

@@ -0,0 +1,30 @@
package libuv
import (
"github.com/goplus/llgo/c"
_ "unsafe"
)
type Signal struct {
Unused [0]byte
}
// llgo:type C
type SignalCb func(handle *Signal, sigNum c.Int)
//go:linkname UvSignalInit C.uv_signal_init
func UvSignalInit(loop *Loop, handle *Signal) c.Int
// llgo:link (*Signal).Start C.uv_signal_start
func (s *Signal) Start(cb SignalCb, signum c.Int) c.Int {
return 0
}
// llgo:link (*Signal).StartOneshot C.uv_signal_start_oneshot
func (s *Signal) StartOneshot(handle *Signal, cb SignalCb, signum c.Int) c.Int {
return 0
}
func (s *Signal) Init(loop *Loop) int {
return UvSignalInit(loop, s)
}