MethodHandleEntry getMethodHandle(final ReferenceKind referenceKind, final int referenceIndex) { _lookupKey.set(Tag.MethodHandle, referenceIndex, referenceKind); Entry entry = _entryMap.get(_lookupKey); if (entry == null) { if (isFrozen()) { return null; } entry = new MethodHandleEntry(this, referenceKind, referenceIndex); } _lookupKey.clear(); return (MethodHandleEntry) entry; }
public MethodHandleEntry(final ConstantPool owner, final ReferenceKind referenceKind, final int referenceIndex) { super(owner); this.referenceKind = referenceKind; this.referenceIndex = referenceIndex; owner._newKey.set(getTag(), referenceIndex, referenceKind); owner._entryMap.put(owner._newKey.clone(), this); owner._newKey.clear(); }
break; case MethodHandle: new MethodHandleEntry(pool, ReferenceKind.fromTag(b.readUnsignedByte()), b.readUnsignedShort()); break; case MethodType:
break; case MethodHandle: new MethodHandleEntry(pool, ReferenceKind.fromTag(b.readUnsignedByte()), b.readUnsignedShort()); break; case MethodType:
break; case MethodHandle: new MethodHandleEntry(pool, ReferenceKind.fromTag(b.readUnsignedByte()), b.readUnsignedShort()); break; case MethodType:
@Override public void visitMethodHandle(final ConstantPool.MethodHandleEntry info) { final ConstantPool.ReferenceEntry reference = info.getReference(); final ConstantPool.NameAndTypeDescriptorEntry nameAndTypeInfo = reference.getNameAndTypeInfo(); final int startColumn = _output.getColumn(); _output.writeLiteral(info.referenceKind); _output.write(' '); _output.writeDelimiter("#"); _output.writeLiteral(reference.typeInfoIndex); _output.writeDelimiter("."); _output.writeDelimiter("#"); _output.writeLiteral(reference.nameAndTypeDescriptorIndex); final int endColumn = _output.getColumn(); final int padding = (28 - (endColumn - startColumn)); final String paddingText = padding > 0 ? StringUtilities.repeat(' ', padding) : ""; _output.writeComment( format( paddingText + " // %1$s.%2$s:%3$s", StringUtilities.escape(reference.getClassName(), false, _settings.isUnicodeOutputEnabled()), StringUtilities.escape(nameAndTypeInfo.getName(), false, _settings.isUnicodeOutputEnabled()), StringUtilities.escape(nameAndTypeInfo.getType(), false, _settings.isUnicodeOutputEnabled()) ) ); }
@Override public void visitMethodHandle(final ConstantPool.MethodHandleEntry info) { final ConstantPool.ReferenceEntry reference = info.getReference(); final ConstantPool.NameAndTypeDescriptorEntry nameAndTypeInfo = reference.getNameAndTypeInfo(); final int startColumn = _output.getColumn(); _output.writeLiteral(info.referenceKind); _output.write(' '); _output.writeDelimiter("#"); _output.writeLiteral(reference.typeInfoIndex); _output.writeDelimiter("."); _output.writeDelimiter("#"); _output.writeLiteral(reference.nameAndTypeDescriptorIndex); final int endColumn = _output.getColumn(); final int padding = (28 - (endColumn - startColumn)); final String paddingText = padding > 0 ? StringUtilities.repeat(' ', padding) : ""; _output.writeComment( format( paddingText + " // %1$s.%2$s:%3$s", StringUtilities.escape(reference.getClassName(), false, _settings.isUnicodeOutputEnabled()), StringUtilities.escape(nameAndTypeInfo.getName(), false, _settings.isUnicodeOutputEnabled()), StringUtilities.escape(nameAndTypeInfo.getType(), false, _settings.isUnicodeOutputEnabled()) ) ); }
@Override public void visitMethodHandle(final ConstantPool.MethodHandleEntry info) { final ConstantPool.ReferenceEntry reference = info.getReference(); final ConstantPool.NameAndTypeDescriptorEntry nameAndTypeInfo = reference.getNameAndTypeInfo(); final int startColumn = _output.getColumn(); _output.writeLiteral(info.referenceKind); _output.write(' '); _output.writeDelimiter("#"); _output.writeLiteral(reference.typeInfoIndex); _output.writeDelimiter("."); _output.writeDelimiter("#"); _output.writeLiteral(reference.nameAndTypeDescriptorIndex); final int endColumn = _output.getColumn(); final int padding = (28 - (endColumn - startColumn)); final String paddingText = padding > 0 ? StringUtilities.repeat(' ', padding) : ""; _output.writeComment( format( paddingText + " // %1$s.%2$s:%3$s", StringUtilities.escape(reference.getClassName(), false, _settings.isUnicodeOutputEnabled()), StringUtilities.escape(nameAndTypeInfo.getName(), false, _settings.isUnicodeOutputEnabled()), StringUtilities.escape(nameAndTypeInfo.getType(), false, _settings.isUnicodeOutputEnabled()) ) ); }
MethodHandleEntry getMethodHandle(final ReferenceKind referenceKind, final int referenceIndex) { _lookupKey.set(Tag.MethodHandle, referenceIndex, referenceKind); Entry entry = _entryMap.get(_lookupKey); if (entry == null) { if (isFrozen()) { return null; } entry = new MethodHandleEntry(this, referenceKind, referenceIndex); } _lookupKey.clear(); return (MethodHandleEntry) entry; }
public MethodHandleEntry(final ConstantPool owner, final ReferenceKind referenceKind, final int referenceIndex) { super(owner); this.referenceKind = referenceKind; this.referenceIndex = referenceIndex; owner._newKey.set(getTag(), referenceIndex, referenceKind); owner._entryMap.put(owner._newKey.clone(), this); owner._newKey.clear(); }
public MethodHandleEntry(final ConstantPool owner, final ReferenceKind referenceKind, final int referenceIndex) { super(owner); this.referenceKind = referenceKind; this.referenceIndex = referenceIndex; owner._newKey.set(getTag(), referenceIndex, referenceKind); owner._entryMap.put(owner._newKey.clone(), this); owner._newKey.clear(); }
MethodHandleEntry getMethodHandle(final ReferenceKind referenceKind, final int referenceIndex) { _lookupKey.set(Tag.MethodHandle, referenceIndex, referenceKind); Entry entry = _entryMap.get(_lookupKey); if (entry == null) { if (isFrozen()) { return null; } entry = new MethodHandleEntry(this, referenceKind, referenceIndex); } _lookupKey.clear(); return (MethodHandleEntry) entry; }
@Override public void visitMethodHandle(final MethodHandleEntry info) { codeStream.writeByte(info.getTag().value); codeStream.writeShort(info.referenceKind.ordinal()); codeStream.writeShort(info.referenceIndex); }
@Override public void visitMethodHandle(final MethodHandleEntry info) { codeStream.writeByte(info.getTag().value); codeStream.writeShort(info.referenceKind.ordinal()); codeStream.writeShort(info.referenceIndex); }
@Override public void visitMethodHandle(final MethodHandleEntry info) { codeStream.writeByte(info.getTag().value); codeStream.writeShort(info.referenceKind.ordinal()); codeStream.writeShort(info.referenceIndex); }