ImmutableField field = new ImmutableField(classType, f.getName(), SootToDexUtils.getDexTypeDescriptor(f.getType()), f.getModifiers(), staticInit, fieldAnnotations); fields.add(field);
public ImmutableField build(){ return new ImmutableField(definingClass,fieldName,valueType,accessFlags,initialValue,annotations); }
public static ImmutableField of(Field field) { if (field instanceof ImmutableField) { return (ImmutableField)field; } return new ImmutableField( field.getDefiningClass(), field.getName(), field.getType(), field.getAccessFlags(), field.getInitialValue(), field.getAnnotations()); }
public static ImmutableField of(Field field) { if (field instanceof ImmutableField) { return (ImmutableField)field; } return new ImmutableField( field.getDefiningClass(), field.getName(), field.getType(), field.getAccessFlags(), field.getInitialValue(), field.getAnnotations()); }
public static ImmutableField of(Field field) { if (field instanceof ImmutableField) { return (ImmutableField)field; } return new ImmutableField( field.getDefiningClass(), field.getName(), field.getType(), field.getAccessFlags(), field.getInitialValue(), field.getAnnotations()); }
@Override protected Field reField(Field field) { String name = field.getName(); String newType; boolean isBasic = false; boolean isArray = false; if (field.getType().startsWith("[")) { isArray = true; } if (basicType.containsKey(field.getType())) { newType = field.getType(); isBasic = true; } else { newType = DefineUtils.getDalvikClassName(field.getType()); } String defineClass = DefineUtils.getDalvikClassName(field.getDefiningClass()); return new ImmutableField( reType, classProcessor.filedProcess(defineClass, isBasic ? basicType.get(newType) : newType + (isArray ? "[]" : ""), name).fieldName, isBasic ? newType : DefineUtils.getDefineClassName(classProcessor.classProcess(isBasic ? basicType.get(newType) : newType).className, isArray), field.getAccessFlags(), field.getInitialValue(), getAnnotation(field.getAnnotations())); }
Lists.newArrayList(new ImmutableAnnotation(AnnotationVisibility.RUNTIME, "Lannotation;", null)), Lists.<Field>newArrayList( new ImmutableField("Lcls1;", "field1", "I", AccessFlags.PUBLIC.getValue(), null, null) ), Lists.<Method>newArrayList( Lists.newArrayList(new ImmutableAnnotation(AnnotationVisibility.RUNTIME, "Lannotation2;", null)), Lists.<Field>newArrayList( new ImmutableField("Lcls2;", "field2", "D", AccessFlags.PUBLIC.getValue(), null, null) ), Lists.<Method>newArrayList(