blob: 9c802b99d7ff23ae01af2fc41348f791c1842f73 [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Annotation Scene Library overview</title>
</head>
<!-- Everything between <body> and </body> ends up in file overview-summary.html in the Javadoc. -->
<body>
The Annotation Scene Library provides classes to represent the annotations on a
Java program and read and write those annotations in various formats.
<h2>Structure</h2>
<ul>
<li>An {@link annotations.el.AScene} holds annotations for a set of classes
and packages.
</li>
<li>A {@link annotations.el.AElement} represents one particular element of a
Java program within an <code>AScene</code>.
</li>
<li>Package {@link annotations.io} provides routines to read and write
{@link annotations.el.AScene}s in various formats.
</li>
<li>An {@link annotations.Annotation} represents an annotation (which might be a
field of another annotation). It can be attached to an {@link annotations.el.AElement}.
</li>
<li>An {@link annotations.el.AnnotationDef} represents an annotation definition,
consisting of a definition name and field names and types
({@link annotations.field.AnnotationFieldType}s). It also indicates the
annotation's retention policy.
</li>
</ul>
<h2>Example</h2>
<p>
The example program <code>annotations.tests.Example</code> demonstrates the
library's annotation-processing capabilities. Its source code (and also
example input and output) are distributed with the Annotation Scene Library.
</p>
</body>
</html>