public final class com.mongodb.client.model.geojson.PolygonCoordinates
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.mongodb.client.model.geojson.PolygonCoordinates
super_class: java.lang.Object
{
private final java.util.List<com.mongodb.client.model.geojson.Position> exterior;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lcom/mongodb/client/model/geojson/Position;>;
private final java.util.List<java.util.List<com.mongodb.client.model.geojson.Position>> holes;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljava/util/List<Lcom/mongodb/client/model/geojson/Position;>;>;
public void <init>(java.util.List<com.mongodb.client.model.geojson.Position>, java.util.List<com.mongodb.client.model.geojson.Position>[]);
descriptor: (Ljava/util/List;[Ljava/util/List;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=5, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: ldc "exteriorRing"
aload 1
invokestatic com.mongodb.assertions.Assertions.notNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
pop
2: ldc "ring contains only non-null positions"
aload 1
aconst_null
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 3
iconst_0
goto 4
StackMap locals: com.mongodb.client.model.geojson.PolygonCoordinates java.util.List java.util.List[]
StackMap stack: java.lang.String
3: iconst_1
StackMap locals: com.mongodb.client.model.geojson.PolygonCoordinates java.util.List java.util.List[]
StackMap stack: java.lang.String int
4: invokestatic com.mongodb.assertions.Assertions.isTrueArgument:(Ljava/lang/String;Z)V
5: ldc "ring must contain at least four positions"
aload 1
invokeinterface java.util.List.size:()I
iconst_4
if_icmplt 6
iconst_1
goto 7
StackMap locals:
StackMap stack: java.lang.String
6: iconst_0
StackMap locals: com.mongodb.client.model.geojson.PolygonCoordinates java.util.List java.util.List[]
StackMap stack: java.lang.String int
7: invokestatic com.mongodb.assertions.Assertions.isTrueArgument:(Ljava/lang/String;Z)V
8: ldc "first and last position must be the same"
aload 1
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.mongodb.client.model.geojson.Position
aload 1
aload 1
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokevirtual com.mongodb.client.model.geojson.Position.equals:(Ljava/lang/Object;)Z
invokestatic com.mongodb.assertions.Assertions.isTrueArgument:(Ljava/lang/String;Z)V
9: aload 0
aload 1
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
putfield com.mongodb.client.model.geojson.PolygonCoordinates.exterior:Ljava/util/List;
10: new java.util.ArrayList
dup
aload 2
arraylength
invokespecial java.util.ArrayList.<init>:(I)V
astore 3
start local 3 11: aload 2
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 23
StackMap locals: com.mongodb.client.model.geojson.PolygonCoordinates java.util.List java.util.List[] java.util.List top int int java.util.List[]
StackMap stack:
12: aload 7
iload 5
aaload
astore 4
start local 4 13: ldc "interiorRing"
aload 4
invokestatic com.mongodb.assertions.Assertions.notNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
pop
14: ldc "ring contains only non-null positions"
aload 4
aconst_null
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 15
iconst_0
goto 16
StackMap locals: com.mongodb.client.model.geojson.PolygonCoordinates java.util.List java.util.List[] java.util.List java.util.List int int java.util.List[]
StackMap stack: java.lang.String
15: iconst_1
StackMap locals: com.mongodb.client.model.geojson.PolygonCoordinates java.util.List java.util.List[] java.util.List java.util.List int int java.util.List[]
StackMap stack: java.lang.String int
16: invokestatic com.mongodb.assertions.Assertions.isTrueArgument:(Ljava/lang/String;Z)V
17: ldc "ring must contain at least four positions"
aload 4
invokeinterface java.util.List.size:()I
iconst_4
if_icmplt 18
iconst_1
goto 19
StackMap locals:
StackMap stack: java.lang.String
18: iconst_0
StackMap locals: com.mongodb.client.model.geojson.PolygonCoordinates java.util.List java.util.List[] java.util.List java.util.List int int java.util.List[]
StackMap stack: java.lang.String int
19: invokestatic com.mongodb.assertions.Assertions.isTrueArgument:(Ljava/lang/String;Z)V
20: ldc "first and last position must be the same"
aload 4
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.mongodb.client.model.geojson.Position
aload 4
aload 4
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokevirtual com.mongodb.client.model.geojson.Position.equals:(Ljava/lang/Object;)Z
invokestatic com.mongodb.assertions.Assertions.isTrueArgument:(Ljava/lang/String;Z)V
21: aload 3
aload 4
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 4 22: iinc 5 1
StackMap locals: com.mongodb.client.model.geojson.PolygonCoordinates java.util.List java.util.List[] java.util.List top int int java.util.List[]
StackMap stack:
23: iload 5
iload 6
if_icmplt 12
24: aload 0
aload 3
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
putfield com.mongodb.client.model.geojson.PolygonCoordinates.holes:Ljava/util/List;
25: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lcom/mongodb/client/model/geojson/PolygonCoordinates;
0 26 1 exterior Ljava/util/List<Lcom/mongodb/client/model/geojson/Position;>;
0 26 2 holes [Ljava/util/List;
11 26 3 holesList Ljava/util/List<Ljava/util/List<Lcom/mongodb/client/model/geojson/Position;>;>;
13 22 4 hole Ljava/util/List<Lcom/mongodb/client/model/geojson/Position;>;
Signature: (Ljava/util/List<Lcom/mongodb/client/model/geojson/Position;>;[Ljava/util/List<Lcom/mongodb/client/model/geojson/Position;>;)V
MethodParameters:
Name Flags
exterior final
holes final
public java.util.List<com.mongodb.client.model.geojson.Position> getExterior();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.mongodb.client.model.geojson.PolygonCoordinates.exterior:Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/mongodb/client/model/geojson/PolygonCoordinates;
Signature: ()Ljava/util/List<Lcom/mongodb/client/model/geojson/Position;>;
public java.util.List<java.util.List<com.mongodb.client.model.geojson.Position>> getHoles();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.mongodb.client.model.geojson.PolygonCoordinates.holes:Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/mongodb/client/model/geojson/PolygonCoordinates;
Signature: ()Ljava/util/List<Ljava/util/List<Lcom/mongodb/client/model/geojson/Position;>;>;
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
ifnull 3
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
if_acmpeq 4
3: StackMap locals:
StackMap stack:
iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 1
checkcast com.mongodb.client.model.geojson.PolygonCoordinates
astore 2
start local 2 5: aload 0
getfield com.mongodb.client.model.geojson.PolygonCoordinates.exterior:Ljava/util/List;
aload 2
getfield com.mongodb.client.model.geojson.PolygonCoordinates.exterior:Ljava/util/List;
invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
ifne 7
6: iconst_0
ireturn
7: StackMap locals: com.mongodb.client.model.geojson.PolygonCoordinates
StackMap stack:
aload 0
getfield com.mongodb.client.model.geojson.PolygonCoordinates.holes:Ljava/util/List;
aload 2
getfield com.mongodb.client.model.geojson.PolygonCoordinates.holes:Ljava/util/List;
invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
ifne 9
8: iconst_0
ireturn
9: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/mongodb/client/model/geojson/PolygonCoordinates;
0 10 1 o Ljava/lang/Object;
5 10 2 that Lcom/mongodb/client/model/geojson/PolygonCoordinates;
MethodParameters:
Name Flags
o final
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield com.mongodb.client.model.geojson.PolygonCoordinates.exterior:Ljava/util/List;
invokeinterface java.util.List.hashCode:()I
istore 1
start local 1 1: bipush 31
iload 1
imul
aload 0
getfield com.mongodb.client.model.geojson.PolygonCoordinates.holes:Ljava/util/List;
invokeinterface java.util.List.hashCode:()I
iadd
istore 1
2: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/mongodb/client/model/geojson/PolygonCoordinates;
1 3 1 result I
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "PolygonCoordinates{exterior="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
1: aload 0
getfield com.mongodb.client.model.geojson.PolygonCoordinates.exterior:Ljava/util/List;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
2: aload 0
getfield com.mongodb.client.model.geojson.PolygonCoordinates.holes:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 3
ldc ""
goto 4
StackMap locals:
StackMap stack: java.lang.StringBuilder
3: new java.lang.StringBuilder
dup
ldc ", holes="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.mongodb.client.model.geojson.PolygonCoordinates.holes:Ljava/util/List;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
StackMap locals: com.mongodb.client.model.geojson.PolygonCoordinates
StackMap stack: java.lang.StringBuilder java.lang.String
4: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: bipush 125
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
6: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/mongodb/client/model/geojson/PolygonCoordinates;
}
SourceFile: "PolygonCoordinates.java"