break; case ReferenceType.METHOD: dexPool.methodSection.intern((MethodReference)reference); break; case ReferenceType.CALL_SITE:
poolClassDef.getType(), methodDescriptor); dexPool.methodSection.intern(method); internCode(method); internDebug(method);
public void intern(MethodHandleReference methodHandleReference) { Integer prev = internedItems.put(methodHandleReference, 0); if (prev == null) { switch (methodHandleReference.getMethodHandleType()) { case MethodHandleType.STATIC_PUT: case MethodHandleType.STATIC_GET: case MethodHandleType.INSTANCE_PUT: case MethodHandleType.INSTANCE_GET: dexPool.fieldSection.intern((FieldReference) methodHandleReference.getMemberReference()); break; case MethodHandleType.INVOKE_STATIC: case MethodHandleType.INVOKE_INSTANCE: case MethodHandleType.INVOKE_CONSTRUCTOR: case MethodHandleType.INVOKE_DIRECT: case MethodHandleType.INVOKE_INTERFACE: dexPool.methodSection.intern((MethodReference) methodHandleReference.getMemberReference()); break; default: throw new ExceptionWithContext( "Invalid method handle type: %d", methodHandleReference.getMethodHandleType()); } } }
public void intern(MethodHandleReference methodHandleReference) { Integer prev = internedItems.put(methodHandleReference, 0); if (prev == null) { switch (methodHandleReference.getMethodHandleType()) { case MethodHandleType.STATIC_PUT: case MethodHandleType.STATIC_GET: case MethodHandleType.INSTANCE_PUT: case MethodHandleType.INSTANCE_GET: dexPool.fieldSection.intern((FieldReference) methodHandleReference.getMemberReference()); break; case MethodHandleType.INVOKE_STATIC: case MethodHandleType.INVOKE_INSTANCE: case MethodHandleType.INVOKE_CONSTRUCTOR: case MethodHandleType.INVOKE_DIRECT: case MethodHandleType.INVOKE_INTERFACE: dexPool.methodSection.intern((MethodReference) methodHandleReference.getMemberReference()); break; default: throw new ExceptionWithContext( "Invalid method handle type: %d", methodHandleReference.getMethodHandleType()); } } }
break; case ValueType.METHOD: methodPool.intern(((MethodEncodedValue)encodedValue).getValue()); break;
break; case ReferenceType.METHOD: methodPool.intern((MethodReference)reference); break; default:
break; case ReferenceType.METHOD: dexPool.methodSection.intern((MethodReference)reference); break; case ReferenceType.CALL_SITE:
poolClassDef.getType(), methodDescriptor); methodPool.intern(method); internCode(method); internDebug(method);
poolClassDef.getType(), methodDescriptor); dexPool.methodSection.intern(method); internCode(method); internDebug(method);
break; case ValueType.METHOD: methodSection.intern(((MethodEncodedValue)encodedValue).getValue()); break; case ValueType.METHOD_HANDLE:
break; case ValueType.METHOD: methodSection.intern(((MethodEncodedValue)encodedValue).getValue()); break; case ValueType.METHOD_HANDLE: