01: package net.sf.clirr.core.spi;
02:
03: /**
04: * Describes a field of a class.
05: */
06: public interface Field extends Named, Scoped {
07: /**
08: * The type of this field.
09: */
10: JavaType getType();
11:
12: /**
13: * Whether the field is declared as final.
14: */
15: boolean isFinal();
16:
17: /**
18: * Whether the field is declared as static.
19: */
20: boolean isStatic();
21:
22: /**
23: * Whether the field is deprecated.
24: */
25: boolean isDeprecated();
26:
27: /**
28: * Returns the constant value of this field.
29: * The constant value is an Object if the field is static and final and the java compiler
30: * could calculate the value at compilation time.
31: *
32: * @return the constant value or <code>null</code> if the compiler could
33: * not calculate the value at compilation time
34: */
35: Object getConstantValue();
36: }
|