88 |
88 |
89 public static MethodHandle ldcDynamicConstant(MethodHandles.Lookup l, |
89 public static MethodHandle ldcDynamicConstant(MethodHandles.Lookup l, |
90 String name, Class<?> type, |
90 String name, Class<?> type, |
91 String bsmMethodName, MethodType bsmType, |
91 String bsmMethodName, MethodType bsmType, |
92 Consumer<PoolHelper.StaticArgListBuilder<String, String, byte[]>> staticArgs) throws Exception { |
92 Consumer<PoolHelper.StaticArgListBuilder<String, String, byte[]>> staticArgs) throws Exception { |
93 return ldcDynamicConstant(l, name, cref(type), bsmMethodName, bsmType.toMethodDescriptorString(), staticArgs); |
93 return ldcDynamicConstant(l, name, type, l.lookupClass(), bsmMethodName, bsmType, staticArgs); |
|
94 } |
|
95 |
|
96 public static MethodHandle ldcDynamicConstant(MethodHandles.Lookup l, |
|
97 String name, Class<?> type, |
|
98 Class<?> bsmClass, String bsmMethodName, MethodType bsmType, |
|
99 Consumer<PoolHelper.StaticArgListBuilder<String, String, byte[]>> staticArgs) throws Exception { |
|
100 return ldcDynamicConstant(l, name, cref(type), csym(bsmClass), bsmMethodName, bsmType.toMethodDescriptorString(), staticArgs); |
94 } |
101 } |
95 |
102 |
96 public static MethodHandle ldcDynamicConstant(MethodHandles.Lookup l, |
103 public static MethodHandle ldcDynamicConstant(MethodHandles.Lookup l, |
97 String name, String type, |
104 String name, String type, |
98 String bsmMethodName, String bsmType, |
105 String bsmMethodName, String bsmType, |
99 Consumer<PoolHelper.StaticArgListBuilder<String, String, byte[]>> staticArgs) throws Exception { |
106 Consumer<PoolHelper.StaticArgListBuilder<String, String, byte[]>> staticArgs) throws Exception { |
|
107 return ldcDynamicConstant(l, name, type, csym(l.lookupClass()), bsmMethodName, bsmType, staticArgs); |
|
108 } |
|
109 |
|
110 public static MethodHandle ldcDynamicConstant(MethodHandles.Lookup l, |
|
111 String name, String type, |
|
112 String bsmClass, String bsmMethodName, String bsmType, |
|
113 Consumer<PoolHelper.StaticArgListBuilder<String, String, byte[]>> staticArgs) throws Exception { |
100 return ldc(l, type, |
114 return ldc(l, type, |
101 P -> P.putDynamicConstant(name, type, |
115 P -> P.putDynamicConstant(name, type, |
102 csym(l.lookupClass()), bsmMethodName, bsmType, |
116 bsmClass, bsmMethodName, bsmType, |
103 staticArgs)); |
117 staticArgs)); |
104 } |
118 } |
105 |
119 |
106 public static MethodHandle ldc(MethodHandles.Lookup l, |
120 public static MethodHandle ldc(MethodHandles.Lookup l, |
107 Class<?> type, |
121 Class<?> type, |