Compiled from "ScalaCollectionsSerializer.scala" public class com.romix.scala.serialization.kryo.ScalaMapSerializer extends com.esotericsoftware.kryo.Serializer{ private final com.esotericsoftware.kryo.Kryo kryo; public scala.collection.Map create(com.esotericsoftware.kryo.Kryo, com.esotericsoftware.kryo.io.Input, java.lang.Class); Code: 0: aload_0 1: invokevirtual #108; //Method length:()I 4: iconst_0 5: if_icmpeq 15 8: aload_0 9: invokevirtual #108; //Method length:()I 12: goto 20 15: aload_2 16: iconst_1 17: invokevirtual #114; //Method com/esotericsoftware/kryo/io/Input.readInt:(Z)I 20: istore 4 22: new #116; //class scala/runtime/ObjectRef 25: dup 26: ldc #118; //class scala/collection/SortedMap 28: aload_3 29: invokevirtual #122; //Method java/lang/Class.isAssignableFrom:(Ljava/lang/Class;)Z 32: ifeq 81 35: aload_1 36: aload_2 37: invokevirtual #126; //Method com/esotericsoftware/kryo/Kryo.readClassAndObject:(Lcom/esotericsoftware/kryo/io/Input;)Ljava/lang/Object; 40: checkcast #128; //class scala/math/Ordering 43: astore 6 45: aload_3 46: iconst_1 47: anewarray #90; //class java/lang/Class 50: dup 51: iconst_0 52: ldc #128; //class scala/math/Ordering 54: aastore 55: invokevirtual #132; //Method java/lang/Class.getDeclaredConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor; 58: iconst_1 59: anewarray #134; //class java/lang/Object 62: dup 63: iconst_0 64: aload 6 66: aastore 67: invokevirtual #140; //Method java/lang/reflect/Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object; 70: checkcast #142; //class scala/collection/Map 73: invokeinterface #146, 1; //InterfaceMethod scala/collection/Map.empty:()Lscala/collection/Map; 78: goto 111 81: aload_1 82: aload_3 83: invokevirtual #149; //Method com/esotericsoftware/kryo/Kryo.newInstance:(Ljava/lang/Class;)Ljava/lang/Object; 86: checkcast #142; //class scala/collection/Map 89: invokeinterface #146, 1; //InterfaceMethod scala/collection/Map.empty:()Lscala/collection/Map; 94: goto 111 97: pop 98: aload_1 99: aload_3 100: invokevirtual #149; //Method com/esotericsoftware/kryo/Kryo.newInstance:(Ljava/lang/Class;)Ljava/lang/Object; 103: checkcast #142; //class scala/collection/Map 106: invokeinterface #146, 1; //InterfaceMethod scala/collection/Map.empty:()Lscala/collection/Map; # HERE! 111: invokespecial #153; //Method scala/runtime/ObjectRef."":(Ljava/lang/Object;)V 114: astore 5 116: iload 4 118: iconst_0 119: if_icmpeq 232 122: aload_0 123: invokevirtual #155; //Method keySerializer:()Lcom/esotericsoftware/kryo/Serializer; 126: ifnonnull 162 129: getstatic #161; //Field scala/runtime/RichInt$.MODULE$:Lscala/runtime/RichInt$; 132: getstatic #166; //Field scala/Predef$.MODULE$:Lscala/Predef$; 135: iconst_0 136: invokevirtual #172; //Method scala/LowPriorityImplicits.intWrapper:(I)I 139: iload 4 141: invokevirtual #176; //Method scala/runtime/RichInt$.until$extension0:(II)Lscala/collection/immutable/Range; 144: new #178; //class com/romix/scala/serialization/kryo/ScalaMapSerializer$$anonfun$create$3 147: dup 148: aload_0 149: aload_1 150: aload_2 151: aload 5 153: invokespecial #181; //Method com/romix/scala/serialization/kryo/ScalaMapSerializer$$anonfun$create$3."":(Lcom/romix/scala/serialization/kryo/ScalaMapSerializer;Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Lscala/runtime/ObjectRef;)V 156: invokevirtual #187; //Method scala/collection/immutable/Range.foreach$mVc$sp:(Lscala/Function1;)V 159: goto 232 162: aload_0 163: invokevirtual #189; //Method elementsCanBeNull:()Z 166: ifeq 202 169: getstatic #161; //Field scala/runtime/RichInt$.MODULE$:Lscala/runtime/RichInt$; 172: getstatic #166; //Field scala/Predef$.MODULE$:Lscala/Predef$; 175: iconst_0 176: invokevirtual #172; //Method scala/LowPriorityImplicits.intWrapper:(I)I 179: iload 4 181: invokevirtual #176; //Method scala/runtime/RichInt$.until$extension0:(II)Lscala/collection/immutable/Range; 184: new #191; //class com/romix/scala/serialization/kryo/ScalaMapSerializer$$anonfun$create$1 187: dup 188: aload_0 189: aload_1 190: aload_2 191: aload 5 193: invokespecial #192; //Method com/romix/scala/serialization/kryo/ScalaMapSerializer$$anonfun$create$1."":(Lcom/romix/scala/serialization/kryo/ScalaMapSerializer;Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Lscala/runtime/ObjectRef;)V 196: invokevirtual #187; //Method scala/collection/immutable/Range.foreach$mVc$sp:(Lscala/Function1;)V 199: goto 232 202: getstatic #161; //Field scala/runtime/RichInt$.MODULE$:Lscala/runtime/RichInt$; 205: getstatic #166; //Field scala/Predef$.MODULE$:Lscala/Predef$; 208: iconst_0 209: invokevirtual #172; //Method scala/LowPriorityImplicits.intWrapper:(I)I 212: iload 4 214: invokevirtual #176; //Method scala/runtime/RichInt$.until$extension0:(II)Lscala/collection/immutable/Range; 217: new #194; //class com/romix/scala/serialization/kryo/ScalaMapSerializer$$anonfun$create$2 220: dup 221: aload_0 222: aload_1 223: aload_2 224: aload 5 226: invokespecial #195; //Method com/romix/scala/serialization/kryo/ScalaMapSerializer$$anonfun$create$2."":(Lcom/romix/scala/serialization/kryo/ScalaMapSerializer;Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Lscala/runtime/ObjectRef;)V 229: invokevirtual #187; //Method scala/collection/immutable/Range.foreach$mVc$sp:(Lscala/Function1;)V 232: aload 5 234: getfield #199; //Field scala/runtime/ObjectRef.elem:Ljava/lang/Object; 237: checkcast #142; //class scala/collection/Map 240: areturn Exception table: from to target type 45 81 97 any LineNumberTable: line 198: 0 line 201: 22 line 203: 35 line 204: 45 line 207: 81 line 204: 97 line 205: 98 line 201: 111 line 200: 114 line 210: 116 line 211: 122 line 218: 132 line 212: 162 line 213: 172 line 215: 205 line 222: 232 LocalVariableTable: Start Length Slot Name Signature 0 241 0 this Lcom/romix/scala/serialization/kryo/ScalaMapSerializer; 0 241 1 kryo Lcom/esotericsoftware/kryo/Kryo; 0 241 2 input Lcom/esotericsoftware/kryo/io/Input; 0 241 3 typ Ljava/lang/Class; 22 218 4 len I 45 196 6 mapOrdering Lscala/math/Ordering; 116 124 5 coll Lscala/runtime/ObjectRef;