102 // 103 // Copying routines, needed to quickly fabricate new Field, 104 // Method, and Constructor objects from templates 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 public boolean isFlattened(Field f); 123 } | 102 // 103 // Copying routines, needed to quickly fabricate new Field, 104 // Method, and Constructor objects from templates 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 /** 123 * A field is flattenable if ACC_FLATTENABLE is set in its modifier 124 * and the field type is present in ValueType attribute. 125 */ 126 public boolean isFlattenable(Field f); 127 128 /** A field is flattenable and is flattened. */ 129 public boolean isFlattened(Field f); 130 131 /** A field is nullable (can be set to null) */ 132 public boolean isNullable(Field f); 133 } |