public class org.jruby.ext.socket.Ifaddr extends org.jruby.RubyObject
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.ext.socket.Ifaddr
super_class: org.jruby.RubyObject
{
private java.lang.String name;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private boolean isUp;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean isLoopback;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean isPointToPoint;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.net.InetAddress address;
descriptor: Ljava/net/InetAddress;
flags: (0x0002) ACC_PRIVATE
private java.net.InetAddress broadcast;
descriptor: Ljava/net/InetAddress;
flags: (0x0002) ACC_PRIVATE
private java.net.InterfaceAddress interfaceAddress;
descriptor: Ljava/net/InterfaceAddress;
flags: (0x0002) ACC_PRIVATE
private java.net.NetworkInterface networkInterface;
descriptor: Ljava/net/NetworkInterface;
flags: (0x0002) ACC_PRIVATE
private boolean isLink;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.lang.String netmask;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private int index;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.lang.String flagStatus;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private org.jruby.ext.socket.Addrinfo addr;
descriptor: Lorg/jruby/ext/socket/Addrinfo;
flags: (0x0002) ACC_PRIVATE
public static void createIfaddr(org.jruby.Ruby);
descriptor: (Lorg/jruby/Ruby;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
ldc "Socket"
invokevirtual org.jruby.Ruby.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
1: ldc "Ifaddr"
2: aload 0
invokevirtual org.jruby.Ruby.getData:()Lorg/jruby/RubyClass;
3: new org.jruby.ext.socket.Ifaddr$1
dup
invokespecial org.jruby.ext.socket.Ifaddr$1.<init>:()V
4: invokevirtual org.jruby.RubyClass.defineClassUnder:(Ljava/lang/String;Lorg/jruby/RubyClass;Lorg/jruby/runtime/ObjectAllocator;)Lorg/jruby/RubyClass;
astore 1
start local 1 5: aload 1
ldc Lorg/jruby/ext/socket/Ifaddr;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 runtime Lorg/jruby/Ruby;
5 7 1 ifaddr 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.RubyObject.<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/Ifaddr;
0 2 1 runtime Lorg/jruby/Ruby;
0 2 2 metaClass Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime
metaClass
public void <init>(org.jruby.Ruby, org.jruby.RubyClass, java.net.NetworkInterface, java.net.InterfaceAddress);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/net/NetworkInterface;Ljava/net/InterfaceAddress;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
1: aload 0
aload 3
invokevirtual java.net.NetworkInterface.getDisplayName:()Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.name:Ljava/lang/String;
2: aload 0
aload 3
invokevirtual java.net.NetworkInterface.isLoopback:()Z
putfield org.jruby.ext.socket.Ifaddr.isLoopback:Z
3: aload 0
aload 3
invokevirtual java.net.NetworkInterface.isUp:()Z
putfield org.jruby.ext.socket.Ifaddr.isUp:Z
4: aload 0
aload 3
invokevirtual java.net.NetworkInterface.isPointToPoint:()Z
putfield org.jruby.ext.socket.Ifaddr.isPointToPoint:Z
5: aload 0
aload 3
invokevirtual java.net.NetworkInterface.getIndex:()I
putfield org.jruby.ext.socket.Ifaddr.index:I
6: aload 0
aload 3
putfield org.jruby.ext.socket.Ifaddr.networkInterface:Ljava/net/NetworkInterface;
7: aload 0
iconst_0
putfield org.jruby.ext.socket.Ifaddr.isLink:Z
8: aload 0
aload 4
invokevirtual java.net.InterfaceAddress.getAddress:()Ljava/net/InetAddress;
putfield org.jruby.ext.socket.Ifaddr.address:Ljava/net/InetAddress;
9: aload 0
aload 4
invokevirtual java.net.InterfaceAddress.getBroadcast:()Ljava/net/InetAddress;
putfield org.jruby.ext.socket.Ifaddr.broadcast:Ljava/net/InetAddress;
10: aload 0
aload 4
putfield org.jruby.ext.socket.Ifaddr.interfaceAddress:Ljava/net/InterfaceAddress;
11: aload 0
aload 1
invokevirtual org.jruby.ext.socket.Ifaddr.setAddr:(Lorg/jruby/Ruby;)V
12: aload 0
aload 4
invokevirtual org.jruby.ext.socket.Ifaddr.setNetmask:(Ljava/net/InterfaceAddress;)V
13: aload 0
aload 3
invokevirtual org.jruby.ext.socket.Ifaddr.setInspectString:(Ljava/net/NetworkInterface;)V
14: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/jruby/ext/socket/Ifaddr;
0 15 1 runtime Lorg/jruby/Ruby;
0 15 2 metaClass Lorg/jruby/RubyClass;
0 15 3 ni Ljava/net/NetworkInterface;
0 15 4 it Ljava/net/InterfaceAddress;
Exceptions:
throws java.net.SocketException
MethodParameters:
Name Flags
runtime
metaClass
ni
it
public void <init>(org.jruby.Ruby, org.jruby.RubyClass, java.net.NetworkInterface);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/net/NetworkInterface;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
invokespecial org.jruby.RubyObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
1: aload 0
aload 3
invokevirtual java.net.NetworkInterface.getDisplayName:()Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.name:Ljava/lang/String;
2: aload 0
aload 3
invokevirtual java.net.NetworkInterface.isLoopback:()Z
putfield org.jruby.ext.socket.Ifaddr.isLoopback:Z
3: aload 0
aload 3
invokevirtual java.net.NetworkInterface.isUp:()Z
putfield org.jruby.ext.socket.Ifaddr.isUp:Z
4: aload 0
aload 3
invokevirtual java.net.NetworkInterface.isPointToPoint:()Z
putfield org.jruby.ext.socket.Ifaddr.isPointToPoint:Z
5: aload 0
aload 3
invokevirtual java.net.NetworkInterface.getIndex:()I
putfield org.jruby.ext.socket.Ifaddr.index:I
6: aload 0
aload 3
putfield org.jruby.ext.socket.Ifaddr.networkInterface:Ljava/net/NetworkInterface;
7: aload 0
iconst_1
putfield org.jruby.ext.socket.Ifaddr.isLink:Z
8: aload 0
aload 1
invokevirtual org.jruby.ext.socket.Ifaddr.setAddr:(Lorg/jruby/Ruby;)V
9: aload 0
aload 3
invokevirtual org.jruby.ext.socket.Ifaddr.setInspectString:(Ljava/net/NetworkInterface;)V
10: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/jruby/ext/socket/Ifaddr;
0 11 1 runtime Lorg/jruby/Ruby;
0 11 2 metaClass Lorg/jruby/RubyClass;
0 11 3 ni Ljava/net/NetworkInterface;
Exceptions:
throws java.net.SocketException
MethodParameters:
Name Flags
runtime
metaClass
ni
public org.jruby.runtime.builtin.IRubyObject inspect(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
new java.lang.StringBuilder
dup
ldc "#<Socket::Ifaddr: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.jruby.ext.socket.Ifaddr.name:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ">"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/ext/socket/Ifaddr;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject name(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.ext.socket.Ifaddr.name:Ljava/lang/String;
invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/ext/socket/Ifaddr;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject addr(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.ext.socket.Ifaddr.addr:Lorg/jruby/ext/socket/Addrinfo;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/ext/socket/Ifaddr;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject broadaddr(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.ext.socket.Ifaddr.broadcast:Ljava/net/InetAddress;
ifnull 2
aload 0
getfield org.jruby.ext.socket.Ifaddr.isLink:Z
ifne 2
1: new org.jruby.ext.socket.Addrinfo
dup
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "Addrinfo"
invokevirtual org.jruby.Ruby.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
aload 0
getfield org.jruby.ext.socket.Ifaddr.broadcast:Ljava/net/InetAddress;
invokespecial org.jruby.ext.socket.Addrinfo.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/net/InetAddress;)V
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.ext.socket.Ifaddr.isLink:Z
ifeq 6
aload 0
getfield org.jruby.ext.socket.Ifaddr.networkInterface:Ljava/net/NetworkInterface;
invokevirtual java.net.NetworkInterface.isLoopback:()Z
ifne 6
3: new org.jruby.ext.socket.Addrinfo
dup
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "Addrinfo"
invokevirtual org.jruby.Ruby.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
aload 0
getfield org.jruby.ext.socket.Ifaddr.networkInterface:Ljava/net/NetworkInterface;
iconst_1
invokespecial org.jruby.ext.socket.Addrinfo.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/net/NetworkInterface;Z)V
4: areturn
5: StackMap locals:
StackMap stack: java.net.SocketException
pop
6: StackMap locals:
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/jruby/ext/socket/Ifaddr;
0 7 1 context Lorg/jruby/runtime/ThreadContext;
Exception table:
from to target type
2 4 5 Class java.net.SocketException
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject ifindex(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.ext.socket.Ifaddr.index:I
invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/ext/socket/Ifaddr;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject flags(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/ext/socket/Ifaddr;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(notImplemented = true)
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject netmask(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.ext.socket.Ifaddr.netmask:Ljava/lang/String;
ifnonnull 2
1: aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
2: StackMap locals:
StackMap stack:
new org.jruby.ext.socket.Addrinfo
dup
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "Addrinfo"
invokevirtual org.jruby.Ruby.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
aload 0
getfield org.jruby.ext.socket.Ifaddr.netmask:Ljava/lang/String;
invokestatic java.net.InetAddress.getByName:(Ljava/lang/String;)Ljava/net/InetAddress;
invokespecial org.jruby.ext.socket.Addrinfo.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/net/InetAddress;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/ext/socket/Ifaddr;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
Exceptions:
throws java.net.UnknownHostException
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject dstaddr(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/ext/socket/Ifaddr;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(notImplemented = true)
MethodParameters:
Name Flags
context
private void setAddr(org.jruby.Ruby);
descriptor: (Lorg/jruby/Ruby;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.ext.socket.Ifaddr.address:Ljava/net/InetAddress;
ifnull 2
aload 0
getfield org.jruby.ext.socket.Ifaddr.isLink:Z
ifne 2
1: aload 0
new org.jruby.ext.socket.Addrinfo
dup
aload 1
aload 1
ldc "Addrinfo"
invokevirtual org.jruby.Ruby.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
aload 0
getfield org.jruby.ext.socket.Ifaddr.address:Ljava/net/InetAddress;
invokespecial org.jruby.ext.socket.Addrinfo.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/net/InetAddress;)V
putfield org.jruby.ext.socket.Ifaddr.addr:Lorg/jruby/ext/socket/Addrinfo;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.ext.socket.Ifaddr.isLink:Z
ifeq 4
3: aload 0
new org.jruby.ext.socket.Addrinfo
dup
aload 1
aload 1
ldc "Addrinfo"
invokevirtual org.jruby.Ruby.getClass:(Ljava/lang/String;)Lorg/jruby/RubyClass;
aload 0
getfield org.jruby.ext.socket.Ifaddr.networkInterface:Ljava/net/NetworkInterface;
iconst_0
invokespecial org.jruby.ext.socket.Addrinfo.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/net/NetworkInterface;Z)V
putfield org.jruby.ext.socket.Ifaddr.addr:Lorg/jruby/ext/socket/Addrinfo;
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/ext/socket/Ifaddr;
0 5 1 runtime Lorg/jruby/Ruby;
MethodParameters:
Name Flags
runtime
private void setNetmask(java.net.InterfaceAddress);
descriptor: (Ljava/net/InterfaceAddress;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.ext.socket.Ifaddr.isLoopback:Z
ifne 1
aload 1
invokevirtual java.net.InterfaceAddress.getNetworkPrefixLength:()S
ifeq 8
StackMap locals:
StackMap stack:
1: aload 0
getfield org.jruby.ext.socket.Ifaddr.address:Ljava/net/InetAddress;
instanceof java.net.Inet4Address
ifeq 8
2: new java.lang.StringBuilder
dup
aload 0
invokevirtual org.jruby.ext.socket.Ifaddr.ipAddress:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.net.InterfaceAddress.getNetworkPrefixLength:()S
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 2
start local 2 3: aload 0
getfield org.jruby.ext.socket.Ifaddr.isLoopback:Z
ifeq 5
4: new java.lang.StringBuilder
dup
aload 0
invokevirtual org.jruby.ext.socket.Ifaddr.ipAddress:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "/8"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 2
5: StackMap locals: java.lang.String
StackMap stack:
new org.jruby.ext.socket.SubnetUtils
dup
aload 2
invokespecial org.jruby.ext.socket.SubnetUtils.<init>:(Ljava/lang/String;)V
astore 3
start local 3 6: aload 0
aload 3
invokevirtual org.jruby.ext.socket.SubnetUtils.getInfo:()Lorg/jruby/ext/socket/SubnetUtils$SubnetInfo;
invokevirtual org.jruby.ext.socket.SubnetUtils$SubnetInfo.getNetmask:()Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.netmask:Ljava/lang/String;
end local 3 end local 2 7: goto 10
StackMap locals:
StackMap stack:
8: aload 1
invokevirtual java.net.InterfaceAddress.getNetworkPrefixLength:()S
ifeq 10
aload 0
getfield org.jruby.ext.socket.Ifaddr.address:Ljava/net/InetAddress;
instanceof java.net.Inet6Address
ifeq 10
9: aload 0
new java.lang.StringBuilder
dup
aload 0
invokevirtual org.jruby.ext.socket.Ifaddr.ipAddress:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.net.InterfaceAddress.getNetworkPrefixLength:()S
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.jruby.ext.socket.SocketUtilsIPV6.getIPV6NetMask:(Ljava/lang/String;)Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.netmask:Ljava/lang/String;
10: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/jruby/ext/socket/Ifaddr;
0 11 1 it Ljava/net/InterfaceAddress;
3 7 2 subnet Ljava/lang/String;
6 7 3 utils Lorg/jruby/ext/socket/SubnetUtils;
MethodParameters:
Name Flags
it
private void setInspectString(java.net.NetworkInterface);
descriptor: (Ljava/net/NetworkInterface;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.net.NetworkInterface.isUp:()Z
ifeq 1
ldc "UP"
goto 2
StackMap locals:
StackMap stack: org.jruby.ext.socket.Ifaddr
1: ldc "DOWN"
StackMap locals: org.jruby.ext.socket.Ifaddr java.net.NetworkInterface
StackMap stack: org.jruby.ext.socket.Ifaddr java.lang.String
2: putfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
3: aload 1
invokevirtual java.net.NetworkInterface.isLoopback:()Z
ifeq 5
4: aload 0
dup
getfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ",LOOPBACK"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
5: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.net.NetworkInterface.isPointToPoint:()Z
ifeq 7
6: aload 0
dup
getfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ",PTP"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
7: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.net.NetworkInterface.isVirtual:()Z
ifeq 9
8: aload 0
dup
getfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ",VIRTUAL"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
9: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.net.NetworkInterface.supportsMulticast:()Z
ifeq 11
10: aload 0
dup
getfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ",MULTICAST"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
11: StackMap locals:
StackMap stack:
aload 0
dup
getfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ",MTU="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.net.NetworkInterface.getMTU:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
12: aload 1
invokevirtual java.net.NetworkInterface.getHardwareAddress:()[B
astore 2
start local 2 13: aload 2
ifnull 22
14: aload 0
dup
getfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ",HWADDR="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
15: iconst_0
istore 3
start local 3 16: goto 21
17: StackMap locals: byte[] int
StackMap stack:
iload 3
ifle 19
18: aload 0
dup
getfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
19: StackMap locals:
StackMap stack:
aload 0
dup
getfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "%02x"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
iload 3
baload
invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
20: iinc 3 1
StackMap locals:
StackMap stack:
21: iload 3
aload 2
arraylength
if_icmplt 17
end local 3 22: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.ext.socket.Ifaddr.isLink:Z
ifeq 25
23: aload 0
dup
getfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.jruby.ext.socket.Ifaddr.addr:Lorg/jruby/ext/socket/Addrinfo;
invokevirtual org.jruby.ext.socket.Addrinfo.packet_inspect:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
24: goto 31
25: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.jruby.ext.socket.Ifaddr.ipAddress:()Ljava/lang/String;
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 27
26: aload 0
dup
getfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual org.jruby.ext.socket.Ifaddr.ipAddress:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
27: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.ext.socket.Ifaddr.broadcast:Ljava/net/InetAddress;
ifnull 29
28: aload 0
dup
getfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " broadcast="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual org.jruby.ext.socket.Ifaddr.getBroadcastAsString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
29: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.ext.socket.Ifaddr.netmask:Ljava/lang/String;
ifnull 31
30: aload 0
dup
getfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " netmask="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.jruby.ext.socket.Ifaddr.netmask:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield org.jruby.ext.socket.Ifaddr.flagStatus:Ljava/lang/String;
31: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lorg/jruby/ext/socket/Ifaddr;
0 32 1 nif Ljava/net/NetworkInterface;
13 32 2 mac [B
16 22 3 i I
Exceptions:
throws java.net.SocketException
MethodParameters:
Name Flags
nif
private java.lang.String ipAddress();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.ext.socket.Ifaddr.address:Ljava/net/InetAddress;
instanceof java.net.Inet4Address
ifeq 2
1: aload 0
getfield org.jruby.ext.socket.Ifaddr.address:Ljava/net/InetAddress;
invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
iconst_1
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.ext.socket.Ifaddr.address:Ljava/net/InetAddress;
instanceof java.net.Inet6Address
ifeq 4
3: aload 0
getfield org.jruby.ext.socket.Ifaddr.address:Ljava/net/InetAddress;
invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
iconst_1
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
ldc "%"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
iconst_0
aaload
areturn
4: StackMap locals:
StackMap stack:
ldc ""
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/ext/socket/Ifaddr;
private java.lang.String getBroadcastAsString();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.ext.socket.Ifaddr.broadcast:Ljava/net/InetAddress;
ifnonnull 1
ldc ""
areturn
1: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.ext.socket.Ifaddr.broadcast:Ljava/net/InetAddress;
invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
iconst_1
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/ext/socket/Ifaddr;
}
SourceFile: "Ifaddr.java"
NestMembers:
org.jruby.ext.socket.Ifaddr$1
InnerClasses:
org.jruby.ext.socket.Ifaddr$1
public final SubnetInfo = org.jruby.ext.socket.SubnetUtils$SubnetInfo of org.jruby.ext.socket.SubnetUtils