本文整理汇总了Java中org.eclipse.jdt.internal.compiler.lookup.TypeBinding.problemId方法的典型用法代码示例。如果您正苦于以下问题:Java TypeBinding.problemId方法的具体用法?Java TypeBinding.problemId怎么用?Java TypeBinding.problemId使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.eclipse.jdt.internal.compiler.lookup.TypeBinding
的用法示例。
在下文中一共展示了TypeBinding.problemId方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: invalidEnclosingType
import org.eclipse.jdt.internal.compiler.lookup.TypeBinding; //导入方法依赖的package包/类
public void invalidEnclosingType(Expression expression, TypeBinding type, ReferenceBinding enclosingType) {
if (enclosingType.isAnonymousType()) enclosingType = enclosingType.superclass();
if (enclosingType.sourceName != null && enclosingType.sourceName.length == 0) return;
int flag = IProblem.UndefinedType; // default
switch (type.problemId()) {
case ProblemReasons.NotFound : // 1
flag = IProblem.UndefinedType;
break;
case ProblemReasons.NotVisible : // 2
flag = IProblem.NotVisibleType;
break;
case ProblemReasons.Ambiguous : // 3
flag = IProblem.AmbiguousType;
break;
case ProblemReasons.InternalNameProvided :
flag = IProblem.InternalTypeNameProvided;
break;
case ProblemReasons.NoError : // 0
default :
needImplementation(expression); // want to fail to see why we were here...
break;
}
this.handle(
flag,
new String[] {new String(enclosingType.readableName()) + "." + new String(type.readableName())}, //$NON-NLS-1$
new String[] {new String(enclosingType.shortReadableName()) + "." + new String(type.shortReadableName())}, //$NON-NLS-1$
expression.sourceStart,
expression.sourceEnd);
}
示例2: javadocInvalidType
import org.eclipse.jdt.internal.compiler.lookup.TypeBinding; //导入方法依赖的package包/类
public void javadocInvalidType(ASTNode location, TypeBinding type, int modifiers) {
if (javadocVisibility(this.options.reportInvalidJavadocTagsVisibility, modifiers)) {
int id = IProblem.JavadocUndefinedType; // default
switch (type.problemId()) {
case ProblemReasons.NotFound :
id = IProblem.JavadocUndefinedType;
break;
case ProblemReasons.NotVisible :
id = IProblem.JavadocNotVisibleType;
break;
case ProblemReasons.Ambiguous :
id = IProblem.JavadocAmbiguousType;
break;
case ProblemReasons.InternalNameProvided :
id = IProblem.JavadocInternalTypeNameProvided;
break;
case ProblemReasons.InheritedNameHidesEnclosingName :
id = IProblem.JavadocInheritedNameHidesEnclosingTypeName;
break;
case ProblemReasons.NonStaticReferenceInStaticContext :
id = IProblem.JavadocNonStaticTypeFromStaticInvocation;
break;
case ProblemReasons.NoError : // 0
default :
needImplementation(location); // want to fail to see why we were here...
break;
}
int severity = computeSeverity(id);
if (severity == ProblemSeverities.Ignore) return;
this.handle(
id,
new String[] {new String(type.readableName())},
new String[] {new String(type.shortReadableName())},
severity,
location.sourceStart,
location.sourceEnd);
}
}
示例3: illegalSuperAccess
import org.eclipse.jdt.internal.compiler.lookup.TypeBinding; //导入方法依赖的package包/类
public void illegalSuperAccess(TypeBinding superType, TypeBinding directSuperType, ASTNode location) {
if (directSuperType.problemId() != ProblemReasons.AttemptToBypassDirectSuper)
needImplementation(location);
handle(IProblem.SuperAccessCannotBypassDirectSuper,
new String[] { String.valueOf(superType.readableName()), String.valueOf(directSuperType.readableName()) },
new String[] { String.valueOf(superType.shortReadableName()), String.valueOf(directSuperType.shortReadableName()) },
location.sourceStart,
location.sourceEnd);
}