Memory optimizations for Skylark.

--
MOS_MIGRATED_REVID=106182161
diff --git a/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java b/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java
index aaa0c7d..b43af74 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/RuleClass.java
@@ -894,7 +894,7 @@
    * A (unordered) mapping from attribute names to small integers indexing into
    * the {@code attributes} array.
    */
-  private final Map<String, Integer> attributeIndex = new HashMap<>();
+  private final Map<String, Integer> attributeIndex;
 
   /**
    *  All attributes of this rule class (including inherited ones) ordered by
@@ -1070,6 +1070,7 @@
 
     // create the index:
     int index = 0;
+    attributeIndex = new HashMap<>(attributes.length);
     for (Attribute attribute : attributes) {
       attributeIndex.put(attribute.getName(), index++);
     }