105 // 106 107 /** Makes a "child" copy of a Method */ 108 public Method copyMethod(Method arg); 109 110 /** Makes a copy of this non-root a Method */ 111 public Method leafCopyMethod(Method arg); 112 113 /** Makes a "child" copy of a Field */ 114 public Field copyField(Field arg); 115 116 /** Makes a "child" copy of a Constructor */ 117 public <T> Constructor<T> copyConstructor(Constructor<T> arg); 118 119 /** Gets the root of the given AccessibleObject object; null if arg is the root */ 120 public <T extends AccessibleObject> T getRoot(T obj); 121 122 /** Returns a new instance created by the given constructor with access check */ 123 public <T> T newInstance(Constructor<T> ctor, Object[] args, Class<?> caller) 124 throws IllegalAccessException, InstantiationException, InvocationTargetException; 125 /** 126 * A field is flattenable if ACC_FLATTENABLE is set in its modifier 127 * and the field type is present in ValueType attribute. 128 */ 129 public boolean isFlattenable(Field f); 130 131 /** A field is flattenable and is flattened. */ 132 public boolean isFlatValue(Field f); 133 134 /** A field can be set to null */ 135 public boolean canBeNull(Field f); 136 } | 105 // 106 107 /** Makes a "child" copy of a Method */ 108 public Method copyMethod(Method arg); 109 110 /** Makes a copy of this non-root a Method */ 111 public Method leafCopyMethod(Method arg); 112 113 /** Makes a "child" copy of a Field */ 114 public Field copyField(Field arg); 115 116 /** Makes a "child" copy of a Constructor */ 117 public <T> Constructor<T> copyConstructor(Constructor<T> arg); 118 119 /** Gets the root of the given AccessibleObject object; null if arg is the root */ 120 public <T extends AccessibleObject> T getRoot(T obj); 121 122 /** Returns a new instance created by the given constructor with access check */ 123 public <T> T newInstance(Constructor<T> ctor, Object[] args, Class<?> caller) 124 throws IllegalAccessException, InstantiationException, InvocationTargetException; 125 } |