1 21 package proguard.optimize; 22 23 import proguard.classfile.*; 24 import proguard.classfile.util.SimplifiedVisitor; 25 import proguard.classfile.visitor.MemberVisitor; 26 import proguard.optimize.info.ReadWriteFieldMarker; 27 28 36 public class WriteOnlyFieldFilter 37 extends SimplifiedVisitor 38 implements MemberVisitor 39 { 40 private MemberVisitor writeOnlyFieldVisitor; 41 42 43 48 public WriteOnlyFieldFilter(MemberVisitor writeOnlyFieldVisitor) 49 { 50 this.writeOnlyFieldVisitor = writeOnlyFieldVisitor; 51 } 52 53 54 56 public void visitProgramField(ProgramClass programClass, ProgramField programField) 57 { 58 59 if (ReadWriteFieldMarker.isWritten(programField) && 60 !ReadWriteFieldMarker.isRead(programField)) 61 { 62 writeOnlyFieldVisitor.visitProgramField(programClass, programField); 63 } 64 } 65 } 66 | Popular Tags |