On May 28, 2012, at 3:07 PM 5/28/12, Brian C. wrote:
ext/socket/socket.c:VALUE rb_cTCPServer;
ext/socket/socket.c: rb_define_global_const(“TCPserver”,
sock_listen, 1);
ext/tk/sample/tkextlib/tkHTML/page3/index.html: Tcl_OpenTcpServer
I’m on 1.9.3. The same grep shows:
wendigo:ruby james$ grep -iR TCPServer ext/
ext/openssl/ossl.c: * tcp_server = TCPServer.new 5000
ext/socket/.document:tcpserver.c
ext/socket/basicsocket.c: * TCPServer.open(“127.0.0.1”, 15120) {|serv|
ext/socket/basicsocket.c: * TCPServer.open(“127.0.0.1”, 1440) {|serv|
ext/socket/basicsocket.c: * TCPServer.open(“127.0.0.1”, 1512) {|serv|
ext/socket/basicsocket.c: * TCPServer.open(“127.0.0.1”, 1728) {|serv|
ext/socket/basicsocket.c: * serv = TCPServer.new(“127.0.0.1”, 0)
ext/socket/depend:tcpserver.o: tcpserver.c $(SOCK_HEADERS)
ext/socket/extconf.rb: “tcpserver.#{$OBJEXT}”,
ext/socket/init.c:VALUE rb_cTCPServer;
ext/socket/init.c: rsock_init_tcpserver();
ext/socket/rubysocket.h:extern VALUE rb_cTCPServer;
ext/socket/rubysocket.h:void rsock_init_tcpserver(void);
ext/socket/socket.c: * server = TCPServer.new 2000 # Server bound
to port 2000
ext/socket/socket.c: * Socket.tcp_server_loop, TCPServer.open
ext/socket/tcpserver.c: tcpserver.c -
ext/socket/tcpserver.c: * TCPServer.new([hostname,] port)
=> tcpserver
ext/socket/tcpserver.c: * serv = TCPServer.new(“127.0.0.1”, 28561)
ext/socket/tcpserver.c: * tcpserver.accept => tcpsocket
ext/socket/tcpserver.c: * TCPServer.open(“127.0.0.1”, 14641) {|serv|
ext/socket/tcpserver.c: * tcpserver.accept_nonblock => tcpsocket
ext/socket/tcpserver.c: * serv = TCPServer.new(2202)
ext/socket/tcpserver.c: * to TCPServer#accept_nonblock fails.
ext/socket/tcpserver.c: * TCPServer#accept_nonblock may raise any error
corresponding to accept(2) failure,
ext/socket/tcpserver.c: * * TCPServer#accept
ext/socket/tcpserver.c: * tcpserver.sysaccept => file_descriptor
ext/socket/tcpserver.c: * TCPServer.open(“127.0.0.1”, 28561) {|serv|
ext/socket/tcpserver.c:rsock_init_tcpserver(void)
ext/socket/tcpserver.c: * Document-class: TCPServer < TCPSocket
ext/socket/tcpserver.c: * TCPServer represents a TCP/IP server
socket.
ext/socket/tcpserver.c: * server = TCPServer.new 2000 # Server
bind to port 2000
ext/socket/tcpserver.c: * server = TCPServer.new 2000
ext/socket/tcpserver.c: rb_cTCPServer = rb_define_class(“TCPServer”,
rb_cTCPSocket);
ext/socket/tcpserver.c: rb_define_method(rb_cTCPServer, “accept”,
tcp_accept, 0);
ext/socket/tcpserver.c: rb_define_method(rb_cTCPServer,
“accept_nonblock”, tcp_accept_nonblock, 0);
ext/socket/tcpserver.c: rb_define_method(rb_cTCPServer, “sysaccept”,
tcp_sysaccept, 0);
ext/socket/tcpserver.c: rb_define_method(rb_cTCPServer, “initialize”,
tcp_svr_init, -1);
ext/socket/tcpserver.c: rb_define_method(rb_cTCPServer, “listen”,
rsock_sock_listen, 1); /* in socket.c */
ext/tk/sample/tkextlib/tkHTML/page3/index.html: Tcl_OpenTcpServer
I see two VALUE definitions: rb_cTCPServer in init.c, and an exern
declaration of the same in rubysocket.h.