class sun.net.sdp.SdpProvider$AddressPortRangeRule extends sun.net.sdp.SdpProvider$PortRangeRule
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.net.sdp.SdpProvider$AddressPortRangeRule
super_class: sun.net.sdp.SdpProvider$PortRangeRule
{
private final byte[] addressAsBytes;
descriptor: [B
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int prefixByteCount;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final byte mask;
descriptor: B
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(sun.net.sdp.SdpProvider$Action, java.net.InetAddress, int, int, int);
descriptor: (Lsun/net/sdp/SdpProvider$Action;Ljava/net/InetAddress;III)V
flags: (0x0000)
Code:
stack=5, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
iload 4
iload 5
invokespecial sun.net.sdp.SdpProvider$PortRangeRule.<init>:(Lsun/net/sdp/SdpProvider$Action;II)V
1: aload 0
aload 2
invokevirtual java.net.InetAddress.getAddress:()[B
putfield sun.net.sdp.SdpProvider$AddressPortRangeRule.addressAsBytes:[B
2: aload 0
iload 3
iconst_3
ishr
putfield sun.net.sdp.SdpProvider$AddressPortRangeRule.prefixByteCount:I
3: aload 0
sipush 255
bipush 8
iload 3
bipush 8
irem
isub
ishl
i2b
putfield sun.net.sdp.SdpProvider$AddressPortRangeRule.mask:B
4: return
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 5 0 this Lsun/net/sdp/SdpProvider$AddressPortRangeRule;
0 5 1 action Lsun/net/sdp/SdpProvider$Action;
0 5 2 address Ljava/net/InetAddress;
0 5 3 prefix I
0 5 4 port I
0 5 5 end I
MethodParameters:
Name Flags
action
address
prefix
port
end
public boolean match(sun.net.sdp.SdpProvider$Action, java.net.InetAddress, int);
descriptor: (Lsun/net/sdp/SdpProvider$Action;Ljava/net/InetAddress;I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 0
invokevirtual sun.net.sdp.SdpProvider$AddressPortRangeRule.action:()Lsun/net/sdp/SdpProvider$Action;
if_acmpeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.net.InetAddress.getAddress:()[B
astore 4
start local 4 3: aload 4
arraylength
aload 0
getfield sun.net.sdp.SdpProvider$AddressPortRangeRule.addressAsBytes:[B
arraylength
if_icmpeq 5
4: iconst_0
ireturn
5: StackMap locals: byte[]
StackMap stack:
iconst_0
istore 5
start local 5 6: goto 10
7: StackMap locals: int
StackMap stack:
aload 4
iload 5
baload
aload 0
getfield sun.net.sdp.SdpProvider$AddressPortRangeRule.addressAsBytes:[B
iload 5
baload
if_icmpeq 9
8: iconst_0
ireturn
9: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
10: iload 5
aload 0
getfield sun.net.sdp.SdpProvider$AddressPortRangeRule.prefixByteCount:I
if_icmplt 7
end local 5 11: aload 0
getfield sun.net.sdp.SdpProvider$AddressPortRangeRule.prefixByteCount:I
aload 0
getfield sun.net.sdp.SdpProvider$AddressPortRangeRule.addressAsBytes:[B
arraylength
if_icmpge 16
12: aload 4
aload 0
getfield sun.net.sdp.SdpProvider$AddressPortRangeRule.prefixByteCount:I
baload
aload 0
getfield sun.net.sdp.SdpProvider$AddressPortRangeRule.mask:B
iand
13: aload 0
getfield sun.net.sdp.SdpProvider$AddressPortRangeRule.addressAsBytes:[B
aload 0
getfield sun.net.sdp.SdpProvider$AddressPortRangeRule.prefixByteCount:I
baload
aload 0
getfield sun.net.sdp.SdpProvider$AddressPortRangeRule.mask:B
iand
14: if_icmpeq 16
15: iconst_0
ireturn
16: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
iload 3
invokespecial sun.net.sdp.SdpProvider$PortRangeRule.match:(Lsun/net/sdp/SdpProvider$Action;Ljava/net/InetAddress;I)Z
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lsun/net/sdp/SdpProvider$AddressPortRangeRule;
0 17 1 action Lsun/net/sdp/SdpProvider$Action;
0 17 2 address Ljava/net/InetAddress;
0 17 3 port I
3 17 4 candidate [B
6 11 5 i I
MethodParameters:
Name Flags
action
address
port
}
SourceFile: "SdpProvider.java"
NestHost: sun.net.sdp.SdpProvider
InnerClasses:
private final Action = sun.net.sdp.SdpProvider$Action of sun.net.sdp.SdpProvider
private AddressPortRangeRule = sun.net.sdp.SdpProvider$AddressPortRangeRule of sun.net.sdp.SdpProvider
private PortRangeRule = sun.net.sdp.SdpProvider$PortRangeRule of sun.net.sdp.SdpProvider