classSymbol.getEnclosedElements().stream() .filter(Symbol::isConstructor) .map(e -> (MethodSymbol) e)
/** * Returns true if the given class declares an abstract method. */ public static boolean hasAbstractMethod(ClassSymbol classSymbol) { for (Element member : classSymbol.getEnclosedElements()) { if (member instanceof MethodSymbol && ((MethodSymbol) member).getModifiers().contains(Modifier.ABSTRACT)) { return true; } } return false; }
private static int indexOfSuperclass(List<ClassSymbol> symbols, ClassSymbol clazz) { int superClassIndex = symbols.indexOf(clazz.getSuperclass().tsym); // looks up also if any inner class extends a class in the list if (superClassIndex < 0) { for (Symbol s : clazz.getEnclosedElements()) { if (s instanceof ClassSymbol) { return indexOfSuperclass(symbols, ((ClassSymbol) s)); } } } return superClassIndex; }
for( Symbol sym: classSymbol.getEnclosedElements() )
protected void writeMethods(Writer out, ClassSymbol sym, String cname) throws IOException, TypeSignature.SignatureException { List<ExecutableElement> classmethods = ElementFilter.methodsIn(sym.getEnclosedElements()); for (ExecutableElement md: classmethods) { if(md.getModifiers().contains(Modifier.NATIVE)){
protected void writeMethods(Writer out, ClassSymbol sym, String cname) throws IOException, TypeSignature.SignatureException { List<ExecutableElement> classmethods = ElementFilter.methodsIn(sym.getEnclosedElements()); for (ExecutableElement md: classmethods) { if(md.getModifiers().contains(Modifier.NATIVE)){
classSymbol.getEnclosedElements().stream() .filter(Symbol::isConstructor) .map(e -> (MethodSymbol) e)
private Symbol.MethodSymbol findConstructor( IModule module, String fqn, BasicJavacTask javacTask ) { manifold.util.Pair<Symbol.ClassSymbol, JCTree.JCCompilationUnit> classSymbol = ClassSymbols.instance( module ).getClassSymbol( javacTask, fqn ); Symbol.ClassSymbol cs = classSymbol.getFirst(); Symbol.MethodSymbol ctor = null; for( Symbol sym: cs.getEnclosedElements() ) { if( sym instanceof Symbol.MethodSymbol && sym.flatName().toString().equals( "<init>" ) ) { if( ctor == null ) { ctor = (Symbol.MethodSymbol)sym; } else { ctor = mostAccessible( ctor, (Symbol.MethodSymbol)sym ); } if( Modifier.isPublic( (int)ctor.flags() ) ) { return ctor; } } } return ctor; }
@Override public boolean matches(ExpressionTree tree, VisitorState state) { ClassSymbol classSymbol = (ClassSymbol) getSymbol(tree); if (classSymbol == null) { return false; } if (classSymbol.isInner()) { return true; } for (Symbol enclosedSymbol : classSymbol.getEnclosedElements()) { if (!enclosedSymbol.isConstructor()) { continue; } MethodSymbol constructorSymbol = (MethodSymbol) enclosedSymbol; if (canBeUsedByGetChecked(constructorSymbol, state)) { return false; } } return true; } });
private void fillArtificalParamNames(final ClassSymbol clazz) { for (Symbol s : clazz.getEnclosedElements()) { if (s instanceof MethodSymbol) { MethodSymbol ms = (MethodSymbol) s; if (ms.getParameters().isEmpty()) { continue; } Set<String> usedNames = new HashSet<String>(); for (VarSymbol vs : ms.getParameters()) { String name = JavaSourceAccessor.getINSTANCE().generateReadableParameterName(vs.asType().toString(), usedNames); vs.setName(clazz.name.table.fromString(name)); } } } }
for (Symbol s : clazz.getEnclosedElements()) { if (s instanceof VarSymbol) { if (!initializedVars.contains(s)) { for (Symbol s : clazz.getEnclosedElements()) { if (s instanceof VarSymbol) { if (!context.hasAnnotationType(s, JSweetConfig.ANNOTATION_OPTIONAL)) {
/** * Finds the first inner class declaration of the given name in the given class * hierarchy. */ public static ClassSymbol findInnerClassDeclaration(ClassSymbol clazz, String name) { if (clazz == null) { return null; } for (Symbol s : clazz.getEnclosedElements()) { if (s instanceof ClassSymbol && s.getSimpleName().toString().equals(name)) { return (ClassSymbol) s; } } if (clazz.getSuperclass() != null) { return findInnerClassDeclaration((ClassSymbol) clazz.getSuperclass().tsym, name); } return null; }
@Override public boolean matches(ExpressionTree tree, VisitorState state) { ClassSymbol classSymbol = (ClassSymbol) getSymbol(tree); if (classSymbol == null) { return false; } if (classSymbol.isInner()) { return true; } for (Symbol enclosedSymbol : classSymbol.getEnclosedElements()) { if (!enclosedSymbol.isConstructor()) { continue; } MethodSymbol constructorSymbol = (MethodSymbol) enclosedSymbol; if (canBeUsedByGetChecked(constructorSymbol, state)) { return false; } } return true; } });