本文整理匯總了Java中org.eclipse.jdt.core.compiler.IProblem.UndefinedMethod方法的典型用法代碼示例。如果您正苦於以下問題:Java IProblem.UndefinedMethod方法的具體用法?Java IProblem.UndefinedMethod怎麽用?Java IProblem.UndefinedMethod使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類org.eclipse.jdt.core.compiler.IProblem
的用法示例。
在下文中一共展示了IProblem.UndefinedMethod方法的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: getCorrections
import org.eclipse.jdt.core.compiler.IProblem; //導入方法依賴的package包/類
@Override
public IJavaCompletionProposal[] getCorrections(IInvocationContext context,
IProblemLocation[] locations) throws CoreException {
for (final IProblemLocation problem : locations) {
if ((problem.getProblemId() == IProblem.UnresolvedVariable
|| problem.getProblemId() == IProblem.UndefinedType)
&& Utils.isAPGAS(problem.getProblemArguments()[0])) {
if (!apgasInBuildPath(context.getCompilationUnit().getJavaProject())) {
return getAddAPGASToBuildPathProposals(context);
}
} else if (problem.getProblemId() == IProblem.UndefinedMethod
&& Utils.isAPGAS(problem.getProblemArguments()[1])) {
if (!apgasInBuildPath(context.getCompilationUnit().getJavaProject())) {
return getAddAPGASToBuildPathProposals(context);
} else {
return getImportStaticConstructsProposal(context);
}
}
}
return null;
}
示例2: getProblemKind
import org.eclipse.jdt.core.compiler.IProblem; //導入方法依賴的package包/類
private static int getProblemKind(IProblem problem) {
switch (problem.getID()) {
case IProblem.UndefinedField:
return FIELD;
case IProblem.UndefinedMethod:
return METHOD;
case IProblem.UndefinedLabel:
return LABEL;
case IProblem.UndefinedName:
case IProblem.UnresolvedVariable:
return NAME;
case IProblem.UndefinedType:
return TYPE;
}
return 0;
}
示例3: getProblemKind
import org.eclipse.jdt.core.compiler.IProblem; //導入方法依賴的package包/類
private static int getProblemKind(IProblem problem) {
switch (problem.getID()) {
case IProblem.UndefinedField:
return FIELD;
case IProblem.UndefinedMethod:
return METHOD;
case IProblem.UndefinedLabel:
return LABEL;
case IProblem.UndefinedName:
case IProblem.UnresolvedVariable:
return NAME;
case IProblem.UndefinedType:
return TYPE;
}
return 0;
}
示例4: isSyntaxLikeError
import org.eclipse.jdt.core.compiler.IProblem; //導入方法依賴的package包/類
public boolean isSyntaxLikeError(IProblem problem) {
//Syntax issues are always reported
if ((problem.getID() & IProblem.Syntax) != 0) {
return true;
}
if (!isDefaultProject && problem.getID() == IProblem.PackageIsNotExpectedPackage) {
return false;
}
//Type and Import issues are never reported
if ((problem.getID() & IProblem.TypeRelated) != 0 || //
(problem.getID() & IProblem.ImportRelated) != 0) {
return false;
}
//For the rest, we need to cherry pick what is ignored or not
switch (problem.getID()) {
case IProblem.AbstractMethodMustBeImplemented:
case IProblem.AmbiguousMethod:
case IProblem.DanglingReference:
case IProblem.MethodMustOverrideOrImplement:
case IProblem.MissingReturnType:
case IProblem.MissingTypeInConstructor:
case IProblem.MissingTypeInLambda:
case IProblem.MissingTypeInMethod:
case IProblem.UndefinedConstructor:
case IProblem.UndefinedField:
case IProblem.UndefinedMethod:
case IProblem.UndefinedName:
case IProblem.UnresolvedVariable:
return false;
default:
//We log problems for troubleshooting purposes
String error = getError(problem);
JavaLanguageServerPlugin.logInfo(problem.getMessage() + " is of type " + error);
}
return true;
}
示例5: acceptResult
import org.eclipse.jdt.core.compiler.IProblem; //導入方法依賴的package包/類
public void acceptResult(CompilationResult result) {
String className = ((CompilationUnit) result.getCompilationUnit()).className;
int classIdx;
for (classIdx = 0; classIdx < units.length; ++classIdx) {
if (className.equals(units[classIdx].getName())) {
break;
}
}
if (result.hasErrors()) {
// IProblem[] problems = result.getErrors();
IProblem[] problems = getJavaCompilationErrors(result);
unitResults[classIdx].problems = problems;
String sourceCode = units[classIdx].getSourceCode();
for (int i = 0; i < problems.length; i++) {
IProblem problem = problems[i];
if (IProblem.UndefinedMethod == problem.getID()) {
if (problem.getSourceStart() >= 0 && problem.getSourceEnd() >= 0) {
String methodName = sourceCode.substring(problem.getSourceStart(), problem.getSourceEnd() + 1);
Method method = FunctionsUtil.getInstance(jasperReportsContext).getMethod4Function(methodName);
if (method != null) {
unitResults[classIdx].addMissingMethod(method);
// continue;
}
}
}
}
} else {
ClassFile[] resultClassFiles = result.getClassFiles();
for (int i = 0; i < resultClassFiles.length; i++) {
units[classIdx].setCompileData(resultClassFiles[i].getBytes());
}
}
}
示例6: hasCorrections
import org.eclipse.jdt.core.compiler.IProblem; //導入方法依賴的package包/類
@Override
public boolean hasCorrections(ICompilationUnit unit, int problemId) {
return problemId == IProblem.UnresolvedVariable
|| problemId == IProblem.UndefinedType
|| problemId == IProblem.UndefinedMethod;
}
示例7: acceptResult
import org.eclipse.jdt.core.compiler.IProblem; //導入方法依賴的package包/類
@Override
public void acceptResult(CompilationResult result)
{
String className = ((CompilationUnit) result.getCompilationUnit()).className;
int classIdx;
for (classIdx = 0; classIdx < units.length; ++classIdx)
{
if (className.equals(units[classIdx].getName()))
{
break;
}
}
if (result.hasErrors())
{
//IProblem[] problems = result.getErrors();
IProblem[] problems = getJavaCompilationErrors(result);
unitResults[classIdx].problems = problems;
String sourceCode = units[classIdx].getSourceCode();
for (int i = 0; i < problems.length; i++)
{
IProblem problem = problems[i];
if (IProblem.UndefinedMethod == problem.getID())
{
if (
problem.getSourceStart() >= 0
&& problem.getSourceEnd() >= 0
)
{
String methodName =
sourceCode.substring(
problem.getSourceStart(),
problem.getSourceEnd() + 1
);
Method method = FunctionsUtil.getInstance(jasperReportsContext).getMethod4Function(methodName);
if (method != null)
{
unitResults[classIdx].addMissingMethod(method);
//continue;
}
}
}
}
}
else
{
ClassFile[] resultClassFiles = result.getClassFiles();
for (int i = 0; i < resultClassFiles.length; i++)
{
units[classIdx].setCompileData(resultClassFiles[i].getBytes());
}
}
}