mirror of
https://github.com/sbrow/zomq.git
synced 2026-08-26 19:03:31 -04:00
fix(zmq): Corrected error bindings.
This commit is contained in:
+1
-19
@@ -59,35 +59,17 @@ Flags :: bit_set[Flag;c.int]
|
||||
|
||||
NoBlock :: Flags{.DONTWAIT}
|
||||
|
||||
HAUSNUMERO :: 156384712
|
||||
|
||||
ZMQ_Error :: enum c.int {
|
||||
EFSM = HAUSNUMERO + 51,
|
||||
ENOCOMPATPROTO = HAUSNUMERO + 52,
|
||||
ETERM = HAUSNUMERO + 53,
|
||||
EMTHREAD = HAUSNUMERO + 54,
|
||||
}
|
||||
|
||||
Error :: union #shared_nil {
|
||||
os.Platform_Error,
|
||||
ZMQ_Error,
|
||||
}
|
||||
|
||||
last_error :: proc() -> Error {
|
||||
raw := errno()
|
||||
|
||||
if raw >= HAUSNUMERO {
|
||||
return ZMQ_Error(raw)
|
||||
}
|
||||
return os.Platform_Error(raw)
|
||||
}
|
||||
|
||||
strerror :: proc(e: Error) -> cstring {
|
||||
switch v in e {
|
||||
case os.Platform_Error:
|
||||
return _strerror(c.int(v))
|
||||
case ZMQ_Error:
|
||||
return _strerror(c.int(v))
|
||||
return _strerror(denormalize_from_zmq(c.int(v)))
|
||||
case:
|
||||
return _strerror(0)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user