1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | package Torello.JavaDoc; /** * An enumeration used by the {@link StaticFunctional} annotation for explaining * non-{@code static} fields in a type. * * <BR /><BR /><EMBED CLASS='external-html' DATA-FILE-ID=EXCUSE> */ public enum Excuse { /** * Indicates that a field inside of a class that has been decorated with the * {@code StaticFunctional} annotation is being used as a "Configuration Flag" for that class. * * <EMBED CLASS='external-html' DATA-FILE-ID=EXCUSE_FLAG> */ FLAG, /** * Indicates the field isn't marked with the {@code 'final'} modifier because it is used as a * simple-configuration. * * <EMBED CLASS='external-html' DATA-FILE-ID=EXCUSE_CONFIG> */ CONFIGURATION, /** * Indicates that an excused, non-{@code final}, field contains a singleton instance of a * {@code class}, and could conceivably be changed or swapped after the class-loading phase. * * <EMBED CLASS='external-html' DATA-FILE-ID=EXCUSE_SINGLE> */ SINGLETON, /** * Indicates that a field is excused from the {@code 'final'} modifier because that field is * solely used for logging purposes. * * <EMBED CLASS='external-html' DATA-FILE-ID=EXCUSE_LOGGING> */ LOGGING, /** * Indicates that an excused field is not marked with the {@code 'final'} modifier because it * is intended to be used solely for debugging purposes (only!). * * <EMBED CLASS='external-html' DATA-FILE-ID=EXCUSE_DEBUG> */ DEBUGGING, /** * Indicates that a field inside of a class annotated by {@code StaticFunctional}, is * non-{@code final} because the field's value isn't actually loaded at class-initialization * time by the {@code ClassLoader}. * * <EMBED CLASS='external-html' DATA-FILE-ID=EXCUSE_LAZY_LD> */ LAZY_LOADING, /** * Since ensuring that the Garbage-Collector runs does not constitute program state, this excuse * is provided for any field that doesn't declare the {@code 'final'} modifier because it is * involved in calls to {@code System.gc()}. * * <EMBED CLASS='external-html' DATA-FILE-ID=EXCUSE_GARBAGE> */ GARBAGE_COLLECTION; } |