Save memory by re-using empty TagInfo (and subclasses) arrays.
Arrays of TagInfo (and subclasses) often tend to be empty, as many
members simply won't have any of the relevant tags.
Re-using empty arrays saves potentially a dozen or more megabytes
for large projects.
Also some minor performance tweaks the Javadoc comment parsing.
Change-Id: Iffaddd3b59a4f8183f11efd6e2680aad95633ade
diff --git a/src/com/google/doclava/SeeTagInfo.java b/src/com/google/doclava/SeeTagInfo.java
index 34e6aed..9f38655 100644
--- a/src/com/google/doclava/SeeTagInfo.java
+++ b/src/com/google/doclava/SeeTagInfo.java
@@ -19,6 +19,12 @@
import com.google.clearsilver.jsilver.data.Data;
public class SeeTagInfo extends TagInfo {
+ public static final SeeTagInfo[] EMPTY_ARRAY = new SeeTagInfo[0];
+
+ public static SeeTagInfo[] getArray(int size) {
+ return size == 0 ? EMPTY_ARRAY : new SeeTagInfo[size];
+ }
+
private ContainerInfo mBase;
LinkReference mLink;