public void visitProgramClass(ProgramClass programClass) { new AttributesEditor(programClass, false).deleteAttribute(attributeName); } }
public void visitCodeAttribute(Clazz clazz, Method method, CodeAttribute codeAttribute) { new AttributesEditor((ProgramClass)clazz, (ProgramMember)method, codeAttribute, false).deleteAttribute(attributeName); } }
public void visitCodeAttribute(Clazz clazz, Method method, CodeAttribute codeAttribute) { new AttributesEditor((ProgramClass)clazz, (ProgramMember)method, codeAttribute, false).deleteAttribute(attributeName); } }
public void visitCodeAttribute(Clazz clazz, Method method, CodeAttribute codeAttribute) { new AttributesEditor((ProgramClass)clazz, (ProgramMember)method, codeAttribute, false).deleteAttribute(attributeName); } }
public void visitProgramMember(ProgramClass programClass, ProgramMember programMember) { new AttributesEditor(programClass, programMember, false).deleteAttribute(attributeName); }
public void visitProgramClass(ProgramClass programClass) { new AttributesEditor(programClass, false).deleteAttribute(attributeName); }
public void visitProgramClass(ProgramClass programClass) { new AttributesEditor(programClass, false).deleteAttribute(attributeName); }
public void visitProgramClass(ProgramClass programClass) { new AttributesEditor(programClass, false).deleteAttribute(attributeName); }
public void visitProgramMember(ProgramClass programClass, ProgramMember programMember) { new AttributesEditor(programClass, programMember, false).deleteAttribute(attributeName); }
public void visitProgramMember(ProgramClass programClass, ProgramMember programMember) { new AttributesEditor(programClass, programMember, false).deleteAttribute(attributeName); }
/** * Creates a new AttributeAdder that will copy attributes into the given * target attribute. */ public AttributeAdder(ProgramClass targetClass, ProgramMember targetMember, CodeAttribute targetCodeAttribute, boolean replaceAttributes) { this.targetClass = targetClass; this.targetMember = targetMember; this.targetCodeAttribute = targetCodeAttribute; this.replaceAttributes = replaceAttributes; constantAdder = new ConstantAdder(targetClass); attributesEditor = new AttributesEditor(targetClass, targetMember, targetCodeAttribute, replaceAttributes); }
/** * Creates a new AttributeAdder that will copy attributes into the given * target attribute. */ public AttributeAdder(ProgramClass targetClass, ProgramMember targetMember, CodeAttribute targetCodeAttribute, boolean replaceAttributes) { this.targetClass = targetClass; this.targetMember = targetMember; this.targetCodeAttribute = targetCodeAttribute; this.replaceAttributes = replaceAttributes; constantAdder = new ConstantAdder(targetClass); attributesEditor = new AttributesEditor(targetClass, targetMember, targetCodeAttribute, replaceAttributes); }
/** * Creates a new AttributeAdder that will copy attributes into the given * target attribute. */ public AttributeAdder(ProgramClass targetClass, ProgramMember targetMember, CodeAttribute targetCodeAttribute, boolean replaceAttributes) { this.targetClass = targetClass; this.targetMember = targetMember; this.targetCodeAttribute = targetCodeAttribute; this.replaceAttributes = replaceAttributes; constantAdder = new ConstantAdder(targetClass); attributesEditor = new AttributesEditor(targetClass, targetMember, targetCodeAttribute, replaceAttributes); }
/** * Creates a new AttributeAdder that will copy attributes into the given * target attribute. */ public AttributeAdder(ProgramClass targetClass, ProgramMember targetMember, CodeAttribute targetCodeAttribute, boolean replaceAttributes) { this.targetClass = targetClass; this.targetMember = targetMember; this.targetCodeAttribute = targetCodeAttribute; this.replaceAttributes = replaceAttributes; constantAdder = new ConstantAdder(targetClass); attributesEditor = new AttributesEditor(targetClass, targetMember, targetCodeAttribute, replaceAttributes); }
public void finishEditing() { endCodeFragment(); CodeAttribute codeAttribute = new CodeAttribute(constantPoolEditor.addUtf8Constant(ClassConstants.ATTR_Code)); visitCodeAttribute(programClass, method, codeAttribute); new AttributesEditor(programClass, method, false).addAttribute(codeAttribute); classEditor.addMethod(method); } }
public void finishEditing() { endCodeFragment(); CodeAttribute codeAttribute = new CodeAttribute(constantPoolEditor.addUtf8Constant(ClassConstants.ATTR_Code)); visitCodeAttribute(programClass, method, codeAttribute); new AttributesEditor(programClass, method, false).addAttribute(codeAttribute); classEditor.addMethod(method); } }
public void finishEditing() { endCodeFragment(); CodeAttribute codeAttribute = new CodeAttribute(constantPoolEditor.addUtf8Constant(ClassConstants.ATTR_Code)); visitCodeAttribute(programClass, method, codeAttribute); new AttributesEditor(programClass, method, false).addAttribute(codeAttribute); classEditor.addMethod(method); } }
public void visitInvokeDynamicConstant(Clazz clazz, InvokeDynamicConstant invokeDynamicConstant) { // Find the bootstrap methods attribute. AttributesEditor attributesEditor = new AttributesEditor((ProgramClass)clazz, false); BootstrapMethodsAttribute bootstrapMethodsAttribute = (BootstrapMethodsAttribute)attributesEditor.findAttribute(ClassConstants.ATTR_BootstrapMethods); // Add the name and type constant. clazz.constantPoolEntryAccept(invokeDynamicConstant.u2nameAndTypeIndex, this); // Copy the referenced classes. Clazz[] referencedClasses = invokeDynamicConstant.referencedClasses; Clazz[] referencedClassesCopy = null; if (referencedClasses != null) { referencedClassesCopy = new Clazz[referencedClasses.length]; System.arraycopy(referencedClasses, 0, referencedClassesCopy, 0, referencedClasses.length); } bootstrapMethodsAttribute.bootstrapMethodEntryAccept(clazz, invokeDynamicConstant.getBootstrapMethodAttributeIndex(), bootstrapMethodsAttributeAdder); // Then add the actual invoke dynamic constant. constantIndex = constantPoolEditor.addInvokeDynamicConstant(bootstrapMethodsAttributeAdder.getBootstrapMethodIndex(), constantIndex, referencedClassesCopy); }
new AttributesEditor(targetClass, false);
new AttributesEditor(targetClass, false);