summaryrefslogtreecommitdiff
path: root/compiler/src/main/java/android/databinding/tool/reflection
diff options
context:
space:
mode:
authorDana Dahlstrom <dahlstrom@google.com>2017-05-01 09:31:04 -0700
committerDana Dahlstrom <dahlstrom@google.com>2017-05-01 09:43:04 -0700
commitd3aa6e368c913fca9f8607cdd7f7992346d6bce0 (patch)
tree70373f19262570f8a662642beccd15d66ac33eee /compiler/src/main/java/android/databinding/tool/reflection
parent751a0253ecec044ad6103a0d927e2e7213f58808 (diff)
downloaddata-binding-d3aa6e368c913fca9f8607cdd7f7992346d6bce0.tar.gz
Add missing cases in enum switches
… and enable http://errorprone.info/bugpattern/MissingCasesInEnumSwitch. Change-Id: Iaee36767ed679a7c0f7ecedc072b1578f05ce51b
Diffstat (limited to 'compiler/src/main/java/android/databinding/tool/reflection')
-rw-r--r--compiler/src/main/java/android/databinding/tool/reflection/annotation/AnnotationTypeUtil.java19
1 files changed, 17 insertions, 2 deletions
diff --git a/compiler/src/main/java/android/databinding/tool/reflection/annotation/AnnotationTypeUtil.java b/compiler/src/main/java/android/databinding/tool/reflection/annotation/AnnotationTypeUtil.java
index 0c1782ff..a8c35e26 100644
--- a/compiler/src/main/java/android/databinding/tool/reflection/annotation/AnnotationTypeUtil.java
+++ b/compiler/src/main/java/android/databinding/tool/reflection/annotation/AnnotationTypeUtil.java
@@ -162,9 +162,11 @@ public class AnnotationTypeUtil extends TypeUtil {
return toJava((IntersectionType) typeMirror);
case ERROR:
return mTypes.asElement(typeMirror).getSimpleName().toString();
+ case OTHER:
+ throw new IllegalArgumentException(
+ "Unexpected TypeMirror kind " + typeMirror.getKind() + ": " + typeMirror);
}
- throw new IllegalArgumentException("Unexpected TypeMirror kind " +
- typeMirror.getKind() + ": " + typeMirror);
+ throw new AssertionError(typeMirror.getKind());
}
private String toJava(ArrayType arrayType) {
@@ -282,7 +284,20 @@ public class AnnotationTypeUtil extends TypeUtil {
case ENUM_CONSTANT:
case FIELD:
return toJava(enclosing) + '.' + element.getSimpleName();
+ case ANNOTATION_TYPE:
+ case PARAMETER:
+ case LOCAL_VARIABLE:
+ case EXCEPTION_PARAMETER:
+ case METHOD:
+ case CONSTRUCTOR:
+ case STATIC_INIT:
+ case INSTANCE_INIT:
+ case TYPE_PARAMETER:
+ case OTHER:
+ case RESOURCE_VARIABLE:
+ return element.getSimpleName().toString();
}
+ throw new AssertionError(enclosing.getKind());
}
return element.getSimpleName().toString();
}