javax.lang.model.element.Element.accept()方法的使用及代码示例

x33g5p2x  于2022-01-18 转载在 其他  
字(6.2k)|赞(0)|评价(0)|浏览(215)

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

Element.accept介绍

[英]Applies a visitor to this element.
[中]将访问者应用于此元素。

代码示例

代码示例来源:origin: immutables/immutables

@Override
public <R, P> R accept(ElementVisitor<R, P> v, P p) {
 return delegate.accept(v, p);
}

代码示例来源:origin: org.jboss.logging/jboss-logging-processor

@Override
default <R, P> R accept(final ElementVisitor<R, P> v, final P p) {
  return getDelegate().accept(v, p);
}

代码示例来源:origin: square/javapoet

/** Returns the class name for {@code element}. */
public static ClassName get(TypeElement element) {
 checkNotNull(element, "element == null");
 String simpleName = element.getSimpleName().toString();
 return element.getEnclosingElement().accept(new SimpleElementVisitor8<ClassName, Void>() {
  @Override public ClassName visitPackage(PackageElement packageElement, Void p) {
   return new ClassName(packageElement.getQualifiedName().toString(), null, simpleName);
  }
  @Override public ClassName visitType(TypeElement enclosingClass, Void p) {
   return ClassName.get(enclosingClass).nestedClass(simpleName);
  }
  @Override public ClassName visitUnknown(Element unknown, Void p) {
   return get("", simpleName);
  }
  @Override public ClassName defaultAction(Element enclosingElement, Void p) {
   throw new IllegalArgumentException("Unexpected type nesting: " + element);
  }
 }, null);
}

代码示例来源:origin: hibernate/hibernate-validator

@Override
public Boolean visitTypeAsClass(TypeElement typeElement, Void aVoid) {
  List<? extends Element> enclosedElements = typeElement.getEnclosedElements();
  for ( Element enclosedElement : enclosedElements ) {
    if ( enclosedElement.accept( this, aVoid ) ) {
      return Boolean.TRUE;
    }
  }
  return Boolean.FALSE;
}

代码示例来源:origin: hibernate/hibernate-validator

private ExecutableElement getValidationAppliesToMethod(Element annotation) {
  for ( Element e : annotation.getEnclosedElements() ) {
    ExecutableElement method = e.accept( new ElementKindVisitor8<ExecutableElement, Void>() {
      @Override
      public ExecutableElement visitExecutableAsMethod(ExecutableElement e, Void p) {
        if ( e.getSimpleName().contentEquals( "validationAppliesTo" ) ) {
          return e;
        }
        return null;
      }
    }, null );
    if ( method != null ) {
      return method;
    }
  }
  return null;
}

代码示例来源:origin: javaee/glassfish

@Override
public boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) {
  cm = new JCodeModel();
  for (TypeElement annotation : annotations) {
    for(javax.lang.model.element.Element d : roundEnv.getElementsAnnotatedWith(annotation)) {
      d.accept(visitor, null);
    }
    try {
      cm.build(new FilerCodeWriter(processingEnv.getFiler()));
    } catch (IOException e) {
      throw new Error(e);
    }
  }
  return true;
}

代码示例来源:origin: kohsuke/args4j

d.accept(new SimpleElementVisitor6<Void, Void>() {
  @Override
  public Void visitVariable(VariableElement e, Void p) {

代码示例来源:origin: hibernate/hibernate-validator

typeHelper.filterByType( oneAnnotatedElement.getAnnotationMirrors(), oneAnnotation.asType() );
  oneAnnotatedElement.accept( visitor, mirrorsOfCurrentAnnotation );
element.accept( classVisitor, null );

代码示例来源:origin: hibernate/hibernate-validator

Boolean isValidationAppliesToMethod = e.accept( new ElementKindVisitor8<Boolean, Void>() {
  @Override
  public Boolean visitExecutableAsMethod(ExecutableElement e, Void p) {

代码示例来源:origin: org.kohsuke.sorcerer/sorcerer-javac

/**
 * Processes an element by calling {@code e.accept(this, p)};
 * this method may be overridden by subclasses.
 *
 * @param e the element to scan
 * @param p a scanner-specified parameter
 * @return the result of visiting {@code e}.
 */
public R scan(Element e, P p) {
  return e.accept(this, p);
}

代码示例来源:origin: org.jvnet.sorcerer/sorcerer-javac

/**
 * Processes an element by calling {@code e.accept(this, p)};
 * this method may be overridden by subclasses.
 * @return the result of visiting {@code e}.
 */
public R scan(Element e, P p) {
return e.accept(this, p);
}

代码示例来源:origin: derive4j/derive4j

@Override
protected PackageElement defaultAction(
  final Element e,
  final Void p) {
 return e
   .getEnclosingElement()
   .accept(getPackage,
     null);
}

代码示例来源:origin: org.revapi/revapi-java

@Override
  public Boolean visitDeclared(DeclaredType t, Void aVoid) {
    return t.asElement().accept(IS_THROWABLE_ELEMENT, null);
  }
};

代码示例来源:origin: org.netbeans.api/org-netbeans-modules-java-source-base

@Override
public StringBuilder visitExecutable(ExecutableElement e, Boolean p) {
  if (p != Boolean.TRUE || e.getEnclosingElement() == null) {
    return DEFAULT_VALUE.append(e.getSimpleName());
  } else {
    return e.getEnclosingElement().accept(this, p).
      append(".").
      append(e.getSimpleName());
  }
}

代码示例来源:origin: com.google.dagger/dagger-compiler

private StringBuilder enclosingTypeAndMemberName(Element element) {
  StringBuilder name = new StringBuilder(element.getEnclosingElement().accept(this, null));
  if (!element.getSimpleName().contentEquals("<init>")) {
   name.append('.').append(element.getSimpleName());
  }
  return name;
 }
};

代码示例来源:origin: johncarl81/transfuse

@Override
  public T apply( Element element) {
    //visit the given element to determine its type, feed it into the appropriate
    //ASTElementFactory method and return the result
    return element.accept(elementConverterFactory.buildTypeConverter(astTypeClass), null);
  }
}

代码示例来源:origin: com.google.dagger/dagger-compiler

@Override
public String format(DependencyRequest request) {
 return request
   .requestElement()
   .map(element -> element.accept(formatVisitor, request))
   .orElse("");
}

代码示例来源:origin: org.jvnet.sorcerer/sorcerer-javac

@Override
public Set<Element> scan(Element e, DeclaredType p) {
  java.util.List<? extends AnnotationMirror> annotationMirrors = 
  processingEnv.getElementUtils().getAllAnnotationMirrors(e);
  for (AnnotationMirror annotationMirror : annotationMirrors) {
  if (annotationMirror.getAnnotationType().equals(p))
    annotatedElements.add(e);
  }
  e.accept(this, p);
  return annotatedElements;
}

代码示例来源:origin: org.netbeans.api/org-netbeans-modules-java-source-base

@Override
public StringBuilder visitVariable(VariableElement e, Boolean p) {
  if (p != Boolean.TRUE || e.getEnclosingElement() == null) {
    return DEFAULT_VALUE.append(e.getSimpleName());
  } else {
    return e.getEnclosingElement().accept(this, p).
      append(".").
      append(e.getSimpleName());
  }
}

代码示例来源:origin: com.oracle.truffle/truffle-dsl-processor

@Override
public <R, P> R accept(ElementVisitor<R, P> v, P p) {
  for (Element type : getEnclosedElements()) {
    if (type.getKind().isClass()) {
      type.accept(v, p);
    } else {
      throw new ClassCastException(type.getClass().getName());
    }
  }
  return null;
}

相关文章