public void write(final CodeStream stream) { stream.putShort(_size + 1); for (final Entry entry : _pool) { if (entry != null) { entry.accept(WRITER, stream); } } }
private int beginAttributes() { _dataBuffer.putShort(0); return _dataBuffer.getLength(); }
@Override public Void visitMethodType(final MethodType info, final CodeStream codeStream) { codeStream.putByte(info.getTag().value); codeStream.putShort(info.descriptorIndex); return null; }
@Override public Void visitStringConstant(final StringConstant info, final CodeStream codeStream) { codeStream.putByte(info.getTag().value); codeStream.putShort(info.stringIndex); return null; }
@Override public Void visitTypeInfo(final TypeInfo info, final CodeStream codeStream) { codeStream.putByte(info.getTag().value); codeStream.putShort(info.nameIndex); return null; }
@Override public Void visitTypeInfo(final TypeInfo info, final CodeStream codeStream) { codeStream.putByte(info.getTag().value); codeStream.putShort(info.nameIndex); return null; }
private int writeEnclosingMethodAttribute(final TypeBuilder<?> t) { final MethodBase method = t.getDeclaringMethod(); if (method == null) { return 0; } final int enclosingMethodStart = writeAttribute("EnclosingMethod"); final Type declaringType = method.getDeclaringType(); _dataBuffer.putShort(declaringType != null ? t.getTypeToken(declaringType) : 0); _dataBuffer.putShort(t.getMethodToken(method)); endAttribute(enclosingMethodStart); return 1; }
private int writeEnclosingMethodAttribute(final TypeBuilder<?> t) { final MethodBase method = t.getDeclaringMethod(); if (method == null) { return 0; } final int enclosingMethodStart = writeAttribute("EnclosingMethod"); final Type declaringType = method.getDeclaringType(); _dataBuffer.putShort(declaringType != null ? t.getTypeToken(declaringType) : 0); _dataBuffer.putShort(t.getMethodToken(method)); endAttribute(enclosingMethodStart); return 1; }
private int writeAttribute(final String attributeName) { _dataBuffer.putShort(_typeBuilder.getUtf8StringToken(attributeName)); _dataBuffer.putInt(0); return _dataBuffer.getLength(); }
private int writeAttribute(final String attributeName) { _dataBuffer.putShort(_typeBuilder.getUtf8StringToken(attributeName)); _dataBuffer.putInt(0); return _dataBuffer.getLength(); }
private void writeAnnotation(final AnnotationBuilder<? extends Annotation> a) { _dataBuffer.putShort(_typeBuilder.getUtf8StringToken(a.getAnnotationType().getSignature())); _dataBuffer.putShort(a.getValues().size()); final MethodList attributes = a.getAttributes(); final ReadOnlyList<Object> values = a.getValues(); for (int i = 0, n = attributes.size(); i < n; i++) { final MethodInfo attribute = attributes.get(i); _dataBuffer.putShort(_typeBuilder.getUtf8StringToken(attribute.getName())); writeAttributeType(values.get(i)); } }
private void writeAnnotation(final AnnotationBuilder<? extends Annotation> a) { _dataBuffer.putShort(_typeBuilder.getUtf8StringToken(a.getAnnotationType().getSignature())); _dataBuffer.putShort(a.getValues().size()); final MethodList attributes = a.getAttributes(); final ReadOnlyList<Object> values = a.getValues(); for (int i = 0, n = attributes.size(); i < n; i++) { final MethodInfo attribute = attributes.get(i); _dataBuffer.putShort(_typeBuilder.getUtf8StringToken(attribute.getName())); writeAttributeType(values.get(i)); } }
private void writeAnnotation(final AnnotationBuilder<? extends Annotation> a) { _dataBuffer.putShort(_typeBuilder.getUtf8StringToken(a.getAnnotationType().getSignature())); _dataBuffer.putShort(a.getValues().size()); final MethodList attributes = a.getAttributes(); final ReadOnlyList<Object> values = a.getValues(); for (int i = 0, n = attributes.size(); i < n; i++) { final MethodInfo attribute = attributes.get(i); _dataBuffer.putShort(_typeBuilder.getUtf8StringToken(attribute.getName())); writeAttributeType(values.get(i)); } }