docProcessor.processClassDoc(classDoc, classDocType); for (final MethodDoc methodDoc : classDoc.methods()) {
/** * Returns an array containing all of the "test" methods (including those that are inherited) for * the given class. */ private static MethodDoc[] getTestMethods(ClassDoc c) { Set set = new TreeSet(); while (c != null) { MethodDoc[] methods = c.methods(); for (int i = 0; i < methods.length; i++) { MethodDoc method = methods[i]; if (method.isPublic() && method.parameters().length == 0 && method.name().startsWith("test")) { set.add(method); } } c = c.superclass(); } return (MethodDoc[]) set.toArray(new MethodDoc[0]); }
public static boolean start(RootDoc root) { //iterate over all classes. HashMap<String, ClassInspect> inspects = new HashMap<>(root.classes().length); ClassDoc[] classes = root.classes(); for (ClassDoc classDoc : classes) { ClassInspect classInspect = new ClassInspect(classDoc.name(), ((ClassDocImpl) classDoc).type.toString(), classDoc.commentText()); inspects.put(classInspect.getFullName(), classInspect); classInspect.setMethods(getInspects(classDoc.methods())); classInspect.setConstructors(getInspects(classDoc.constructors())); } SerializeInspect serializeInspect = new SerializeInspect(); String json = serializeInspect.toJson(inspects); serializeInspect.saveToFile(json); return true; }
public class ExtractCommentsDoclet { public static boolean start(RootDoc root) throws IOException { for (ClassDoc c : root.classes()) { print(c.qualifiedName(), c.commentText()); for (FieldDoc f : c.fields(false)) { print(f.qualifiedName(), f.commentText()); } for (MethodDoc m : c.methods(false)) { print(m.qualifiedName(), m.commentText()); if (m.commentText() != null && m.commentText().length() > 0) { for (ParamTag p : m.paramTags()) print(m.qualifiedName() + "@" + p.parameterName(), p.parameterComment()); for (Tag t : m.tags("return")) { if (t.text() != null && t.text().length() > 0) print(m.qualifiedName() + "@return", t.text()); } } } } return true; } private static void print(String name, String comment) throws IOException { if (comment != null && comment.length() > 0) { new FileWriter(name + ".txt").append(comment).close(); } } }
public MethodDoc[] methods(boolean arg0) { return wrapped.methods(arg0); }
public MethodDoc[] methods() { return wrapped.methods(); }
/** @return All methods declared by the <var>clasS</var>, its superclasses and all the interfaces it implements */ private static MethodDoc[] allMethods(ClassDoc clasS) { List<MethodDoc> result = new ArrayList<MethodDoc>(); for (ClassDoc cd : Docs.withSuperclassesAndInterfaces(clasS)) { result.addAll(Arrays.asList(cd.methods())); } return result.toArray(new MethodDoc[result.size()]); }
/** * 在{@link ClassDoc}中查找与method匹配的{@link com.sun.tools.javadoc.MethodDocImpl}<br> * @param method method * @return 没有找则返回{@code null} * @see #indexOf(Method) */ public MethodDoc getMethodDoc(Method method) { int index = indexOf(method); return index < 0 ? null : classDoc.methods()[index]; } /**
/** @return All methods declared by the <var>clasS</var>, its superclasses and all the interfaces it implements */ private static MethodDoc[] allMethods(ClassDoc clasS) { List<MethodDoc> result = new ArrayList<MethodDoc>(); for (ClassDoc cd : Docs.withSuperclassesAndInterfaces(clasS)) { result.addAll(Arrays.asList(cd.methods())); } return result.toArray(new MethodDoc[result.size()]); }
public static void start(RootDoc root) { ClassDoc[] classes = root.classes(); for (ClassDoc cd : classes) { System.out.println("Class [" + cd + "] has the following methods"); for(MemberDoc md : cd.methods()) { System.out.println(" " + md); } } }
public void output(PrintStream out) { out.println(formatComment(classDoc, false)); out.println(classDoc); for (MethodDoc method : classDoc.methods()) { out.println(formatComment(method, true)); out.printf("%s%s\n", indent, method.toString()); } }
public class ListClassAndMethods { public static boolean start(RootDoc root) { ClassDoc[] classes = root.classes(); for(ClassDoc clazz : classes){ System.out.println("Class Name: "+clazz); System.out.println("--------------------------"); for(MethodDoc methodz :clazz.methods()){ System.out.println(methodz.name()); } } return true; } }
for (ClassDoc classDoc : root.classes()) { for (MethodDoc methodDoc : classDoc.methods()) { if (methodDoc.parameters() != null) { for (Parameter p : methodDoc.parameters()) { System.out.println(p.name()); } } } }
static boolean isStaticType(ClassDoc node) { boolean staticType = true; int methods = 0; for (MethodDoc m: node.methods()) { if (m.isConstructor()) { continue; } methods ++; if (!m.isStatic()) { staticType = false; break; } } return staticType && methods > 0; }
protected ClassDoc implementsMethodInIntfac(MethodDoc method, ClassDoc[] intfacs) { for (int i = 0; i < intfacs.length; i++) { MethodDoc[] methods = intfacs[i].methods(); if (methods.length > 0) { for (int j = 0; j < methods.length; j++) { if (methods[j].name().equals(method.name()) && methods[j].signature().equals(method.signature())) { return intfacs[i]; } } } } return null; }
protected ClassDoc implementsMethodInIntfac(MethodDoc method, ClassDoc[] intfacs) { for (int i = 0; i < intfacs.length; i++) { MethodDoc[] methods = intfacs[i].methods(); if (methods.length > 0) { for (int j = 0; j < methods.length; j++) { if (methods[j].name().equals(method.name()) && methods[j].signature().equals(method.signature())) { return intfacs[i]; } } } } return null; }
private MethodDoc[] getTestMethods(RootDoc root) { List<MethodDoc> result = new ArrayList<MethodDoc>(); for (ClassDoc c : root.classes()) { for(MethodDoc m : c.methods()) { if (isTest(m)) result.add(m); } } return result.toArray(new MethodDoc[0]); } // simplified test detection private static boolean isTest(MethodDoc m) { for(AnnotationDesc a: m.annotations()) { if (a.annotationType().name().equals("Test")) return true; } return false; }
/** * Put all the members(fields, methods and constructors) in the classdoc * to the indexmap. * * @param classdoc ClassDoc whose members will be added to the indexmap. */ protected void putMembersInIndexMap(ClassDoc classdoc) { adjustIndexMap(classdoc.fields()); adjustIndexMap(classdoc.methods()); adjustIndexMap(classdoc.constructors()); }
/** * Put all the members(fields, methods and constructors) in the classdoc * to the indexmap. * * @param classdoc ClassDoc whose members will be added to the indexmap. */ protected void putMembersInIndexMap(ClassDoc classdoc) { adjustIndexMap(classdoc.fields()); adjustIndexMap(classdoc.methods()); adjustIndexMap(classdoc.constructors()); }
public static ClassDocumentation fromClassDoc(ClassDoc classDoc) { ClassDocumentation cd = new ClassDocumentation(); cd.setComment(classDoc.commentText()); for (FieldDoc fieldDoc : classDoc.fields(false)) { cd.addField(fieldDoc); } for (MethodDoc methodDoc : classDoc.methods(false)) { cd.addMethod(methodDoc); } return cd; }