Skip to content

Commit

Permalink
Closes mozilla-mobile#7: Add support for Enum.
Browse files Browse the repository at this point in the history
This also fixes a bug where Enum would be added twice to the api.txt file.
  • Loading branch information
agi committed Nov 6, 2018
1 parent 4ff685a commit 30889f6
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 5 deletions.
10 changes: 5 additions & 5 deletions apidoc-plugin/src/main/java/org/mozilla/doclet/ApiDoclet.java
Original file line number Diff line number Diff line change
Expand Up @@ -122,9 +122,6 @@ private void writePackage(PackageDoc packageDoc, Writer writer) {
sorted(packageDoc.allClasses()).forEach(
c -> writeClass(c, writer.indent()));

sorted(packageDoc.enums()).forEach(
c -> writeClass(c, writer.indent()));

writer.line("}");
writer.newLine();
}
Expand All @@ -145,8 +142,10 @@ private String toLine(ClassDoc classDoc) {
String classLine = annotationFragment(classDoc);
classLine += classDoc.modifiers() + " ";

if (!classDoc.isInterface()) {
if (!classDoc.isInterface() && !classDoc.isEnum()) {
classLine += "class ";
} else if (classDoc.isEnum()) {
classLine += "enum ";
}

classLine += classDoc.name();
Expand All @@ -160,7 +159,8 @@ private String toLine(ClassDoc classDoc) {

if (classDoc.superclass() != null
// Ignore trivial superclass
&& !classDoc.superclass().toString().equals("java.lang.Object")) {
&& !classDoc.superclass().toString().equals("java.lang.Object")
&& !classDoc.isEnum()) {
classLine += "extends " + classDoc.superclass() + " ";
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -105,4 +105,9 @@ public static class TestTypeBoundVariable<T extends java.lang.Runnable> {
public static interface TestInterfaceTypeVariable<T> {
public void testTypeVariableMethod(T arg);
}

public static enum TestEnum {
TestEnumConstantOne,
TestEnumConstantTwo,
}
}
7 changes: 7 additions & 0 deletions apidoc-plugin/src/test/resources/expected-doclet-output.txt
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,13 @@ package org.mozilla.test {
ctor public TestAbstractClass();
}

public static final enum TestClass.TestEnum {
method public static org.mozilla.test.TestClass.TestEnum[] values();
method public static org.mozilla.test.TestClass.TestEnum valueOf(java.lang.String);
enum_constant public static final org.mozilla.test.TestClass.TestEnum TestEnumConstantOne;
enum_constant public static final org.mozilla.test.TestClass.TestEnum TestEnumConstantTwo;
}

public static class TestClass.TestExtends extends org.mozilla.test.TestClass.TestInterfaceImpl {
ctor public TestExtends();
}
Expand Down

0 comments on commit 30889f6

Please sign in to comment.