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
package Torello.JavaDoc.Annotations;

/**
 * Enforces that the original annotation text used & placed by the user is stored, inside the
 * class, as a {@code java.lang.String}.  The values which are returned by these methods are used 
 * <B STYLE='color:red;'><I>solely for error printing and the messager</I></B>.
 */
public interface AnnotationMirror
{
    /** 
     * Extracts the actual text that a programmer / software engineer has placed onto a Java Entity
     * or Type, and returns it as a {@code String}.
     * 
     * @return The text of the annotation which the user has placed.
     */
    public String getAnnotationAsString();

    /**
     * Extracts the name of the annotation as a {@code String}.
     * @return A {@code String} such as {@code "StaticFunctional"} or {@code "IntoHTMLTable"}.
     */
    public String getAnnotationName();

    /**
     * Generates a {@code String} representation of this mirror instance.
     * @return A {@code java.lang.String} representing this instance data
     */
    public String toString();
};