History log of /external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
02694558b428e24d62f2f5498391329bddb63972 10-Jun-2017 Michael Ernst <mernst@cs.washington.edu> Update URL
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
24d28da9947e30df9dc20cb3efa0ec691e64d349 01-May-2017 Suzanne Millstein <smillst@cs.washington.edu> Add crossrefs
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
bff6464da31166b93840b3c9f51f8f17b7a56171 03-Feb-2017 Michael Ernst <mernst@cs.washington.edu> Update URLs
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
980a68c594272b6196d45605d72a1f5b5b00c845 20-Jan-2017 Michael Ernst <mernst@cs.washington.edu> Update Checker Framework URLs to https://checkerframework.org/
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
8373249fb4ad7c7d20289cde9a5cde1b19a236d5 15-Jan-2017 Michael Ernst <mernst@cs.washington.edu> Make URLs consistent with new release testing
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
e7bebd4ebd4b6050bca8992027175ebb82047b9a 10-Jan-2017 Michael Ernst <mernst@cs.washington.edu> Update URLs
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
2bbd7a29468223efb36ad30e1ece0057849d81fb 10-Mar-2016 Dan Brown <dbro@cs.washington.edu> Mentions option to use class name in place of "<init>" in JAIF method signature.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
4ae81f26445bc9397bd3e1edb062e0388ed82a6f 18-Feb-2016 Michael Ernst <mernst@cs.washington.edu> Whitespace cleanups
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
2124a9c76fdac6f57481eb506ff13e9d60529f6a 10-Feb-2016 Michael Ernst <mernst@cs.washington.edu> "parameter" => "formal parameter" in explanatory text
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
f8086dd9702132a05c3f781a058d4ed7d6f0a3cb 01-Jan-2016 Michael Ernst <mernst@cs.washington.edu> Clean up LocalWords for spell-checking
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
d33ff412204a700529766004a4cd6631e3ce1030 01-Aug-2015 Dan Brown <dbro@cs.washington.edu> Removes Section 6 (Design and Implementation Details).
Text was moved to annotation-file-utilities.html.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
5257cd1d675abd45375c59eac1ab9d4bf453294f 24-Jul-2015 Michael Ernst <mernst@cs.washington.edu> Miscellaneous documentation improvements
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
6d81f4d7411fbdbbf79e1165cabfc0353bcbb7e0 03-Jul-2015 Michael Ernst <mernst@cs.washington.edu> Update references from Google Code to GitHub and from Mercurial (Hg) to Git
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
59a0778309e44d8dcb5cad4829afab8de212a874 27-Feb-2015 Dan Brown <dbro@cs.washington.edu> Updates format for annotating method references.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
1aa149d05873c59682899ed81b7ff6783860f689 03-Feb-2015 Dan Brown <dbro@cs.washington.edu> Removes type-annotation* from grammar production for reference.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
04354d7431b76b4111df0da729aa8d0110e0c5a0 30-Jan-2015 Dan Brown <dbro@cs.washington.edu> Slightly changes syntax for type arguments etc.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
63c4163c2c80cb4d0309ac088216a7e777872b94 22-Jan-2015 Dan Brown <dbro@cs.washington.edu> Updates JAIF format.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
b9ed016dd7c31380ef7034ead4d6232fb9f1c291 05-Dec-2014 Dan Brown <dbro@cs.washington.edu> Adds note about using "implements" rather than "extends" for interface declarations.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
0dbd627cd661ff86d417a2e12a9f15cd73957aa8 06-May-2014 Michael Ernst <mernst@cs.washington.edu> Clarify that formal parameters are numbered starting at #0.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
9d2300ca0241a328bbf62e15b9b8ae7f03d8a303 03-Apr-2014 Dan Brown <dbro@cs.washington.edu> Adds previously missing AST path entry kinds.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
f19e7b4dbc7820a8e5ba818155cd03b3400830b2 28-Mar-2014 Dan Brown <dbro@cs.washington.edu> Adds new ast-entry productions.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
79db425002236129f25393fe1a6bac1f5186794e 15-Mar-2014 Werner Dietl <wdietl@gmail.com> Adapt to Checker Framework changes.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
7192d6d9669c166a6be0f1fdb0ef5d2a615e98aa 13-Feb-2014 Dan Brown <dbro@cs.washington.edu> Adds missing productions from AST path grammar.
Removes outdated assertion that AST paths can be used to insert casts only.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
239c56598c3d8dd67721778ece66e902b5c78a73 28-Nov-2013 Dan Brown <dbro@cs.washington.edu> Adds information about new "staticinit" and "instanceinit" productions.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
fc17c2e5adf4e9de7126b088bbd72f8be29ab498 17-Sep-2013 Michael Ernst <mernst@cs.washington.edu> Documentation for insert-annotation on an expression.
The initial text was from Dan Brown; I slightly tweaked it.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
eda43eca1a8e2498ddc5d60b9dd6ec150403824e 21-Aug-2013 Michael Ernst <mernst@cs.washington.edu> Change section name
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
a12ab9738f161216d2ec37782d0d7165a50c3373 06-Aug-2013 Michael Ernst <mernst@cs.washington.edu> Spell-check
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
5821a902d6a0857b72f9f8a120f5bf08e457c256 08-May-2013 Michael Ernst <mernst@cs.washington.edu> Represent constructor results using the syntax for return values.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
ccb3fcec4e01a0c9ae19eb7dab37983df551c69b 01-Apr-2013 jonathangburke <jonathangburke@gmail.com> Fix link broken by previous commit. Use url macro as escaping leads to a broken link
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
96fdabcf77ebf5e5ecd5dd445c38f44338a20faf 01-Apr-2013 jonathangburke <jonathangburke@gmail.com> Escape # character that was causing the doc build to fail
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
abf67ca517d092dc5d349302991c2cc45a80f0de 30-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Incorporate Mike's feedback to the "Design and Implementation Details" section.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
d148374de5802762546b1d5664ec374ce4b7cf56 19-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Add discussion of stub files and the jdk.jar to the 'Alternative formats' section of the manual.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
0467c54dbed94f2213f92927f39b98118ca3e572 18-Mar-2013 Eric Spishak <espishak@cs.washington.edu> More revisions to the manual.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
0652af3326348da31c6352e1a9e3b08d31a989c2 13-Mar-2013 Michael Ernst <mernst@cs.washington.edu> Automated merge with https://code.google.com/p/annotation-tools
bf6b743d08686007505d782c63389cf249956c62 12-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Formatting tweaks.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
8633dc565a286d9d99f07da2af785603d689f2b8 12-Mar-2013 Michael Ernst <mernst@cs.washington.edu> Fix LaTeX error
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
74fade111c3751cc58b880182b7cdc9f61c0e310 12-Mar-2013 Michael Ernst <mernst@cs.washington.edu> Super-important formatting fixes
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
238b42d0fe9acb7d3a99a2e854ad4d1529455dce 12-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Forgot to change "Compound type annotations" header to a "paragraph".
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
009704269f7acc52899aa588a0de6b0ab76650c1 12-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Add ASM to bibliography.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
6d4ae97caa41102a08cfc07d5d51dd567e34082f 12-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Merge.
bc0414fd6784a9a928205d9e9253a4054bb55eda 12-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Incorporate Mike's feedback to the manual.
Rearrange the Grammar section, make some various tweaks.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
3e84d8547cc69bf11da057a8265f70fb4e85a020 11-Mar-2013 Michael Ernst <mernst@cs.washington.edu> Fix bibliography
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
f0bb3ef2c0f592cb7cdc799573a22298110ee7e9 06-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Automated merge with https://code.google.com/p/annotation-tools
e9ac7ca85b1d9356c0cfe917a0e032e4ffb35d02 06-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Add a clarification to the manual.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
5e4638682c3d3dd1c9f1e96c00760e319c9773a9 06-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Merge. Update the manual with the new name of a grammar rule.
fabe299bd97c761e1ada604234806b61a13c83f3 06-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Allow insertion of a cast with no annotations or annotations only on the compound types.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
13153e3de9079d8acf16c8fcc32bd708fb0308e9 06-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Allow annotations on compound types of a cast insertion.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
57e9307e0f28d81e3be76731988b3192bc8caa5b 06-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Typo fix.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
d302da9132a96b4515795f46e1a50782e3ca2bac 04-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Clarification to the manual.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
c1eb0786fbdc7452935dcbf5a5395a16da7a15e5 04-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Additional clarifications to the manual.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
526295e87b643b41cae5d39881e6a21a23c54759 04-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Restructure grammar section of the manual.
Clarifies and adds more detail.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
00bcac4f58826f95869f9ad59bdc7dbad23d0450 04-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Add implementation details section to manual.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
6bc41d46c0ccfaec950bf6ce77d53805d1183bd1 04-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Typo fix.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
ca17d259ff5a98459a8d4ff3dc27aa2acf610762 04-Mar-2013 Eric Spishak <espishak@cs.washington.edu> Don't make code text smaller in manual.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
4076486831d179beb331ccdec6504f7514101caa 27-Feb-2013 Eric Spishak <espishak@cs.washington.edu> Fix broken link and shorten long line.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
2951bd79a05bad54aff761283842e8a1dc0fddc2 21-Feb-2013 Eric Spishak <espishak@cs.washington.edu> Support source code insertion of annotations on compound types of an inserted method declaration receiver parameter.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
cf59b33aad9acd4dc8bedf0c298b8ffeb7912ee9 13-Feb-2013 Eric Spishak <espishak@cs.washington.edu> Restrict source code indexes to their enclosing class, and not into nested classes.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
e43493938bf70800dd445582a850f8623c5c1b82 13-Feb-2013 Eric Spishak <espishak@cs.washington.edu> Tweaks to manual.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
57d1ec06367754ea0c81d23489c509a9221546a9 11-Feb-2013 Eric Spishak <espishak@cs.washington.edu> Clarify documentation on inner class name syntax.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
3c77e0b2917f0565d9026bc7610245e96b964919 08-Feb-2013 Eric Spishak <espishak@cs.washington.edu> Remove TODO.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
3ecebfde4ffef3ce8d5add481f2d8fc57ad7ff30 08-Feb-2013 Eric Spishak <espishak@cs.washington.edu> Clarify annotation definition syntax in manual.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
2af4fab4c05624805a158811226db8f4300ef465 04-Feb-2013 Eric Spishak <espishak@cs.washington.edu> Update grammar with better description of legal annotation field types.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
cc203a03e4b7f83e8b11cce43fbec38a5f74f501 04-Feb-2013 Eric Spishak <espishak@cs.washington.edu> Fix typos in manual.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
239944388565938ceab7d7529540b75174c031b8 28-Jan-2013 Werner Dietl <wdietl@gmail.com> Support annotating casts with intersection types - read offset and type index, adapt storage format, and storage in RelativeLocation.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
2fde166bd31cae0d48b180098bc586582f7ad95d 25-Jan-2013 Eric Spishak <espishak@cs.washington.edu> Merge.
51d9cc7fcf0994e4c2660daac6bbcdffe36adbc4 18-Jan-2013 Eric Spishak <espishak@cs.washington.edu> Update the manual with the new compound type syntax.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
8ded9cc9a1b9bea96ff4701fde0ef39dffdcb37f 18-Jan-2013 Eric Spishak <espishak@cs.washington.edu> Improvements to the manual, based on code review.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
07a61175c257cf7fb7738d5eede16733440c1b56 28-Nov-2012 Eric Spishak <espishak@cs.washington.edu> Add cast insertion on an arbitrary expression using an AST path.
This includes tests and documentation updates.
This does not yet support cast insertion where an annotation is being added to a type parameter.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
bcd42a95fbe118deb824ca067b9c1ee842a661fd 31-Jul-2012 wdietl <wdietl@gmail.com> Add a TODO item for the specification: how are annotation definitions specified.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
83cdcfb18142ab5b0e9a66cb96ce268995fe2f3d 20-Sep-2011 Michael Ernst <mernst@cs.washington.edu> Move receiver annotations
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
072092c34499e564fad7f7bf800aff49fe6f80dc 10-Aug-2011 Michael Ernst <mernst@cs.washington.edu> Add cross-reference targets for all sections.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
2359e4b9d960b1a48ffe2fe23b3febabbf52cc62 03-Aug-2011 Michael Ernst <mernst@cs.washington.edu> Clarify need for return value in method definitions in annotation files.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
1cae6325cc8a18573b6f2bdac126dd960341b9b0 24-Jun-2011 Michael Ernst <mernst@cs.washington.edu> Trivial tweak
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
493e16c2a600ae732bc7b5753edae3951f95f0fd 15-Apr-2011 wdietl <devnull@localhost> Make the order of elements consistent: first the bounds and then the extends/implements annotations.
Simplify the extends and implements definitions by having the type annotations on the same line, similar to the return type annotations.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
bf70f8f0cc34cce978ad2884a678ccce538870de 14-Apr-2011 wdietl <devnull@localhost> Add extends and implements definitions.
Clarify that "class" is also used for interfaces and others.
Comment on the erased signature.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
982c71570853a77522eabe2a9f97af0a4af70093 06-Apr-2011 wdietl <devnull@localhost> Clean up formatting of typeparam-definition and bound-definition.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
1ddf6bc00743b3f23b48dc7f7add268211bc2bb8 11-Jan-2011 Michael Ernst <mernst@cs.washington.edu> Extend file format to support annotations on type parameters (not just their bounds)
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
26229d6e6b44fb2a740fcf72eecce81b9204a92b 10-Dec-2010 Michael Ernst <mernst@cs.washington.edu> Insert line break
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
47a96287ef2dcdb8cab328d3f6f1666c3023c343 10-Dec-2010 Michael Ernst <mernst@cs.washington.edu> Adjust BNF to permit "* integer" as a relative location.
The meaning is still not documented.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
4867169eeb7cafccfe4ee609568de81a9563d405 15-Oct-2010 Michael Ernst <mernst@cs.washington.edu> Change "fully-qualified name" to "binary name" in 4 places.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
42bb81688c6b84cac9d2828b1980b89bdd3d6915 25-Sep-2010 Werner Dietl <wdietl@gmail.com> Small fix to the existing documentation.
Addition of the new source code description features.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
afc14c46b4bc77b170b9c616d6e9f3a08dd63d8b 25-Sep-2010 Werner Dietl <wdietl@gmail.com> Trial and error revealed that the annotation tools use the erased signature for methods, not the generic signature.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
eed8a331b6d33ed2f3df819cedefcf5a93cd23c6 24-Sep-2010 Werner Dietl <wdietl@gmail.com> Made the specification description conform to the implementation regarding local variables.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
7197e3826a20f33145ce51a5a1d0a1d4bb406217 21-Sep-2010 Werner Dietl <wdietl@gmail.com> Update description of method specifications.
Update the example to be consistent.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
2afebade34f83efd6e09582e76d34bbae27cc77a 21-Feb-2010 Michael Ernst <mernst@cs.washington.edu> Tweaks to documentation
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
888d2dff0a754449df65bb20e442aee91ab46c74 16-Feb-2010 Werner Dietl <wdietl@gmail.com> Some small clean-ups and adding TODO comments for future work.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
dba3ea366c12ef216dc44b9af641fc23fd702b6c 03-Feb-2010 Michael Ernst <mernst@cs.washington.edu> Fix BNF formatting.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
e7e8d2178983c1a02c95d59ad72f7c6eee67c82d 03-Feb-2010 Michael Ernst <mernst@cs.washington.edu> Only permit inner-type keyword after a type keyword, such as: type receiver return
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
5f7cd572aafcf0cc8181bb099e80ef5cc2874628 21-Dec-2009 Michael Ernst <mernst@cs.washington.edu> Updates for version 3.0 release
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
a3b3c77de8f1bae79377c1e9b13519e15028b55e 21-Dec-2009 notnoop <devnull@localhost> forgot these too
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
1d4a51c6c894a68b223130b4119f170db8cdb243 21-Dec-2009 notnoop <devnull@localhost> added missed linefeeds
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
b621caadd89999f36fdee4ff22f5ede38639f346 21-Dec-2009 notnoop <devnull@localhost> document change in field/method-param syntax in changelog and afu document
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
02ac307c0d3fa53b83666972e0a75bc098500700 13-Sep-2009 Michael Ernst <mernst@cs.washington.edu> Handle meta-annotations, read annotations from classfiles.

The four major user-visible changes are:


1. Handle meta-annotations.
Previously, the Annotation File Utilities didn't handle meta-annotations
(annotations that are written on an annotation type declaration); in fact,
AFU simply fabricated retention information. Now, meta-annotations are
handled uniformly with other annotations.

Make AnnotationDef a subclass of AElement, because it can be subtyped.
This introduces recursion in the data structure and requires a number of
changes.


2. Distinguish type annotations from declaration annotations.
Previously, AFU assumed that all annotations were type annotations. Now,
this information is looked up from the meta-annotations.

In AMethod, add returnType field. (Forgetting to add it to prune() was a
source of bugs.) AMethod now only extends AElement, not ATypeElement,
because it can be annotated, but not with type annotations.


3. Read annotations from classfiles.
Previously, AFU created partial information for annotations in an ad hoc
way, and classfile reading did not work. (The focus was on inserting
annotations in class files, not reading annotations from class files.)
Now, classfile reading is operational, and it is often not necessary to
declare annotations in an annotation file. However, if the annotation is
declared in the annotation file, it should be consistent with its
declaration in the class file.


4. Changes to annotation file format.

1. Indicating meta-annotations

annotation visible @Nullable:

becomes

annotation @Nullable: @Retention(value=RUNTIME)

and if it's a type annotation, it should be

annotation @Nullable: @Retention(value=RUNTIME) @java.lang.annotation.Target(value={TYPE_USE})

2. Locations for type and declaration annotations

If p2.B is a declaration annotation on a method, it is written as before:

method foo(Ljava/util/Set;)V: @p2.B

If p2.B is a type annotation on a method return type, it is written in a
new location:

method foo(Ljava/util/Set;)V:
return: @p2.B

Fields should perhaps be treated similarly, but are not (yet).

3. Permit qualified names in several places that only identifiers were
permitted before. This enables use of names that contain periods, such
as inner classes, and also fully-qualified names.

4. Permit two shorthands in annotation uses, as in Java. If there is a
single field named "value", then its name may be omitted: @A(1) instead
of @A(value=1). If an array has only one element, the braces may be
omitted: @A(value=1) instead of @A(value={1}). Naturally, both
shorthands may be combined.


Move changelog to a separate webpage.


Code changes for constructing an annotation:

In Annotations, programmatically build a few useful Annotation and
AnnotationDef objects.

When creating an annotation, sanity-check the field names and values. This
forced many bug fixes and some representation changes. New method
AnnotationFieldType.isValidValue is part of this change.

In AnnotationBuilder, permit passing an AnnotationDef to the constructor.
This is now the preferred usage model, even when when reading from a
classfile, and should perhaps be required, with other uses not supported.
Previously a new AnnotationDef was always inferred from the fields that
were read. AnnotationBuilder can create the AnnotationDef from a
java.lang.annotation.Annotation.

Use a map of all definitions (AnnotationDef) to avoid re-computation or
inconsistencies.


Other code changes:

Code cleanup:
Remove RetentionPolicy.
Eliminate confusing "isVisible" terminology in favor of more standard
"isRuntimeRetention".
Eliminate uses of Annotations.fieldValuesMap, which was only an
optimization (that doesn't seem to help any) and was a source of bugs.

Make explicit the hack where ArrayAnnotationSceneReader extends
AnnotationSceneReader (this hack is not proper behavioral subtyping) by
passing "dummy" from the subclass to the superclass to turn off some
undesired superclass behavior in that case.

Debugging improvements:
Add debugging statements.
ClassAnnotationSceneReader: add tracing
Print classpath if annotation cannot be found on it.


Scene library tests:
Rename files scene-lib/test/annotations/tests/classfile/cases/*.expected to
*_Expected.class; this name permits javap to be run on the file.
Likewise for files *.generated.
Don't delete temp class file if test fails.
Improve error & failure messages.
Improve documentation.
Add helper methods.
Specific changes to AnnotationVerifier and AnnotationRecorder follow.

AnnotationVerifier:
Improve error/failure messages.
Add pretty-printing.

AnnotationRecorder:
Improve field names
fieldArgs1 => fieldArgsName
fieldArgs2 => fieldArgsValue
enumArgs1 => enumArgsName
enumArgs2 =>enumArgsDesc
enumArgs3 =>enumArgsValue
innerAnnotationArgs1 =>innerAnnotationArgsName
innerAnnotationArgs2 =>innerAnnotationArgsDesc
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
6bf7e6e871be4622f49d5472eda970e3e04cccd8 05-Sep-2009 Michael Ernst <mernst@cs.washington.edu> Add a cross-reference
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
20978c6d021d3626aa17a74541f958083c687a5e 02-Sep-2009 Michael Ernst <mernst@cs.washington.edu> Add date to file format specification
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
a0a86449a785accaaf8665ad010e0a73562b984f 30-Aug-2009 Michael Ernst <mernst@cs.washington.edu> Improve formatting
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
36672c2f1592744ab45476caa815e4cddc51dccc 15-Aug-2009 Michael Ernst <mernst@cs.washington.edu> Automated merge with https://annotation-tools.googlecode.com/hg/
0804839dcd296a515a523b1e67474fe8717e0e5b 15-Aug-2009 Michael Ernst <mernst@cs.washington.edu> Relax file format:
receiver may predede parameters (in spec & implementation)
parameters may omit "#" (in implementation only)
Slight improvements to some error messages.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
0d8554e2d36c733fd2a6d7cc1096aef2a6012f00 14-Aug-2009 Michael Ernst <mernst@cs.washington.edu> Update URLs.
Add table of contents to Annotation File Specification.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
4999f059722ff6e4831c5f2deae5547994978cf0 13-Aug-2009 Michael Ernst <mernst@cs.washington.edu> Fix homepage link.
Fix compilation command.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
1dcec9cfcd5a43838f923a2a1c8c6ee3a269e6ae 29-Jul-2009 Michael Ernst <mernst@cs.washington.edu> Release version 2.3.
Update URLs
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
41cf5c66f2c37b4ffc3e32a6fd809fa334ffdb01 24-Jul-2009 Michael Ernst <mernst@cs.washington.edu> Documentation improvements in reponse to suggestions from Fausto Spoto.
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
41b734afee2c166c9204046ff853976d0e962eba 23-Jul-2009 Michael Ernst <mernst@cs.washington.edu> Fix broken formatting of vertical bar for alternatives
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex
10353ed766fc48a0af6bd33d934439e695c03e32 06-Jul-2009 Mahmood Ali <msaeed43@gmail.com> initial import
/external/annotation-tools/annotation-file-utilities/annotation-file-format.tex