Skip to content

Instantly share code, notes, and snippets.

@arturaz
Created February 26, 2025 07:36
Show Gist options
  • Save arturaz/6962089019c0c32deb227c8ea39fcbda to your computer and use it in GitHub Desktop.
Save arturaz/6962089019c0c32deb227c8ea39fcbda to your computer and use it in GitHub Desktop.
/*
* Decompiled with CFR 0.151.
*/
package cats.effect.resource_shared_memoized;
import cats.effect.kernel.Resource;
import java.io.Serializable;
import scala.Function0;
import scala.Function1;
import scala.None$;
import scala.Option;
import scala.Predef$;
import scala.Product;
import scala.Some;
import scala.collection.Iterator;
import scala.runtime.BoxesRunTime;
import scala.runtime.ScalaRunTime$;
import scala.runtime.Statics;
private static class ResourceSharedMemoized.Allocated<F, A>
implements Product,
Serializable {
private final long users;
private final A value;
private final Function1<Resource.ExitCase, F> cleanup;
@Override
public Iterator<String> productElementNames() {
return Product.productElementNames$(this);
}
public long users() {
return this.users;
}
public A value() {
return this.value;
}
public Function1<Resource.ExitCase, F> cleanup() {
return this.cleanup;
}
public ResourceSharedMemoized.Allocated<F, A> addUser() {
return this.copy(this.users() + 1L, this.copy$default$2(), this.copy$default$3());
}
public Option<ResourceSharedMemoized.Allocated<F, A>> removeUser() {
if (this.users() == 1L) {
return None$.MODULE$;
}
return new Some<ResourceSharedMemoized.Allocated<F, A>>(this.copy(this.users() - 1L, this.copy$default$2(), this.copy$default$3()));
}
public <F, A> ResourceSharedMemoized.Allocated<F, A> copy(long users, A value, Function1<Resource.ExitCase, F> cleanup) {
return new ResourceSharedMemoized.Allocated<F, A>(users, value, cleanup);
}
public <F, A> long copy$default$1() {
return this.users();
}
public <F, A> A copy$default$2() {
return this.value();
}
public <F, A> Function1<Resource.ExitCase, F> copy$default$3() {
return this.cleanup();
}
@Override
public String productPrefix() {
return "Allocated";
}
@Override
public int productArity() {
return 3;
}
@Override
public Object productElement(int x$1) {
int n = x$1;
switch (n) {
case 0: {
return BoxesRunTime.boxToLong(this.users());
}
case 1: {
return this.value();
}
case 2: {
return this.cleanup();
}
}
return Statics.ioobe(x$1);
}
@Override
public Iterator<Object> productIterator() {
return ScalaRunTime$.MODULE$.typedProductIterator(this);
}
@Override
public boolean canEqual(Object x$1) {
return x$1 instanceof ResourceSharedMemoized.Allocated;
}
@Override
public String productElementName(int x$1) {
int n = x$1;
switch (n) {
case 0: {
return "users";
}
case 1: {
return "value";
}
case 2: {
return "cleanup";
}
}
return (String)Statics.ioobe(x$1);
}
public int hashCode() {
int n = -889275714;
n = Statics.mix(n, this.productPrefix().hashCode());
n = Statics.mix(n, Statics.longHash(this.users()));
n = Statics.mix(n, Statics.anyHash(this.value()));
n = Statics.mix(n, Statics.anyHash(this.cleanup()));
return Statics.finalizeHash(n, 3);
}
public String toString() {
return ScalaRunTime$.MODULE$._toString(this);
}
/*
* Enabled force condition propagation
* Lifted jumps to return sites
*/
@Override
public boolean equals(Object x$1) {
if (this == x$1) return true;
Object object = x$1;
if (!(object instanceof ResourceSharedMemoized.Allocated)) return false;
boolean bl = true;
if (!bl) return false;
ResourceSharedMemoized.Allocated allocated = (ResourceSharedMemoized.Allocated)x$1;
if (this.users() != allocated.users()) return false;
if (!BoxesRunTime.equals(this.value(), allocated.value())) return false;
Function1<Resource.ExitCase, F> function1 = this.cleanup();
Function1<Resource.ExitCase, F> function12 = allocated.cleanup();
if (function1 == null) {
if (function12 != null) {
return false;
}
} else if (!function1.equals(function12)) return false;
if (!allocated.canEqual(this)) return false;
return true;
}
public ResourceSharedMemoized.Allocated(long users, A value, Function1<Resource.ExitCase, F> cleanup) {
this.users = users;
this.value = value;
this.cleanup = cleanup;
Product.$init$(this);
Predef$.MODULE$.assert(users > 0L, (Function0<Object>)(Function0<String> & Serializable)() -> new StringBuilder(32).append("users must be > 0, but was ").append(this.users()).append(" for ").append(this.value()).toString());
}
}
Classfile /Users/arturaz/work/cats-effect-resource-shared-memoized/.bloop/coreJVM/bloop-bsp-clients-classes/classes-Metals-qWM0nsRdRNCIaXPI4ygeyw==/cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.class
Last modified 26 Feb 2025; size 6884 bytes
SHA-256 checksum f06f5a6287e5dc1e447c47635d2c02e6004ed0adbecf34336850de2bab39f1c3
Compiled from "ResourceSharedMemoized.scala"
public class cats.effect.resource_shared_memoized.ResourceSharedMemoized$Allocated<F extends java.lang.Object, A extends java.lang.Object> extends java.lang.Object implements scala.Product, java.io.Serializable
minor version: 0
major version: 52
flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: #2 // cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated
super_class: #5 // java/lang/Object
interfaces: 2, fields: 3, methods: 22, attributes: 6
Constant pool:
#1 = Utf8 cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated
#2 = Class #1 // cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated
#3 = Utf8 <F:Ljava/lang/Object;A:Ljava/lang/Object;>Ljava/lang/Object;Lscala/Product;Ljava/io/Serializable;
#4 = Utf8 java/lang/Object
#5 = Class #4 // java/lang/Object
#6 = Utf8 scala/Product
#7 = Class #6 // scala/Product
#8 = Utf8 java/io/Serializable
#9 = Class #8 // java/io/Serializable
#10 = Utf8 ResourceSharedMemoized.scala
#11 = Utf8 cats/effect/kernel/Resource$ExitCase
#12 = Class #11 // cats/effect/kernel/Resource$ExitCase
#13 = Utf8 cats/effect/kernel/Resource
#14 = Class #13 // cats/effect/kernel/Resource
#15 = Utf8 ExitCase
#16 = Utf8 cats/effect/resource_shared_memoized/ResourceSharedMemoized
#17 = Class #16 // cats/effect/resource_shared_memoized/ResourceSharedMemoized
#18 = Utf8 Allocated
#19 = Utf8 java/lang/invoke/MethodHandles$Lookup
#20 = Class #19 // java/lang/invoke/MethodHandles$Lookup
#21 = Utf8 java/lang/invoke/MethodHandles
#22 = Class #21 // java/lang/invoke/MethodHandles
#23 = Utf8 Lookup
#24 = Utf8 users
#25 = Utf8 J
#26 = Utf8 value
#27 = Utf8 Ljava/lang/Object;
#28 = Utf8 TA;
#29 = Utf8 cleanup
#30 = Utf8 Lscala/Function1;
#31 = Utf8 Lscala/Function1<Lcats/effect/kernel/Resource$ExitCase;TF;>;
#32 = Utf8 productElementNames
#33 = Utf8 ()Lscala/collection/Iterator;
#34 = Utf8 ()Lscala/collection/Iterator<Ljava/lang/String;>;
#35 = Utf8 productElementNames$
#36 = Utf8 (Lscala/Product;)Lscala/collection/Iterator;
#37 = NameAndType #35:#36 // productElementNames$:(Lscala/Product;)Lscala/collection/Iterator;
#38 = InterfaceMethodref #7.#37 // scala/Product.productElementNames$:(Lscala/Product;)Lscala/collection/Iterator;
#39 = Utf8 this
#40 = Utf8 Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
#41 = Utf8 ()J
#42 = NameAndType #24:#25 // users:J
#43 = Fieldref #2.#42 // cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.users:J
#44 = Utf8 ()Ljava/lang/Object;
#45 = Utf8 ()TA;
#46 = NameAndType #26:#27 // value:Ljava/lang/Object;
#47 = Fieldref #2.#46 // cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.value:Ljava/lang/Object;
#48 = Utf8 ()Lscala/Function1;
#49 = Utf8 ()Lscala/Function1<Lcats/effect/kernel/Resource$ExitCase;TF;>;
#50 = NameAndType #29:#30 // cleanup:Lscala/Function1;
#51 = Fieldref #2.#50 // cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.cleanup:Lscala/Function1;
#52 = Utf8 addUser
#53 = Utf8 ()Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
#54 = Utf8 ()Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated<TF;TA;>;
#55 = NameAndType #24:#41 // users:()J
#56 = Methodref #2.#55 // cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.users:()J
#57 = Utf8 copy$default$2
#58 = NameAndType #57:#44 // copy$default$2:()Ljava/lang/Object;
#59 = Methodref #2.#58 // cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.copy$default$2:()Ljava/lang/Object;
#60 = Utf8 copy$default$3
#61 = NameAndType #60:#48 // copy$default$3:()Lscala/Function1;
#62 = Methodref #2.#61 // cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.copy$default$3:()Lscala/Function1;
#63 = Utf8 copy
#64 = Utf8 (JLjava/lang/Object;Lscala/Function1;)Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
#65 = NameAndType #63:#64 // copy:(JLjava/lang/Object;Lscala/Function1;)Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
#66 = Methodref #2.#65 // cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.copy:(JLjava/lang/Object;Lscala/Function1;)Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
#67 = Utf8 removeUser
#68 = Utf8 ()Lscala/Option;
#69 = Utf8 ()Lscala/Option<Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated<TF;TA;>;>;
#70 = Utf8 scala/None$
#71 = Class #70 // scala/None$
#72 = Utf8 MODULE$
#73 = Utf8 Lscala/None$;
#74 = NameAndType #72:#73 // MODULE$:Lscala/None$;
#75 = Fieldref #71.#74 // scala/None$.MODULE$:Lscala/None$;
#76 = Utf8 scala/Some
#77 = Class #76 // scala/Some
#78 = Utf8 <init>
#79 = Utf8 (Ljava/lang/Object;)V
#80 = NameAndType #78:#79 // "<init>":(Ljava/lang/Object;)V
#81 = Methodref #77.#80 // scala/Some."<init>":(Ljava/lang/Object;)V
#82 = Utf8 <F:Ljava/lang/Object;A:Ljava/lang/Object;>(JTA;Lscala/Function1<Lcats/effect/kernel/Resource$ExitCase;TF;>;)Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated<TF;TA;>;
#83 = Utf8 (JLjava/lang/Object;Lscala/Function1;)V
#84 = NameAndType #78:#83 // "<init>":(JLjava/lang/Object;Lscala/Function1;)V
#85 = Methodref #2.#84 // cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated."<init>":(JLjava/lang/Object;Lscala/Function1;)V
#86 = Utf8 copy$default$1
#87 = Utf8 <F:Ljava/lang/Object;A:Ljava/lang/Object;>()J
#88 = Utf8 <F:Ljava/lang/Object;A:Ljava/lang/Object;>()TA;
#89 = NameAndType #26:#44 // value:()Ljava/lang/Object;
#90 = Methodref #2.#89 // cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.value:()Ljava/lang/Object;
#91 = Utf8 <F:Ljava/lang/Object;A:Ljava/lang/Object;>()Lscala/Function1<Lcats/effect/kernel/Resource$ExitCase;TF;>;
#92 = NameAndType #29:#48 // cleanup:()Lscala/Function1;
#93 = Methodref #2.#92 // cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.cleanup:()Lscala/Function1;
#94 = Utf8 productPrefix
#95 = Utf8 ()Ljava/lang/String;
#96 = String #18 // Allocated
#97 = Utf8 productArity
#98 = Utf8 ()I
#99 = Utf8 productElement
#100 = Utf8 (I)Ljava/lang/Object;
#101 = Utf8 x$1
#102 = Utf8 scala/runtime/BoxesRunTime
#103 = Class #102 // scala/runtime/BoxesRunTime
#104 = Utf8 boxToLong
#105 = Utf8 (J)Ljava/lang/Long;
#106 = NameAndType #104:#105 // boxToLong:(J)Ljava/lang/Long;
#107 = Methodref #103.#106 // scala/runtime/BoxesRunTime.boxToLong:(J)Ljava/lang/Long;
#108 = Utf8 scala/runtime/Statics
#109 = Class #108 // scala/runtime/Statics
#110 = Utf8 ioobe
#111 = NameAndType #110:#100 // ioobe:(I)Ljava/lang/Object;
#112 = Methodref #109.#111 // scala/runtime/Statics.ioobe:(I)Ljava/lang/Object;
#113 = Utf8 I
#114 = Utf8 productIterator
#115 = Utf8 ()Lscala/collection/Iterator<Ljava/lang/Object;>;
#116 = Utf8 scala/runtime/ScalaRunTime$
#117 = Class #116 // scala/runtime/ScalaRunTime$
#118 = Utf8 Lscala/runtime/ScalaRunTime$;
#119 = NameAndType #72:#118 // MODULE$:Lscala/runtime/ScalaRunTime$;
#120 = Fieldref #117.#119 // scala/runtime/ScalaRunTime$.MODULE$:Lscala/runtime/ScalaRunTime$;
#121 = Utf8 typedProductIterator
#122 = NameAndType #121:#36 // typedProductIterator:(Lscala/Product;)Lscala/collection/Iterator;
#123 = Methodref #117.#122 // scala/runtime/ScalaRunTime$.typedProductIterator:(Lscala/Product;)Lscala/collection/Iterator;
#124 = Utf8 canEqual
#125 = Utf8 (Ljava/lang/Object;)Z
#126 = Utf8 productElementName
#127 = Utf8 (I)Ljava/lang/String;
#128 = String #24 // users
#129 = String #26 // value
#130 = String #29 // cleanup
#131 = Utf8 java/lang/String
#132 = Class #131 // java/lang/String
#133 = Utf8 hashCode
#134 = Integer -889275714
#135 = NameAndType #94:#95 // productPrefix:()Ljava/lang/String;
#136 = Methodref #2.#135 // cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.productPrefix:()Ljava/lang/String;
#137 = NameAndType #133:#98 // hashCode:()I
#138 = Methodref #132.#137 // java/lang/String.hashCode:()I
#139 = Utf8 mix
#140 = Utf8 (II)I
#141 = NameAndType #139:#140 // mix:(II)I
#142 = Methodref #109.#141 // scala/runtime/Statics.mix:(II)I
#143 = Utf8 longHash
#144 = Utf8 (J)I
#145 = NameAndType #143:#144 // longHash:(J)I
#146 = Methodref #109.#145 // scala/runtime/Statics.longHash:(J)I
#147 = Utf8 anyHash
#148 = Utf8 (Ljava/lang/Object;)I
#149 = NameAndType #147:#148 // anyHash:(Ljava/lang/Object;)I
#150 = Methodref #109.#149 // scala/runtime/Statics.anyHash:(Ljava/lang/Object;)I
#151 = Utf8 finalizeHash
#152 = NameAndType #151:#140 // finalizeHash:(II)I
#153 = Methodref #109.#152 // scala/runtime/Statics.finalizeHash:(II)I
#154 = Utf8 toString
#155 = Utf8 _toString
#156 = Utf8 (Lscala/Product;)Ljava/lang/String;
#157 = NameAndType #155:#156 // _toString:(Lscala/Product;)Ljava/lang/String;
#158 = Methodref #117.#157 // scala/runtime/ScalaRunTime$._toString:(Lscala/Product;)Ljava/lang/String;
#159 = Utf8 equals
#160 = Utf8 (Ljava/lang/Object;Ljava/lang/Object;)Z
#161 = NameAndType #159:#160 // equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
#162 = Methodref #103.#161 // scala/runtime/BoxesRunTime.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
#163 = NameAndType #159:#125 // equals:(Ljava/lang/Object;)Z
#164 = Methodref #5.#163 // java/lang/Object.equals:(Ljava/lang/Object;)Z
#165 = NameAndType #124:#125 // canEqual:(Ljava/lang/Object;)Z
#166 = Methodref #2.#165 // cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.canEqual:(Ljava/lang/Object;)Z
#167 = Utf8 scala/Function1
#168 = Class #167 // scala/Function1
#169 = Utf8 $anonfun$new$1
#170 = Utf8 (Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;)Ljava/lang/String;
#171 = Utf8 $this
#172 = Utf8 java/lang/StringBuilder
#173 = Class #172 // java/lang/StringBuilder
#174 = Integer 32
#175 = Utf8 (I)V
#176 = NameAndType #78:#175 // "<init>":(I)V
#177 = Methodref #173.#176 // java/lang/StringBuilder."<init>":(I)V
#178 = Utf8 users must be > 0, but was
#179 = String #178 // users must be > 0, but was
#180 = Utf8 append
#181 = Utf8 (Ljava/lang/String;)Ljava/lang/StringBuilder;
#182 = NameAndType #180:#181 // append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
#183 = Methodref #173.#182 // java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
#184 = Utf8 (J)Ljava/lang/StringBuilder;
#185 = NameAndType #180:#184 // append:(J)Ljava/lang/StringBuilder;
#186 = Methodref #173.#185 // java/lang/StringBuilder.append:(J)Ljava/lang/StringBuilder;
#187 = Utf8 for
#188 = String #187 // for
#189 = Utf8 (Ljava/lang/Object;)Ljava/lang/StringBuilder;
#190 = NameAndType #180:#189 // append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
#191 = Methodref #173.#190 // java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
#192 = NameAndType #154:#95 // toString:()Ljava/lang/String;
#193 = Methodref #173.#192 // java/lang/StringBuilder.toString:()Ljava/lang/String;
#194 = Utf8 (JTA;Lscala/Function1<Lcats/effect/kernel/Resource$ExitCase;TF;>;)V
#195 = Utf8 ()V
#196 = NameAndType #78:#195 // "<init>":()V
#197 = Methodref #5.#196 // java/lang/Object."<init>":()V
#198 = Utf8 $init$
#199 = Utf8 (Lscala/Product;)V
#200 = NameAndType #198:#199 // $init$:(Lscala/Product;)V
#201 = InterfaceMethodref #7.#200 // scala/Product.$init$:(Lscala/Product;)V
#202 = Utf8 scala/Predef$
#203 = Class #202 // scala/Predef$
#204 = Utf8 Lscala/Predef$;
#205 = NameAndType #72:#204 // MODULE$:Lscala/Predef$;
#206 = Fieldref #203.#205 // scala/Predef$.MODULE$:Lscala/Predef$;
#207 = MethodType #44 // ()Ljava/lang/Object;
#208 = NameAndType #169:#170 // $anonfun$new$1:(Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;)Ljava/lang/String;
#209 = Methodref #2.#208 // cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.$anonfun$new$1:(Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;)Ljava/lang/String;
#210 = MethodHandle 6:#209 // REF_invokeStatic cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.$anonfun$new$1:(Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;)Ljava/lang/String;
#211 = MethodType #95 // ()Ljava/lang/String;
#212 = Integer 5
#213 = Integer 1
#214 = Utf8 java/lang/invoke/LambdaMetafactory
#215 = Class #214 // java/lang/invoke/LambdaMetafactory
#216 = Utf8 altMetafactory
#217 = Utf8 (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
#218 = NameAndType #216:#217 // altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
#219 = Methodref #215.#218 // java/lang/invoke/LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
#220 = MethodHandle 6:#219 // REF_invokeStatic java/lang/invoke/LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
#221 = Utf8 apply
#222 = Utf8 (Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;)Lscala/Function0;
#223 = NameAndType #221:#222 // apply:(Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;)Lscala/Function0;
#224 = InvokeDynamic #0:#223 // #0:apply:(Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;)Lscala/Function0;
#225 = Utf8 assert
#226 = Utf8 (ZLscala/Function0;)V
#227 = NameAndType #225:#226 // assert:(ZLscala/Function0;)V
#228 = Methodref #203.#227 // scala/Predef$.assert:(ZLscala/Function0;)V
#229 = Utf8 $deserializeLambda$
#230 = Utf8 (Ljava/lang/invoke/SerializedLambda;)Ljava/lang/Object;
#231 = Utf8 scala/runtime/LambdaDeserialize
#232 = Class #231 // scala/runtime/LambdaDeserialize
#233 = Utf8 bootstrap
#234 = Utf8 (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/CallSite;
#235 = NameAndType #233:#234 // bootstrap:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/CallSite;
#236 = Methodref #232.#235 // scala/runtime/LambdaDeserialize.bootstrap:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/CallSite;
#237 = MethodHandle 6:#236 // REF_invokeStatic scala/runtime/LambdaDeserialize.bootstrap:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/CallSite;
#238 = Utf8 lambdaDeserialize
#239 = NameAndType #238:#230 // lambdaDeserialize:(Ljava/lang/invoke/SerializedLambda;)Ljava/lang/Object;
#240 = InvokeDynamic #1:#239 // #1:lambdaDeserialize:(Ljava/lang/invoke/SerializedLambda;)Ljava/lang/Object;
#241 = Utf8 Signature
#242 = Utf8 Code
#243 = Utf8 LineNumberTable
#244 = Utf8 LocalVariableTable
#245 = Utf8 StackMapTable
#246 = Utf8 MethodParameters
#247 = Utf8 InnerClasses
#248 = Utf8 SourceFile
#249 = Utf8 BootstrapMethods
#250 = Utf8 ScalaInlineInfo
#251 = Utf8 Scala
{
private final long users;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final A value;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: #28 // TA;
private final scala.Function1<cats.effect.kernel.Resource$ExitCase, F> cleanup;
descriptor: Lscala/Function1;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: #31 // Lscala/Function1<Lcats/effect/kernel/Resource$ExitCase;TF;>;
public scala.collection.Iterator<java.lang.String> productElementNames();
descriptor: ()Lscala/collection/Iterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokestatic #38 // InterfaceMethod scala/Product.productElementNames$:(Lscala/Product;)Lscala/collection/Iterator;
4: areturn
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 5 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
Signature: #34 // ()Lscala/collection/Iterator<Ljava/lang/String;>;
public long users();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
0: aload_0
1: getfield #43 // Field users:J
4: lreturn
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 5 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
public A value();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: getfield #47 // Field value:Ljava/lang/Object;
4: areturn
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 5 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
Signature: #45 // ()TA;
public scala.Function1<cats.effect.kernel.Resource$ExitCase, F> cleanup();
descriptor: ()Lscala/Function1;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: getfield #51 // Field cleanup:Lscala/Function1;
4: areturn
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 5 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
Signature: #49 // ()Lscala/Function1<Lcats/effect/kernel/Resource$ExitCase;TF;>;
public cats.effect.resource_shared_memoized.ResourceSharedMemoized$Allocated<F, A> addUser();
descriptor: ()Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
0: aload_0
1: aload_0
2: invokevirtual #56 // Method users:()J
5: lconst_1
6: ladd
7: aload_0
8: invokevirtual #59 // Method copy$default$2:()Ljava/lang/Object;
11: aload_0
12: invokevirtual #62 // Method copy$default$3:()Lscala/Function1;
15: invokevirtual #66 // Method copy:(JLjava/lang/Object;Lscala/Function1;)Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
18: areturn
LineNumberTable:
line 54: 0
LocalVariableTable:
Start Length Slot Name Signature
0 19 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
Signature: #54 // ()Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated<TF;TA;>;
public scala.Option<cats.effect.resource_shared_memoized.ResourceSharedMemoized$Allocated<F, A>> removeUser();
descriptor: ()Lscala/Option;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=1, args_size=1
0: aload_0
1: invokevirtual #56 // Method users:()J
4: lconst_1
5: lcmp
6: ifne 13
9: getstatic #75 // Field scala/None$.MODULE$:Lscala/None$;
12: areturn
13: new #77 // class scala/Some
16: dup
17: aload_0
18: aload_0
19: invokevirtual #56 // Method users:()J
22: lconst_1
23: lsub
24: aload_0
25: invokevirtual #59 // Method copy$default$2:()Ljava/lang/Object;
28: aload_0
29: invokevirtual #62 // Method copy$default$3:()Lscala/Function1;
32: invokevirtual #66 // Method copy:(JLjava/lang/Object;Lscala/Function1;)Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
35: invokespecial #81 // Method scala/Some."<init>":(Ljava/lang/Object;)V
38: areturn
StackMapTable: number_of_entries = 1
frame_type = 13 /* same */
LineNumberTable:
line 57: 0
LocalVariableTable:
Start Length Slot Name Signature
0 39 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
Signature: #69 // ()Lscala/Option<Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated<TF;TA;>;>;
public <F extends java.lang.Object, A extends java.lang.Object> cats.effect.resource_shared_memoized.ResourceSharedMemoized$Allocated<F, A> copy(long, A, scala.Function1<cats.effect.kernel.Resource$ExitCase, F>);
descriptor: (JLjava/lang/Object;Lscala/Function1;)Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=4
0: new #2 // class cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated
3: dup
4: lload_1
5: aload_3
6: aload 4
8: invokespecial #85 // Method "<init>":(JLjava/lang/Object;Lscala/Function1;)V
11: areturn
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 12 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
0 12 1 users J
0 12 3 value Ljava/lang/Object;
0 12 4 cleanup Lscala/Function1;
Signature: #82 // <F:Ljava/lang/Object;A:Ljava/lang/Object;>(JTA;Lscala/Function1<Lcats/effect/kernel/Resource$ExitCase;TF;>;)Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated<TF;TA;>;
MethodParameters:
Name Flags
users final
value final
cleanup final
public <F extends java.lang.Object, A extends java.lang.Object> long copy$default$1();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
0: aload_0
1: invokevirtual #56 // Method users:()J
4: lreturn
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 5 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
Signature: #87 // <F:Ljava/lang/Object;A:Ljava/lang/Object;>()J
public <F extends java.lang.Object, A extends java.lang.Object> A copy$default$2();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokevirtual #90 // Method value:()Ljava/lang/Object;
4: areturn
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 5 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
Signature: #88 // <F:Ljava/lang/Object;A:Ljava/lang/Object;>()TA;
public <F extends java.lang.Object, A extends java.lang.Object> scala.Function1<cats.effect.kernel.Resource$ExitCase, F> copy$default$3();
descriptor: ()Lscala/Function1;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokevirtual #93 // Method cleanup:()Lscala/Function1;
4: areturn
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 5 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
Signature: #91 // <F:Ljava/lang/Object;A:Ljava/lang/Object;>()Lscala/Function1<Lcats/effect/kernel/Resource$ExitCase;TF;>;
public java.lang.String productPrefix();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: ldc #96 // String Allocated
2: areturn
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 3 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
public int productArity();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: iconst_3
1: ireturn
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 2 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
public java.lang.Object productElement(int);
descriptor: (I)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
0: iload_1
1: istore_2
2: iload_2
3: tableswitch { // 0 to 2
0: 28
1: 36
2: 41
default: 46
}
28: aload_0
29: invokevirtual #56 // Method users:()J
32: invokestatic #107 // Method scala/runtime/BoxesRunTime.boxToLong:(J)Ljava/lang/Long;
35: areturn
36: aload_0
37: invokevirtual #90 // Method value:()Ljava/lang/Object;
40: areturn
41: aload_0
42: invokevirtual #93 // Method cleanup:()Lscala/Function1;
45: areturn
46: iload_1
47: invokestatic #112 // Method scala/runtime/Statics.ioobe:(I)Ljava/lang/Object;
50: areturn
StackMapTable: number_of_entries = 4
frame_type = 252 /* append */
offset_delta = 28
locals = [ int ]
frame_type = 7 /* same */
frame_type = 4 /* same */
frame_type = 4 /* same */
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 51 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
0 51 1 x$1 I
MethodParameters:
Name Flags
x$1 final
public scala.collection.Iterator<java.lang.Object> productIterator();
descriptor: ()Lscala/collection/Iterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
0: getstatic #120 // Field scala/runtime/ScalaRunTime$.MODULE$:Lscala/runtime/ScalaRunTime$;
3: aload_0
4: invokevirtual #123 // Method scala/runtime/ScalaRunTime$.typedProductIterator:(Lscala/Product;)Lscala/collection/Iterator;
7: areturn
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 8 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
Signature: #115 // ()Lscala/collection/Iterator<Ljava/lang/Object;>;
public boolean canEqual(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
0: aload_1
1: instanceof #2 // class cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated
4: ireturn
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 5 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
0 5 1 x$1 Ljava/lang/Object;
MethodParameters:
Name Flags
x$1 final
public java.lang.String productElementName(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=2
0: iload_1
1: istore_2
2: iload_2
3: tableswitch { // 0 to 2
0: 28
1: 31
2: 34
default: 37
}
28: ldc #128 // String users
30: areturn
31: ldc #129 // String value
33: areturn
34: ldc #130 // String cleanup
36: areturn
37: iload_1
38: invokestatic #112 // Method scala/runtime/Statics.ioobe:(I)Ljava/lang/Object;
41: checkcast #132 // class java/lang/String
44: areturn
StackMapTable: number_of_entries = 4
frame_type = 252 /* append */
offset_delta = 28
locals = [ int ]
frame_type = 2 /* same */
frame_type = 2 /* same */
frame_type = 2 /* same */
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 45 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
0 45 1 x$1 I
MethodParameters:
Name Flags
x$1 final
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
0: ldc #134 // int -889275714
2: istore_1
3: iload_1
4: aload_0
5: invokevirtual #136 // Method productPrefix:()Ljava/lang/String;
8: invokevirtual #138 // Method java/lang/String.hashCode:()I
11: invokestatic #142 // Method scala/runtime/Statics.mix:(II)I
14: istore_1
15: iload_1
16: aload_0
17: invokevirtual #56 // Method users:()J
20: invokestatic #146 // Method scala/runtime/Statics.longHash:(J)I
23: invokestatic #142 // Method scala/runtime/Statics.mix:(II)I
26: istore_1
27: iload_1
28: aload_0
29: invokevirtual #90 // Method value:()Ljava/lang/Object;
32: invokestatic #150 // Method scala/runtime/Statics.anyHash:(Ljava/lang/Object;)I
35: invokestatic #142 // Method scala/runtime/Statics.mix:(II)I
38: istore_1
39: iload_1
40: aload_0
41: invokevirtual #93 // Method cleanup:()Lscala/Function1;
44: invokestatic #150 // Method scala/runtime/Statics.anyHash:(Ljava/lang/Object;)I
47: invokestatic #142 // Method scala/runtime/Statics.mix:(II)I
50: istore_1
51: iload_1
52: iconst_3
53: invokestatic #153 // Method scala/runtime/Statics.finalizeHash:(II)I
56: ireturn
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 57 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
0: getstatic #120 // Field scala/runtime/ScalaRunTime$.MODULE$:Lscala/runtime/ScalaRunTime$;
3: aload_0
4: invokevirtual #158 // Method scala/runtime/ScalaRunTime$._toString:(Lscala/Product;)Ljava/lang/String;
7: areturn
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 8 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=2
0: aload_0
1: aload_1
2: if_acmpeq 103
5: aload_1
6: astore_3
7: aload_3
8: instanceof #2 // class cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated
11: ifeq 18
14: iconst_1
15: goto 25
18: goto 21
21: iconst_0
22: goto 25
25: ifeq 107
28: aload_1
29: checkcast #2 // class cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated
32: astore 4
34: aload_0
35: invokevirtual #56 // Method users:()J
38: aload 4
40: invokevirtual #56 // Method users:()J
43: lcmp
44: ifne 107
47: aload_0
48: invokevirtual #90 // Method value:()Ljava/lang/Object;
51: aload 4
53: invokevirtual #90 // Method value:()Ljava/lang/Object;
56: invokestatic #162 // Method scala/runtime/BoxesRunTime.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
59: ifeq 107
62: aload_0
63: invokevirtual #93 // Method cleanup:()Lscala/Function1;
66: aload 4
68: invokevirtual #93 // Method cleanup:()Lscala/Function1;
71: astore 5
73: dup
74: ifnonnull 86
77: pop
78: aload 5
80: ifnull 94
83: goto 107
86: aload 5
88: invokevirtual #164 // Method java/lang/Object.equals:(Ljava/lang/Object;)Z
91: ifeq 107
94: aload 4
96: aload_0
97: invokevirtual #166 // Method canEqual:(Ljava/lang/Object;)Z
100: ifeq 107
103: iconst_1
104: goto 108
107: iconst_0
108: ireturn
StackMapTable: number_of_entries = 8
frame_type = 253 /* append */
offset_delta = 18
locals = [ top, class java/lang/Object ]
frame_type = 2 /* same */
frame_type = 67 /* same_locals_1_stack_item */
stack = [ int ]
frame_type = 255 /* full_frame */
offset_delta = 60
locals = [ class cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated, class java/lang/Object, top, class java/lang/Object, class cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated, class scala/Function1 ]
stack = [ class scala/Function1 ]
frame_type = 7 /* same */
frame_type = 255 /* full_frame */
offset_delta = 8
locals = [ class cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated, class java/lang/Object ]
stack = []
frame_type = 253 /* append */
offset_delta = 3
locals = [ top, class java/lang/Object ]
frame_type = 255 /* full_frame */
offset_delta = 0
locals = [ class cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated, class java/lang/Object ]
stack = [ int ]
LineNumberTable:
line 51: 0
LocalVariableTable:
Start Length Slot Name Signature
0 109 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
0 109 1 x$1 Ljava/lang/Object;
MethodParameters:
Name Flags
x$1 final
public static final java.lang.String $anonfun$new$1(cats.effect.resource_shared_memoized.ResourceSharedMemoized$Allocated);
descriptor: (Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;)Ljava/lang/String;
flags: (0x1019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=1
0: new #173 // class java/lang/StringBuilder
3: dup
4: ldc #174 // int 32
6: invokespecial #177 // Method java/lang/StringBuilder."<init>":(I)V
9: ldc #179 // String users must be > 0, but was
11: invokevirtual #183 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
14: aload_0
15: invokevirtual #56 // Method users:()J
18: invokevirtual #186 // Method java/lang/StringBuilder.append:(J)Ljava/lang/StringBuilder;
21: ldc #188 // String for
23: invokevirtual #183 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
26: aload_0
27: invokevirtual #90 // Method value:()Ljava/lang/Object;
30: invokevirtual #191 // Method java/lang/StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
33: invokevirtual #193 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;
36: areturn
LineNumberTable:
line 52: 0
LocalVariableTable:
Start Length Slot Name Signature
0 37 0 $this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
MethodParameters:
Name Flags
$this final synthetic
public cats.effect.resource_shared_memoized.ResourceSharedMemoized$Allocated(long, A, scala.Function1<cats.effect.kernel.Resource$ExitCase, F>);
descriptor: (JLjava/lang/Object;Lscala/Function1;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
0: aload_0
1: lload_1
2: putfield #43 // Field users:J
5: aload_0
6: aload_3
7: putfield #47 // Field value:Ljava/lang/Object;
10: aload_0
11: aload 4
13: putfield #51 // Field cleanup:Lscala/Function1;
16: aload_0
17: invokespecial #197 // Method java/lang/Object."<init>":()V
20: aload_0
21: invokestatic #201 // InterfaceMethod scala/Product.$init$:(Lscala/Product;)V
24: getstatic #206 // Field scala/Predef$.MODULE$:Lscala/Predef$;
27: lload_1
28: lconst_0
29: lcmp
30: ifle 37
33: iconst_1
34: goto 38
37: iconst_0
38: aload_0
39: invokedynamic #224, 0 // InvokeDynamic #0:apply:(Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;)Lscala/Function0;
44: invokevirtual #228 // Method scala/Predef$.assert:(ZLscala/Function0;)V
47: return
StackMapTable: number_of_entries = 2
frame_type = 255 /* full_frame */
offset_delta = 37
locals = [ class cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated, long, class java/lang/Object, class scala/Function1 ]
stack = [ class scala/Predef$ ]
frame_type = 255 /* full_frame */
offset_delta = 0
locals = [ class cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated, long, class java/lang/Object, class scala/Function1 ]
stack = [ class scala/Predef$, int ]
LineNumberTable:
line 51: 0
line 52: 24
line 51: 47
LocalVariableTable:
Start Length Slot Name Signature
0 48 0 this Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;
0 48 1 users J
0 48 3 value Ljava/lang/Object;
0 48 4 cleanup Lscala/Function1;
Signature: #194 // (JTA;Lscala/Function1<Lcats/effect/kernel/Resource$ExitCase;TF;>;)V
MethodParameters:
Name Flags
users final
value final
cleanup final
private static java.lang.Object $deserializeLambda$(java.lang.invoke.SerializedLambda);
descriptor: (Ljava/lang/invoke/SerializedLambda;)Ljava/lang/Object;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokedynamic #240, 0 // InvokeDynamic #1:lambdaDeserialize:(Ljava/lang/invoke/SerializedLambda;)Ljava/lang/Object;
6: areturn
}
InnerClasses:
public static #15= #12 of #14; // ExitCase=class cats/effect/kernel/Resource$ExitCase of class cats/effect/kernel/Resource
private static #18= #2 of #17; // Allocated=class cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated of class cats/effect/resource_shared_memoized/ResourceSharedMemoized
public static final #23= #20 of #22; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles
Signature: #3 // <F:Ljava/lang/Object;A:Ljava/lang/Object;>Ljava/lang/Object;Lscala/Product;Ljava/io/Serializable;
SourceFile: "ResourceSharedMemoized.scala"
BootstrapMethods:
0: #220 REF_invokeStatic java/lang/invoke/LambdaMetafactory.altMetafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
Method arguments:
#207 ()Ljava/lang/Object;
#210 REF_invokeStatic cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.$anonfun$new$1:(Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;)Ljava/lang/String;
#211 ()Ljava/lang/String;
#212 5
#213 1
#211 ()Ljava/lang/String;
1: #237 REF_invokeStatic scala/runtime/LambdaDeserialize.bootstrap:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/CallSite;
Method arguments:
#210 REF_invokeStatic cats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated.$anonfun$new$1:(Lcats/effect/resource_shared_memoized/ResourceSharedMemoized$Allocated;)Ljava/lang/String;
ScalaInlineInfo: length = 0x6D (unknown attribute)
01 00 00 15 00 A9 00 AA 01 00 4E 00 53 00 00 34
00 35 00 00 7C 00 7D 00 00 1D 00 30 00 00 3F 00
40 00 00 56 00 29 00 00 39 00 2C 00 00 3C 00 30
00 00 9F 00 7D 00 00 85 00 62 00 00 61 00 62 00
00 63 00 64 00 00 7E 00 7F 00 00 20 00 21 00 00
72 00 21 00 00 5E 00 5F 00 00 43 00 44 00 00 9A
00 5F 00 00 18 00 29 00 00 1A 00 2C 00
Scala: length = 0x0 (unknown attribute)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment