README.md
1# Auto Common Utilities
2
3## Overview
4
5The Auto project has a set of common utilities to help ease use of the
6annotation processing environment.
7
8## Utility classes of note
9
10`MoreTypes`
11: Utilities and `Equivalence` wrappers for `TypeMirror` and related subtypes
12
13`MoreElements`
14: Utilities for `Element` and related subtypes
15
16`SuperficialValidation`
17: Very simple scanner to ensure an `Element` is valid and free from distortion
18 from upstream compilation errors
19
20`Visibility`
21: Utilities for working with `Element`s' visibility levels (public, protected,
22 etc.)
23
24`BasicAnnotationProcessor`/`Step`
25: Simple types that
26 - implement a validating annotation processor
27 - defer invalid elements until later
28 - break processor actions into multiple steps (which may each handle
29 different annotations)
30
31## Usage/Setup
32
33Auto common utilities have a standard [Maven](http://maven.apache.org) setup
34which can also be used from Gradle, Ivy, Ant, or other systems which consume
35binary artifacts from the central Maven binary artifact repositories.
36
37```xml
38<dependency>
39 <groupId>com.google.auto</groupId>
40 <artifactId>auto-common</artifactId>
41 <version>1.0-SNAPSHOT</version> <!-- or use a known release version -->
42</dependency>
43```
44