public class FieldInvariants extends Object
@FieldInvariant. Think of
 this as a set of (field, qualifier) pairs.
 A FieldInvariants object may be malformed (inconsistent number of fields and qualifiers). In this case, the BaseTypeVisitor will issue an error.
| Constructor and Description | 
|---|
| FieldInvariants(FieldInvariants other,
               List<String> fields,
               List<AnnotationMirror> qualifiers)Creates a new object with all the invariants in  other, plus those specified byfieldsandqualifiers. | 
| FieldInvariants(List<String> fields,
               List<AnnotationMirror> qualifiers)Creates a new FieldInvariants object. | 
| Modifier and Type | Method and Description | 
|---|---|
| List<String> | getFields()The simple names of the fields that have a qualifier. | 
| List<AnnotationMirror> | getQualifiersFor(CharSequence field)Returns a list of qualifiers for  field. | 
| DiagMessage | isSuperInvariant(FieldInvariants superInvar,
                AnnotatedTypeFactory factory)Returns null if  superInvaris a super invariant, otherwise returns the error message. | 
| boolean | isWellFormed()Returns true if there is a qualifier for each field in  fields. | 
public FieldInvariants(List<String> fields, List<AnnotationMirror> qualifiers)
fields.fields - list of fieldsqualifiers - list of qualifierspublic FieldInvariants(FieldInvariants other, List<String> fields, List<AnnotationMirror> qualifiers)
other, plus those specified by fields and qualifiers. The result is well-formed if length of qualifiers is either 1
 or equal to length of fields.other - other invariant object, may be nullfields - list of fieldsqualifiers - list of qualifierspublic List<String> getFields()
public List<AnnotationMirror> getQualifiersFor(CharSequence field)
field. If field has no qualifiers, returns an
 empty list.field - simple field namefield, possibly emptypublic boolean isWellFormed()
fields.fieldspublic DiagMessage isSuperInvariant(FieldInvariants superInvar, AnnotatedTypeFactory factory)
superInvar is a super invariant, otherwise returns the error message.superInvar - the value to check for being a super invariantfactory - the type factorysuperInvar is a super invariant, otherwise returns the error message