MCPcopy Create free account
hub / github.com/ReadyTalk/avian / Field

Class Field

classpath/java/lang/reflect/Field.java:20–401  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

18import java.lang.annotation.Annotation;
19
20public class Field<T> extends AccessibleObject implements Member {
21 private static final int VoidField = 0;
22 private static final int ByteField = 1;
23 private static final int CharField = 2;
24 private static final int DoubleField = 3;
25 private static final int FloatField = 4;
26 private static final int IntField = 5;
27 private static final int LongField = 6;
28 private static final int ShortField = 7;
29 private static final int BooleanField = 8;
30 private static final int ObjectField = 9;
31
32 private final VMField vmField;
33 private boolean accessible = true;
34
35 public Field(VMField vmField) {
36 this.vmField = vmField;
37 }
38
39 public boolean isAccessible() {
40 return accessible;
41 }
42
43 public void setAccessible(boolean v) {
44 accessible = v;
45 }
46
47 public Class<T> getDeclaringClass() {
48 return SystemClassLoader.getClass(vmField.class_);
49 }
50
51 public int getModifiers() {
52 return vmField.flags;
53 }
54
55 public boolean isSynthetic() {
56 return (vmField.flags & ACC_SYNTHETIC) != 0;
57 }
58
59 public String getName() {
60 return getName(vmField);
61 }
62
63 public static String getName(VMField vmField) {
64 return Classes.makeString(vmField.name, 0, vmField.name.length - 1);
65 }
66
67 public Class getType() {
68 return Classes.forCanonicalName
69 (vmField.class_.loader,
70 Classes.makeString(vmField.spec, 0, vmField.spec.length - 1));
71 }
72
73 public Type getGenericType() {
74 if (vmField.addendum == null || vmField.addendum.signature == null) {
75 return getType();
76 }
77 String signature = Classes.toString((byte[]) vmField.addendum.signature);

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected