com.github.javaparser.ast.Node.getRange()方法的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(6.0k)|赞(0)|评价(0)|浏览(184)

本文整理了Java中com.github.javaparser.ast.Node.getRange()方法的一些代码示例,展示了Node.getRange()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Node.getRange()方法的具体详情如下:
包路径:com.github.javaparser.ast.Node
类名称:Node
方法名:getRange

Node.getRange介绍

暂无

代码示例

代码示例来源:origin: com.github.javaparser/javaparser-symbol-solver-core

  1. private int lineNr(Node node) {
  2. return node.getRange().map(range -> range.begin.line).orElseThrow(IllegalStateException::new);
  3. }
  4. }

代码示例来源:origin: GumTreeDiff/gumtree

  1. protected void pushNode(Node n, String label) {
  2. int type = n.getClass().getName().hashCode();
  3. String typeName = n.getClass().getSimpleName();
  4. try {
  5. Position begin = n.getRange().get().begin;
  6. Position end = n.getRange().get().end;
  7. push(type, typeName, label, reader.positionFor(begin.line, begin.column),
  8. reader.positionFor(end.line,end.column));
  9. }
  10. catch (NoSuchElementException ignore) { }
  11. }

代码示例来源:origin: javaparser/javasymbolsolver

  1. private void solve(Node node) {
  2. if (node instanceof ClassOrInterfaceDeclaration) {
  3. solveTypeDecl((ClassOrInterfaceDeclaration) node);
  4. } else if (node instanceof Expression) {
  5. if ((getParentNode(node) instanceof ImportDeclaration) || (getParentNode(node) instanceof Expression)
  6. || (getParentNode(node) instanceof MethodDeclaration)
  7. || (getParentNode(node) instanceof PackageDeclaration)) {
  8. // skip
  9. } else if ((getParentNode(node) instanceof Statement) || (getParentNode(node) instanceof VariableDeclarator)) {
  10. try {
  11. ResolvedType ref = JavaParserFacade.get(typeSolver).getType(node);
  12. out.println(" Line " + node.getRange().get().begin.line + ") " + node + " ==> " + ref.describe());
  13. ok++;
  14. } catch (UnsupportedOperationException upe) {
  15. unsupported++;
  16. err.println(upe.getMessage());
  17. throw upe;
  18. } catch (RuntimeException re) {
  19. ko++;
  20. err.println(re.getMessage());
  21. throw re;
  22. }
  23. }
  24. }
  25. }

代码示例来源:origin: com.github.javaparser/java-symbol-solver-core

  1. private void solve(Node node) {
  2. if (node instanceof ClassOrInterfaceDeclaration) {
  3. solveTypeDecl((ClassOrInterfaceDeclaration) node);
  4. } else if (node instanceof Expression) {
  5. if ((getParentNode(node) instanceof ImportDeclaration) || (getParentNode(node) instanceof Expression)
  6. || (getParentNode(node) instanceof MethodDeclaration)
  7. || (getParentNode(node) instanceof PackageDeclaration)) {
  8. // skip
  9. } else if ((getParentNode(node) instanceof Statement) || (getParentNode(node) instanceof VariableDeclarator)) {
  10. try {
  11. ResolvedType ref = JavaParserFacade.get(typeSolver).getType(node);
  12. out.println(" Line " + node.getRange().get().begin.line + ") " + node + " ==> " + ref.describe());
  13. ok++;
  14. } catch (UnsupportedOperationException upe) {
  15. unsupported++;
  16. err.println(upe.getMessage());
  17. throw upe;
  18. } catch (RuntimeException re) {
  19. ko++;
  20. err.println(re.getMessage());
  21. throw re;
  22. }
  23. }
  24. }
  25. }

代码示例来源:origin: com.thoughtworks.gauge/gauge-java

  1. private void refactor(MethodDeclaration methodDeclaration, StringLiteralExpr memberValue, SingleMemberAnnotationExpr annotation) {
  2. if (StringEscapeUtils.unescapeJava(memberValue.getValue()).trim().equals(oldStepValue.getStepAnnotationText().trim())) {
  3. newParameters = Arrays.asList(new Parameter[paramPositions.size()]);
  4. memberValue.setValue(StringEscapeUtils.escapeJava(newStepValue.getStepAnnotationText()));
  5. List<Parameter> parameters = methodDeclaration.getParameters();
  6. for (int i = 0, paramPositionsSize = paramPositions.size(); i < paramPositionsSize; i++) {
  7. if (paramPositions.get(i).getOldPosition() < 0) {
  8. String paramName = Util.getValidJavaIdentifier(Util.convertToCamelCase("arg " + newStepValue.getParameters().get(i)));
  9. if (paramName.equals("arg")) {
  10. paramName += i;
  11. }
  12. newParameters.set(paramPositions.get(i).getNewPosition(), new Parameter(new ClassOrInterfaceType("Object"), new VariableDeclaratorId(paramName)));
  13. } else {
  14. newParameters.set(paramPositions.get(i).getNewPosition(), parameters.get(paramPositions.get(i).getOldPosition()));
  15. }
  16. }
  17. for (int k = 0; k < newParameters.size(); k++) {
  18. for (int l = k + 1; l < newParameters.size(); l++) {
  19. if (newParameters.get(k).getName().equals(newParameters.get(l).getName())) {
  20. newParameters.set(l, new Parameter(new ClassOrInterfaceType("Object"), new VariableDeclaratorId(newParameters.get(l).getName() + l)));
  21. }
  22. }
  23. }
  24. methodDeclaration.setParameters(newParameters);
  25. annotation.setMemberValue(memberValue);
  26. this.javaElement = new JavaRefactoringElement(getJavaFileText(methodDeclaration), null);
  27. stepSpan = annotation.getChildrenNodes().get(1).getRange();
  28. this.refactored = true;
  29. }
  30. }

代码示例来源:origin: getgauge/gauge-java

  1. private void refactor(MethodDeclaration methodDeclaration, StringLiteralExpr memberValue, SingleMemberAnnotationExpr annotation) {
  2. if (StringEscapeUtils.unescapeJava(memberValue.getValue()).trim().equals(oldStepValue.getStepAnnotationText().trim())) {
  3. newParameters = Arrays.asList(new Parameter[paramPositions.size()]);
  4. memberValue.setValue(StringEscapeUtils.escapeJava(newStepValue.getStepAnnotationText()));
  5. List<Parameter> parameters = methodDeclaration.getParameters();
  6. for (int i = 0, paramPositionsSize = paramPositions.size(); i < paramPositionsSize; i++) {
  7. if (paramPositions.get(i).getOldPosition() < 0) {
  8. String paramName = Util.getValidJavaIdentifier(Util.convertToCamelCase("arg " + newStepValue.getParameters().get(i)));
  9. if (paramName.equals("arg")) {
  10. paramName += i;
  11. }
  12. newParameters.set(paramPositions.get(i).getNewPosition(), new Parameter(new ClassOrInterfaceType("Object"), new VariableDeclaratorId(paramName)));
  13. } else {
  14. newParameters.set(paramPositions.get(i).getNewPosition(), parameters.get(paramPositions.get(i).getOldPosition()));
  15. }
  16. }
  17. for (int k = 0; k < newParameters.size(); k++) {
  18. for (int l = k + 1; l < newParameters.size(); l++) {
  19. if (newParameters.get(k).getName().equals(newParameters.get(l).getName())) {
  20. newParameters.set(l, new Parameter(new ClassOrInterfaceType("Object"), new VariableDeclaratorId(newParameters.get(l).getName() + l)));
  21. }
  22. }
  23. }
  24. methodDeclaration.setParameters(newParameters);
  25. annotation.setMemberValue(memberValue);
  26. this.javaElement = new JavaRefactoringElement(getJavaFileText(methodDeclaration), null);
  27. stepSpan = annotation.getChildrenNodes().get(1).getRange();
  28. this.refactored = true;
  29. }
  30. }

代码示例来源:origin: com.github.javaparser/javaparser-symbol-solver-core

  1. + name.getParentNode().get().getClass().getSimpleName() + ". See " + name + " at " + name.getRange());

相关文章