本文整理汇总了Java中javax.lang.model.type.TypeKind.OTHER属性的典型用法代码示例。如果您正苦于以下问题:Java TypeKind.OTHER属性的具体用法?Java TypeKind.OTHER怎么用?Java TypeKind.OTHER使用的例子?那么, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类javax.lang.model.type.TypeKind
的用法示例。
在下文中一共展示了TypeKind.OTHER属性的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: isErroneous
/**
* Checks whether 'e' contains error or is missing. If the passed element is null
* it's assumed the element could not be resolved and this method returns true. Otherwise,
* the element's type kind is checked against error constants and finally the erroneous
* state of the element is checked.
*
* @param e Element to check or {@code null}
* @return true, if the element is missing (is {@code null}) or contains errors.
*/
public boolean isErroneous(@NullAllowed Element e) {
if (e == null) {
return true;
}
if (e.getKind() == ElementKind.MODULE && ((Symbol)e).kind == Kinds.Kind.ERR) {
return true;
}
final TypeMirror type = e.asType();
if (type == null) {
return false;
}
if (type.getKind() == TypeKind.ERROR || type.getKind() == TypeKind.OTHER) {
return true;
}
if (type instanceof Type) {
if (((Type)type).isErroneous()) {
return true;
}
}
return false;
}
示例2: unboxBoxed
/**
* Unbox a wrapper type into a TypeKind. Some additional types are mapped to TypeKinds which cannot really appear in
* expressions (at least I hope)
*
* @param tm
* @return
*/
private static TypeKind unboxBoxed(TypeMirror tm) {
TypeElement te = (TypeElement)((DeclaredType)tm).asElement();
String qn = te.getQualifiedName().toString();
if (!qn.startsWith("java.lang.")) { // NO18N
if (qn.equals("java.math.BigInteger")) { // NOI18N
return TypeKind.WILDCARD;
}
return null;
}
switch (qn.substring(10)) {
case "Short": return TypeKind.SHORT; // NOI18N
case "Long": return TypeKind.LONG; // NOI18N
case "Byte": return TypeKind.BYTE; // NOI18N
case "Integer": return TypeKind.INT; // NOI18N
case "Double": return TypeKind.DOUBLE; // NOI18N
case "Float": return TypeKind.FLOAT; // NOI18N
case "Character": return TypeKind.CHAR; // NOI18N
case "String": return TypeKind.OTHER; // NOI18N
case "Object": return TypeKind.PACKAGE; // NOI18N
}
return null;
}
示例3: getKind
public TypeKind getKind() {
switch (tag) {
case BYTE: return TypeKind.BYTE;
case CHAR: return TypeKind.CHAR;
case SHORT: return TypeKind.SHORT;
case INT: return TypeKind.INT;
case LONG: return TypeKind.LONG;
case FLOAT: return TypeKind.FLOAT;
case DOUBLE: return TypeKind.DOUBLE;
case BOOLEAN: return TypeKind.BOOLEAN;
case VOID: return TypeKind.VOID;
case BOT: return TypeKind.NULL;
case NONE: return TypeKind.NONE;
default: return TypeKind.OTHER;
}
}
示例4: isErroneous
public boolean isErroneous(@NullAllowed Element e) {
if (e == null) {
return true;
}
if (e.getKind() == ElementKind.MODULE) {
return false;
}
final TypeMirror type = e.asType();
if (type == null) {
return false;
}
return type.getKind() == TypeKind.ERROR || type.getKind() == TypeKind.OTHER;
}
示例5: isValidType
public static boolean isValidType(TypeMirror m) {
return m != null && (
m.getKind() != TypeKind.PACKAGE &&
m.getKind() != TypeKind.OTHER &&
m.getKind() != TypeKind.ERROR);
}
示例6: needsErasure
private static boolean needsErasure(TypeMirror typeMirror) {
return typeMirror.getKind() != TypeKind.NONE && typeMirror.getKind() != TypeKind.VOID && !typeMirror.getKind().isPrimitive() && typeMirror.getKind() != TypeKind.OTHER &&
typeMirror.getKind() != TypeKind.NULL;
}