public class org.jruby.ext.socket.RubyTCPSocket extends org.jruby.ext.socket.RubyIPSocket
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.ext.socket.RubyTCPSocket
super_class: org.jruby.ext.socket.RubyIPSocket
{
private static org.jruby.runtime.ObjectAllocator TCPSOCKET_ALLOCATOR;
descriptor: Lorg/jruby/runtime/ObjectAllocator;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new org.jruby.ext.socket.RubyTCPSocket$1
dup
invokespecial org.jruby.ext.socket.RubyTCPSocket$1.<init>:()V
putstatic org.jruby.ext.socket.RubyTCPSocket.TCPSOCKET_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
1: return
LocalVariableTable:
Start End Slot Name Signature
static void createTCPSocket(org.jruby.Ruby);
descriptor: (Lorg/jruby/Ruby;)V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
ldc "TCPSocket"
aload 0
ldc "IPSocket"
invokevirtual org.jruby.Ruby.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
getstatic org.jruby.ext.socket.RubyTCPSocket.TCPSOCKET_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
invokevirtual org.jruby.Ruby.defineClass:(Ljava/lang/String;Lorg/jruby/RubyClass;Lorg/jruby/runtime/ObjectAllocator;)Lorg/jruby/RubyClass;
astore 1
start local 1 1: aload 1
ldc Lorg/jruby/ext/socket/RubyTCPSocket;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
2: aload 0
invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
ldc "TCPsocket"
aload 1
invokevirtual org.jruby.RubyClass.setConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 runtime Lorg/jruby/Ruby;
1 4 1 rb_cTCPSocket Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime
public void <init>(org.jruby.Ruby, org.jruby.RubyClass);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial org.jruby.ext.socket.RubyIPSocket.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/ext/socket/RubyTCPSocket;
0 2 1 runtime Lorg/jruby/Ruby;
0 2 2 type Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime
type
private java.nio.channels.SocketChannel attemptConnect(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.String, int, java.lang.String, int);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;ILjava/lang/String;I)Ljava/nio/channels/SocketChannel;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=13, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 5
invokestatic java.net.InetAddress.getAllByName:(Ljava/lang/String;)[Ljava/net/InetAddress;
dup
astore 10
arraylength
istore 9
iconst_0
istore 8
goto 22
StackMap locals: org.jruby.ext.socket.RubyTCPSocket org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject java.lang.String int java.lang.String int top int int java.net.InetAddress[]
StackMap stack:
1: aload 10
iload 8
aaload
astore 7
start local 7 2: invokestatic java.nio.channels.SocketChannel.open:()Ljava/nio/channels/SocketChannel;
astore 11
start local 11 3: aload 11
invokevirtual java.nio.channels.SocketChannel.socket:()Ljava/net/Socket;
astore 12
start local 12 4: aload 0
aconst_null
putfield org.jruby.ext.socket.RubyTCPSocket.openFile:Lorg/jruby/util/io/OpenFile;
5: aload 0
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 11
invokestatic org.jruby.ext.socket.RubyTCPSocket.newChannelFD:(Lorg/jruby/Ruby;Ljava/nio/channels/Channel;)Lorg/jruby/util/io/ChannelFD;
invokevirtual org.jruby.ext.socket.RubyTCPSocket.initSocket:(Lorg/jruby/util/io/ChannelFD;)V
6: aload 11
iconst_0
invokevirtual java.nio.channels.SocketChannel.configureBlocking:(Z)Ljava/nio/channels/SelectableChannel;
pop
7: aload 3
ifnull 10
8: aload 12
iconst_1
invokevirtual java.net.Socket.setReuseAddress:(Z)V
9: aload 12
new java.net.InetSocketAddress
dup
aload 3
invokestatic java.net.InetAddress.getByName:(Ljava/lang/String;)Ljava/net/InetAddress;
iload 4
invokespecial java.net.InetSocketAddress.<init>:(Ljava/net/InetAddress;I)V
invokevirtual java.net.Socket.bind:(Ljava/net/SocketAddress;)V
10: StackMap locals: org.jruby.ext.socket.RubyTCPSocket org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject java.lang.String int java.lang.String int java.net.InetAddress int int java.net.InetAddress[] java.nio.channels.SocketChannel java.net.Socket
StackMap stack:
aload 11
new java.net.InetSocketAddress
dup
aload 7
iload 6
invokespecial java.net.InetSocketAddress.<init>:(Ljava/net/InetAddress;I)V
invokevirtual java.nio.channels.SocketChannel.connect:(Ljava/net/SocketAddress;)Z
pop
11: goto 13
12: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.jruby.runtime.ThreadContext.pollThreadEvents:()V
13: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.jruby.runtime.ThreadContext.getThread:()Lorg/jruby/RubyThread;
aload 11
aload 0
bipush 8
invokevirtual org.jruby.RubyThread.select:(Ljava/nio/channels/Channel;Lorg/jruby/RubyIO;I)Z
ifeq 12
14: goto 16
15: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.jruby.runtime.ThreadContext.pollThreadEvents:()V
16: StackMap locals:
StackMap stack:
aload 11
invokevirtual java.nio.channels.SocketChannel.finishConnect:()Z
ifeq 15
17: aload 11
iconst_1
invokevirtual java.nio.channels.SocketChannel.configureBlocking:(Z)Ljava/nio/channels/SelectableChannel;
pop
18: aload 11
19: areturn
20: StackMap locals:
StackMap stack: java.net.ConnectException
pop
end local 12 end local 11 end local 7 21: iinc 8 1
StackMap locals: org.jruby.ext.socket.RubyTCPSocket org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject java.lang.String int java.lang.String int top int int java.net.InetAddress[]
StackMap stack:
22: iload 8
iload 9
if_icmplt 1
23: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
ldc "connect(2) for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.inspect:()Lorg/jruby/runtime/builtin/IRubyObject;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " port "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 6
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newErrnoECONNREFUSEDError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lorg/jruby/ext/socket/RubyTCPSocket;
0 24 1 context Lorg/jruby/runtime/ThreadContext;
0 24 2 host Lorg/jruby/runtime/builtin/IRubyObject;
0 24 3 localHost Ljava/lang/String;
0 24 4 localPort I
0 24 5 remoteHost Ljava/lang/String;
0 24 6 remotePort I
2 21 7 address Ljava/net/InetAddress;
3 21 11 channel Ljava/nio/channels/SocketChannel;
4 21 12 socket Ljava/net/Socket;
Exception table:
from to target type
10 19 20 Class java.net.ConnectException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
context
host
localHost
localPort
remoteHost
remotePort
public org.jruby.runtime.builtin.IRubyObject initialize(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=14, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 3
start local 3 1: aload 2
iconst_0
aaload
astore 4
start local 4 2: aload 2
iconst_1
aaload
astore 5
start local 5 3: aload 4
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifeq 4
ldc "localhost"
goto 5
StackMap locals: org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject
StackMap stack:
4: aload 4
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
invokevirtual org.jruby.RubyString.toString:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
5: astore 6
start local 6 6: aload 1
aload 5
invokestatic org.jruby.ext.socket.SocketUtils.getPortFrom:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)I
istore 7
start local 7 7: aload 2
arraylength
iconst_3
if_icmplt 8
aload 2
iconst_2
aaload
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifne 8
aload 2
iconst_2
aaload
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
invokevirtual org.jruby.RubyString.toString:()Ljava/lang/String;
goto 9
StackMap locals: java.lang.String int
StackMap stack:
8: aconst_null
StackMap locals:
StackMap stack: java.lang.String
9: astore 8
start local 8 10: aload 2
arraylength
iconst_4
if_icmpne 11
aload 2
iconst_3
aaload
invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
ifne 11
aload 1
aload 2
iconst_3
aaload
invokestatic org.jruby.ext.socket.SocketUtils.getPortFrom:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)I
goto 12
StackMap locals: java.lang.String
StackMap stack:
11: iconst_0
StackMap locals:
StackMap stack: int
12: istore 9
start local 9 13: iconst_0
istore 10
start local 10 14: aconst_null
astore 11
start local 11 15: aload 0
aload 1
aload 4
aload 8
iload 9
aload 6
iload 7
invokevirtual org.jruby.ext.socket.RubyTCPSocket.attemptConnect:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;ILjava/lang/String;I)Ljava/nio/channels/SocketChannel;
astore 11
16: iconst_1
istore 10
17: goto 38
StackMap locals: org.jruby.ext.socket.RubyTCPSocket org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject[] org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject java.lang.String int java.lang.String int int java.nio.channels.SocketChannel
StackMap stack: java.net.BindException
18: astore 12
start local 12 19: aload 3
aload 12
new java.lang.StringBuilder
dup
ldc " to: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 58
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
iload 7
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newErrnoEADDRFromBindException:(Ljava/net/BindException;Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 12 20: StackMap locals:
StackMap stack: java.net.NoRouteToHostException
pop
21: aload 3
ldc "SocketChannel.connect"
invokevirtual org.jruby.Ruby.newErrnoEHOSTUNREACHError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
22: StackMap locals:
StackMap stack: java.net.UnknownHostException
pop
23: aload 3
ldc "initialize: name or service not known"
invokestatic org.jruby.ext.socket.SocketUtils.sockerr:(Lorg/jruby/Ruby;Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
24: StackMap locals:
StackMap stack: java.nio.channels.ClosedChannelException
pop
25: aload 3
invokevirtual org.jruby.Ruby.newErrnoECONNREFUSEDError:()Lorg/jruby/exceptions/RaiseException;
athrow
26: StackMap locals:
StackMap stack: java.net.BindException
astore 12
start local 12 27: aload 3
aload 12
new java.lang.StringBuilder
dup
ldc " on: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 58
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
iload 9
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newErrnoEADDRFromBindException:(Ljava/net/BindException;Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 12 28: StackMap locals:
StackMap stack: java.io.IOException
astore 12
start local 12 29: aload 3
aload 12
invokevirtual org.jruby.Ruby.newIOErrorFromException:(Ljava/io/IOException;)Lorg/jruby/exceptions/RaiseException;
athrow
end local 12 30: StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
astore 12
start local 12 31: aload 3
aload 12
invokevirtual java.lang.IllegalArgumentException.getMessage:()Ljava/lang/String;
aload 12
invokestatic org.jruby.ext.socket.RubyTCPSocket.sockerr:(Lorg/jruby/Ruby;Ljava/lang/String;Ljava/lang/Exception;)Ljava/lang/RuntimeException;
athrow
end local 12 32: StackMap locals:
StackMap stack: java.lang.Throwable
astore 13
33: iload 10
ifne 37
aload 11
ifnull 37
34: aload 11
invokevirtual java.nio.channels.SocketChannel.close:()V
35: goto 37
StackMap locals: org.jruby.ext.socket.RubyTCPSocket org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject[] org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject java.lang.String int java.lang.String int int java.nio.channels.SocketChannel top java.lang.Throwable
StackMap stack: java.io.IOException
36: pop
37: StackMap locals:
StackMap stack:
aload 13
athrow
38: StackMap locals: org.jruby.ext.socket.RubyTCPSocket org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject[] org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject java.lang.String int java.lang.String int int java.nio.channels.SocketChannel
StackMap stack:
iload 10
ifne 42
aload 11
ifnull 42
39: aload 11
invokevirtual java.nio.channels.SocketChannel.close:()V
40: goto 42
StackMap locals:
StackMap stack: java.io.IOException
41: pop
42: StackMap locals:
StackMap stack:
aload 1
43: getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 this Lorg/jruby/ext/socket/RubyTCPSocket;
0 44 1 context Lorg/jruby/runtime/ThreadContext;
0 44 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
1 44 3 runtime Lorg/jruby/Ruby;
2 44 4 host Lorg/jruby/runtime/builtin/IRubyObject;
3 44 5 port Lorg/jruby/runtime/builtin/IRubyObject;
6 44 6 remoteHost Ljava/lang/String;
7 44 7 remotePort I
10 44 8 localHost Ljava/lang/String;
13 44 9 localPort I
14 44 10 success Z
15 44 11 channel Ljava/nio/channels/SocketChannel;
19 20 12 e Ljava/net/BindException;
27 28 12 e Ljava/net/BindException;
29 30 12 e Ljava/io/IOException;
31 32 12 e Ljava/lang/IllegalArgumentException;
Exception table:
from to target type
15 17 18 Class java.net.BindException
15 17 20 Class java.net.NoRouteToHostException
15 17 22 Class java.net.UnknownHostException
15 24 24 Class java.nio.channels.ClosedChannelException
15 24 26 Class java.net.BindException
15 24 28 Class java.io.IOException
15 24 30 Class java.lang.IllegalArgumentException
15 32 32 any
34 35 36 Class java.io.IOException
39 40 41 Class java.io.IOException
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(required = 2, optional = 2, visibility = org.jruby.runtime.Visibility.PRIVATE:Lorg/jruby/runtime/Visibility;)
MethodParameters:
Name Flags
context
args
public static org.jruby.runtime.builtin.IRubyObject gethostbyname(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 3
start local 3 1: aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
invokevirtual org.jruby.RubyString.toString:()Ljava/lang/String;
astore 8
start local 8 2: aload 8
invokestatic java.net.InetAddress.getByName:(Ljava/lang/String;)Ljava/net/InetAddress;
astore 9
start local 9 3: aload 3
aload 0
aload 1
invokestatic org.jruby.ext.socket.RubyTCPSocket.do_not_reverse_lookup:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
ifeq 4
aload 9
invokevirtual java.net.InetAddress.getHostAddress:()Ljava/lang/String;
goto 5
StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby top top top top java.lang.String java.net.InetAddress
StackMap stack: org.jruby.Ruby
4: aload 9
invokevirtual java.net.InetAddress.getCanonicalHostName:()Ljava/lang/String;
StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby top top top top java.lang.String java.net.InetAddress
StackMap stack: org.jruby.Ruby java.lang.String
5: invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
astore 4
start local 4 6: aload 3
invokevirtual org.jruby.Ruby.newArray:()Lorg/jruby/RubyArray;
astore 5
start local 5 7: aload 9
instanceof java.net.Inet4Address
ifeq 10
8: aload 3
getstatic jnr.constants.platform.AddressFamily.AF_INET:Ljnr/constants/platform/AddressFamily;
invokevirtual org.jruby.Ruby.newFixnum:(Ljnr/constants/Constant;)Lorg/jruby/RubyFixnum;
astore 6
start local 6 9: goto 11
end local 6 10: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject top top java.lang.String java.net.InetAddress
StackMap stack:
aload 3
getstatic jnr.constants.platform.AddressFamily.AF_INET6:Ljnr/constants/platform/AddressFamily;
invokevirtual org.jruby.Ruby.newFixnum:(Ljnr/constants/Constant;)Lorg/jruby/RubyFixnum;
astore 6
start local 6 11: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject top java.lang.String java.net.InetAddress
StackMap stack:
aload 3
aload 9
invokevirtual java.net.InetAddress.getHostAddress:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
astore 7
start local 7 12: aload 3
aload 4
aload 5
aload 6
aload 7
invokestatic org.jruby.RubyArray.newArray:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
13: areturn
end local 9 end local 7 end local 6 end local 5 end local 4 14: StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby top top top top java.lang.String
StackMap stack: java.net.UnknownHostException
pop
15: aload 3
ldc "gethostbyname: name or service not known"
invokestatic org.jruby.ext.socket.SocketUtils.sockerr:(Lorg/jruby/Ruby;Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 8 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 context Lorg/jruby/runtime/ThreadContext;
0 16 1 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 16 2 hostname Lorg/jruby/runtime/builtin/IRubyObject;
1 16 3 runtime Lorg/jruby/Ruby;
6 14 4 ret0 Lorg/jruby/runtime/builtin/IRubyObject;
7 14 5 ret1 Lorg/jruby/runtime/builtin/IRubyObject;
9 10 6 ret2 Lorg/jruby/runtime/builtin/IRubyObject;
11 14 6 ret2 Lorg/jruby/runtime/builtin/IRubyObject;
12 14 7 ret3 Lorg/jruby/runtime/builtin/IRubyObject;
2 16 8 hostString Ljava/lang/String;
3 14 9 addr Ljava/net/InetAddress;
Exception table:
from to target type
2 13 14 Class java.net.UnknownHostException
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(meta = true)
MethodParameters:
Name Flags
context
recv
hostname
public static org.jruby.runtime.builtin.IRubyObject open(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
aload 0
aload 1
aload 2
invokestatic org.jruby.ext.socket.RubyTCPSocket.open:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 1 1 args [Lorg/jruby/runtime/builtin/IRubyObject;
0 1 2 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
recv
args
block
public static org.jruby.runtime.builtin.IRubyObject gethostbyname(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
aload 0
aload 1
invokestatic org.jruby.ext.socket.RubyTCPSocket.gethostbyname:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 recv Lorg/jruby/runtime/builtin/IRubyObject;
0 1 1 hostname Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
recv
hostname
}
SourceFile: "RubyTCPSocket.java"
NestMembers:
org.jruby.ext.socket.RubyTCPSocket$1
InnerClasses:
org.jruby.ext.socket.RubyTCPSocket$1