1<!DOCTYPE html>
2<html>
3<head>
4  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5  <title>Annotation Scene Library overview</title>
6</head>
7
8<!-- Everything between <body> and </body> ends up in file overview-summary.html in the Javadoc. -->
9
10<body>
11The Annotation Scene Library provides classes to represent the annotations on a
12Java program and read and write those annotations in various formats.
13
14<h2>Structure</h2>
15
16<ul>
17<li>An {@link annotations.el.AScene} holds annotations for a set of classes
18and packages.
19</li>
20<li>A {@link annotations.el.AElement} represents one particular element of a
21Java program within an <code>AScene</code>.
22</li>
23<li>Package {@link annotations.io} provides routines to read and write
24{@link annotations.el.AScene}s in various formats.
25</li>
26<li>An {@link annotations.Annotation} represents an annotation (which might be a
27field of another annotation).  It can be attached to an {@link annotations.el.AElement}.
28</li>
29<li>An {@link annotations.el.AnnotationDef} represents an annotation definition,
30consisting of a definition name and field names and types
31({@link annotations.field.AnnotationFieldType}s).  It also indicates the
32annotation's retention policy.
33</li>
34</ul>
35
36<h2>Example</h2>
37
38<p>
39The example program <code>annotations.tests.Example</code> demonstrates the
40library's annotation-processing capabilities.  Its source code (and also
41example input and output) are distributed with the Annotation Scene Library.
42</p>
43
44</body>
45</html>
46