NativeSocket.hx 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. package cpp;
  2. import sys.net.Socket;
  3. @:buildXml('<include name="${HXCPP}/src/hx/libs/std/Build.xml"/>')
  4. extern class NativeSocket
  5. {
  6. @:extern @:native("_hx_std_socket_init")
  7. public static function socket_init() : Void { }
  8. @:extern @:native("_hx_std_socket_new")
  9. public static function socket_new(udp:Bool) : Dynamic return null;
  10. @:extern @:native("_hx_std_socket_close")
  11. public static function socket_close(handle:Dynamic) : Void { }
  12. @:extern @:native("_hx_std_socket_bind")
  13. public static function socket_bind(o:Dynamic,host:Int,port:Int) : Void { }
  14. @:extern @:native("_hx_std_socket_send_char")
  15. public static function socket_send_char(o:Dynamic,c:Int) : Void { }
  16. @:extern @:native("_hx_std_socket_send")
  17. public static function socket_send(o:Dynamic,buf:haxe.io.BytesData,p:Int,l:Int) : Int return 0;
  18. @:extern @:native("_hx_std_socket_recv")
  19. public static function socket_recv(o:Dynamic,buf:haxe.io.BytesData,p:Int,l:Int) : Int return 0;
  20. @:extern @:native("_hx_std_socket_recv_char")
  21. public static function socket_recv_char(o:Dynamic) : Int return 0;
  22. @:extern @:native("_hx_std_socket_write")
  23. public static function socket_write(o:Dynamic,buf:haxe.io.BytesData) : Void { }
  24. @:extern @:native("_hx_std_socket_read")
  25. public static function socket_read(o:Dynamic) : haxe.io.BytesData return null;
  26. @:extern @:native("_hx_std_host_resolve")
  27. public static function host_resolve(host:String) : Int return 0;
  28. @:extern @:native("_hx_std_host_to_string")
  29. public static function host_to_string(ip:Int) : String return null;
  30. @:extern @:native("_hx_std_host_reverse")
  31. public static function host_reverse(host:Int) : String return null;
  32. @:extern @:native("_hx_std_host_local")
  33. public static function host_local() : String return null;
  34. @:extern @:native("_hx_std_socket_connect")
  35. public static function socket_connect(o:Dynamic,host:Int,port:Int) : Void { }
  36. @:extern @:native("_hx_std_socket_listen")
  37. public static function socket_listen(o:Dynamic,n:Int) : Void { }
  38. @:extern @:native("_hx_std_socket_select")
  39. public static function socket_select(rs:Array<Dynamic>,ws:Array<Dynamic>,es:Array<Dynamic>,timeout:Dynamic) : Array<Dynamic> return null;
  40. @:extern @:native("_hx_std_socket_fast_select")
  41. public static function socket_fast_select(rs:Array<Dynamic>,ws:Array<Dynamic>,es:Array<Dynamic>,timeout:Dynamic) : Void { }
  42. @:extern @:native("_hx_std_socket_accept")
  43. public static function socket_accept(o:Dynamic) : Dynamic return null;
  44. @:extern @:native("_hx_std_socket_peer")
  45. public static function socket_peer(o:Dynamic) : Array<Int> return null;
  46. @:extern @:native("_hx_std_socket_host")
  47. public static function socket_host(o:Dynamic) : Array<Int> return null;
  48. @:extern @:native("_hx_std_socket_set_timeout")
  49. public static function socket_set_timeout(o:Dynamic,t:Dynamic) : Void { }
  50. @:extern @:native("_hx_std_socket_shutdown")
  51. public static function socket_shutdown(o:Dynamic,r:Bool,w:Bool) : Void { }
  52. @:extern @:native("_hx_std_socket_set_blocking")
  53. public static function socket_set_blocking(o:Dynamic,b:Bool) : Void { }
  54. @:extern @:native("_hx_std_socket_set_fast_send")
  55. public static function socket_set_fast_send(o:Dynamic,b:Bool) : Void { }
  56. @:extern @:native("_hx_std_socket_poll_alloc")
  57. public static function socket_poll_alloc(nsocks:Int) : Dynamic return null;
  58. @:extern @:native("_hx_std_socket_poll_prepare")
  59. public static function socket_poll_prepare(pdata:Dynamic,rsocks:Array<Socket>,wsocks:Array<Socket>) : Array< Array<Int> > return null;
  60. @:extern @:native("_hx_std_socket_poll_events")
  61. public static function socket_poll_events(pdata:Dynamic,timeout:Float) : Void { }
  62. @:extern @:native("_hx_std_socket_poll")
  63. public static function socket_poll(socks:Array<Socket>,pdata:Dynamic,timeout:Float) : Array<Socket> return null;
  64. @:extern @:native("_hx_std_socket_send_to")
  65. public static function socket_send_to(o:Dynamic,buf:haxe.io.BytesData,p:Int,l:Int,inAddr:Dynamic) : Int return 0;
  66. @:extern @:native("_hx_std_socket_recv_from")
  67. public static function socket_recv_from(o:Dynamic,buf:haxe.io.BytesData,p:Int,l:Int,outAddr:Dynamic) : Int return 0;
  68. }