Classes and hierarchies of packages used to model the Java
programming language.
The members of this package and its subpackages are for use in
language modeling and language processing tasks and APIs including,
but not limited to, the
annotation processing framework.
This language model follows a mirror-based design; see
Gilad Bracha and David Ungar. Mirrors: Design Principles for
Meta-level Facilities of Object-Oriented Programming Languages.
In Proc. of the ACM Conf. on Object-Oriented Programming, Systems,
Languages and Applications, October 2004.
In particular, the model makes a distinction between static
language constructs, like the
element representing
java.util.Set
, and the family of
types that may be associated
with an element, like the raw type
java.util.Set
,
java.util.Set<String>
, and
java.util.Set<T>
.
Unless otherwise specified, methods in this package will throw
a NullPointerException
if given a null
argument.