當前位置: 首頁>>代碼示例>>Java>>正文


Java IProblem.UndefinedMethod方法代碼示例

本文整理匯總了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;
}
 
開發者ID:x10-lang,項目名稱:apgas,代碼行數:22,代碼來源:APGASQuickfixProcessor.java

示例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;
}
 
開發者ID:eclipse,項目名稱:eclipse.jdt.ls,代碼行數:17,代碼來源:LinkedNodeFinder.java

示例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;
}
 
開發者ID:eclipse,項目名稱:che,代碼行數:17,代碼來源:LinkedNodeFinder.java

示例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;
}
 
開發者ID:eclipse,項目名稱:eclipse.jdt.ls,代碼行數:37,代碼來源:DiagnosticsHandler.java

示例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());
        }
    }
}
 
開發者ID:OpenSoftwareSolutions,項目名稱:PDFReporter-Studio,代碼行數:41,代碼來源:JRJdtCompiler.java

示例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;
}
 
開發者ID:x10-lang,項目名稱:apgas,代碼行數:7,代碼來源:APGASQuickfixProcessor.java

示例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());
        }
    }
}
 
開發者ID:TIBCOSoftware,項目名稱:jasperreports,代碼行數:60,代碼來源:JRJdtCompiler.java


注:本文中的org.eclipse.jdt.core.compiler.IProblem.UndefinedMethod方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。