You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@joshua.apache.org by mj...@apache.org on 2016/08/21 17:42:29 UTC

[20/22] incubator-joshua git commit: JOSHUA-291 - static analysis based code improvements on corpus package

JOSHUA-291 - static analysis based code improvements on corpus package


Project: http://git-wip-us.apache.org/repos/asf/incubator-joshua/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-joshua/commit/356b173d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-joshua/tree/356b173d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-joshua/diff/356b173d

Branch: refs/heads/JOSHUA-284
Commit: 356b173d4fa3f0efa4ea53809e46c9e04c8c1ca5
Parents: 233818d
Author: Tommaso Teofili <to...@apache.org>
Authored: Sun Aug 7 19:27:27 2016 +0200
Committer: Tommaso Teofili <to...@apache.org>
Committed: Thu Aug 18 09:57:05 2016 +0200

----------------------------------------------------------------------
 .../org/apache/joshua/corpus/BasicPhrase.java   |  2 +-
 .../apache/joshua/corpus/ContiguousPhrase.java  |  8 +--
 .../java/org/apache/joshua/corpus/Phrase.java   |  2 +-
 .../java/org/apache/joshua/corpus/Span.java     |  6 +--
 .../org/apache/joshua/corpus/SymbolTable.java   |  2 +-
 .../org/apache/joshua/corpus/Vocabulary.java    | 10 ++--
 .../joshua/corpus/syntax/ArraySyntaxTree.java   | 51 ++++++++++----------
 .../apache/joshua/corpus/syntax/SyntaxTree.java | 10 ++--
 8 files changed, 44 insertions(+), 47 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-joshua/blob/356b173d/src/main/java/org/apache/joshua/corpus/BasicPhrase.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/joshua/corpus/BasicPhrase.java b/src/main/java/org/apache/joshua/corpus/BasicPhrase.java
index 6c50458..8ab8add 100644
--- a/src/main/java/org/apache/joshua/corpus/BasicPhrase.java
+++ b/src/main/java/org/apache/joshua/corpus/BasicPhrase.java
@@ -58,7 +58,7 @@ public class BasicPhrase extends AbstractPhrase {
 
   /* See Javadoc for Phrase interface. */
   public ArrayList<Phrase> getSubPhrases(int maxLength) {
-    ArrayList<Phrase> phrases = new ArrayList<Phrase>();
+    ArrayList<Phrase> phrases = new ArrayList<>();
     int len = this.size();
     for (int n = 1; n <= maxLength; n++)
       for (int i = 0; i <= len - n; i++)

http://git-wip-us.apache.org/repos/asf/incubator-joshua/blob/356b173d/src/main/java/org/apache/joshua/corpus/ContiguousPhrase.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/joshua/corpus/ContiguousPhrase.java b/src/main/java/org/apache/joshua/corpus/ContiguousPhrase.java
index af669b7..9c76ce2 100644
--- a/src/main/java/org/apache/joshua/corpus/ContiguousPhrase.java
+++ b/src/main/java/org/apache/joshua/corpus/ContiguousPhrase.java
@@ -31,9 +31,9 @@ import java.util.List;
  */
 public class ContiguousPhrase extends AbstractPhrase {
 
-  protected int startIndex;
-  protected int endIndex;
-  protected Corpus corpusArray;
+  protected final int startIndex;
+  protected final int endIndex;
+  protected final Corpus corpusArray;
 
   public ContiguousPhrase(int startIndex, int endIndex, Corpus corpusArray) {
     this.startIndex = startIndex;
@@ -94,7 +94,7 @@ public class ContiguousPhrase extends AbstractPhrase {
    */
   public List<Phrase> getSubPhrases(int maxLength) {
     if (maxLength > size()) return getSubPhrases(size());
-    List<Phrase> phrases = new ArrayList<Phrase>();
+    List<Phrase> phrases = new ArrayList<>();
     for (int i = 0; i < size(); i++) {
       for (int j = i + 1; (j <= size()) && (j - i <= maxLength); j++) {
         Phrase subPhrase = subPhrase(i, j);

http://git-wip-us.apache.org/repos/asf/incubator-joshua/blob/356b173d/src/main/java/org/apache/joshua/corpus/Phrase.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/joshua/corpus/Phrase.java b/src/main/java/org/apache/joshua/corpus/Phrase.java
index 5a06a8b..41e8c63 100644
--- a/src/main/java/org/apache/joshua/corpus/Phrase.java
+++ b/src/main/java/org/apache/joshua/corpus/Phrase.java
@@ -34,7 +34,7 @@ public interface Phrase extends Comparable<Phrase> {
    * 
    * @return an int[] corresponding to the ID of each word in the phrase
    */
-  public int[] getWordIDs();
+  int[] getWordIDs();
 
   /**
    * Returns the integer word id of the word at the specified position.

http://git-wip-us.apache.org/repos/asf/incubator-joshua/blob/356b173d/src/main/java/org/apache/joshua/corpus/Span.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/joshua/corpus/Span.java b/src/main/java/org/apache/joshua/corpus/Span.java
index 414fe95..26e00aa 100644
--- a/src/main/java/org/apache/joshua/corpus/Span.java
+++ b/src/main/java/org/apache/joshua/corpus/Span.java
@@ -31,10 +31,10 @@ import java.util.NoSuchElementException;
 public class Span implements Iterable<Integer>, Comparable<Span> {
 
   /** Inclusive starting index of this span. */
-  public int start;
+  public final int start;
 
   /** Exclusive ending index of this span. */
-  public int end;
+  public final int end;
 
 
   /**
@@ -75,7 +75,7 @@ public class Span implements Iterable<Integer>, Comparable<Span> {
    */
   public List<Span> getSubSpans(int max) {
     int spanSize = size();
-    ArrayList<Span> result = new ArrayList<Span>(max * spanSize);
+    ArrayList<Span> result = new ArrayList<>(max * spanSize);
     for (int len = max; len > 0; len--) {
       for (int i = start; i < end - len + 1; i++) {
         result.add(new Span(i, i + len));

http://git-wip-us.apache.org/repos/asf/incubator-joshua/blob/356b173d/src/main/java/org/apache/joshua/corpus/SymbolTable.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/joshua/corpus/SymbolTable.java b/src/main/java/org/apache/joshua/corpus/SymbolTable.java
index 274e8b9..07a2760 100644
--- a/src/main/java/org/apache/joshua/corpus/SymbolTable.java
+++ b/src/main/java/org/apache/joshua/corpus/SymbolTable.java
@@ -116,7 +116,7 @@ public interface SymbolTable {
    * then the value returned must be {@link #X}. 
    *  
    * Otherwise, the value returned must be a negative number  
-   * whose value is less than {@link X}. 
+   * whose value is less than {@link #X}.
    *  
    * @param nonterminal Nonterminal symbol 
    * @return a unique integer identifier for the nonterminal 

http://git-wip-us.apache.org/repos/asf/incubator-joshua/blob/356b173d/src/main/java/org/apache/joshua/corpus/Vocabulary.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/joshua/corpus/Vocabulary.java b/src/main/java/org/apache/joshua/corpus/Vocabulary.java
index 24644ee..0a26822 100644
--- a/src/main/java/org/apache/joshua/corpus/Vocabulary.java
+++ b/src/main/java/org/apache/joshua/corpus/Vocabulary.java
@@ -262,8 +262,8 @@ public class Vocabulary implements Externalizable {
   public static void clear() {
     long lock_stamp = lock.writeLock();
     try {
-      idToString = new ArrayList<String>();
-      stringToId = new HashMap<String, Integer>();
+      idToString = new ArrayList<>();
+      stringToId = new HashMap<>();
 
       idToString.add(UNKNOWN_ID, UNKNOWN_WORD);
       stringToId.put(UNKNOWN_WORD, UNKNOWN_ID);
@@ -291,11 +291,7 @@ public class Vocabulary implements Externalizable {
 
   @Override
   public boolean equals(Object o) {
-    if(getClass() == o.getClass()) {
-      return true;
-    } else {
-      return false;
-    }
+    return getClass() == o.getClass();
   }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-joshua/blob/356b173d/src/main/java/org/apache/joshua/corpus/syntax/ArraySyntaxTree.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/joshua/corpus/syntax/ArraySyntaxTree.java b/src/main/java/org/apache/joshua/corpus/syntax/ArraySyntaxTree.java
index f374279..10efdc6 100644
--- a/src/main/java/org/apache/joshua/corpus/syntax/ArraySyntaxTree.java
+++ b/src/main/java/org/apache/joshua/corpus/syntax/ArraySyntaxTree.java
@@ -46,7 +46,7 @@ public class ArraySyntaxTree implements SyntaxTree, Externalizable {
 
   private ArrayList<Integer> terminals;
 
-  private boolean useBackwardLattice = true;
+  private final boolean useBackwardLattice = true;
 
   private static final int MAX_CONCATENATIONS = 3;
   private static final int MAX_LABELS = 100;
@@ -72,7 +72,7 @@ public class ArraySyntaxTree implements SyntaxTree, Externalizable {
    * lattice.
    */
   public Collection<Integer> getConstituentLabels(int from, int to) {
-    Collection<Integer> labels = new HashSet<Integer>();
+    Collection<Integer> labels = new HashSet<>();
     int span_length = to - from;
     for (int i = forwardIndex.get(from); i < forwardIndex.get(from + 1); i += 2) {
       int current_span = forwardLattice.get(i + 1);
@@ -86,7 +86,7 @@ public class ArraySyntaxTree implements SyntaxTree, Externalizable {
 
   public int getOneConstituent(int from, int to) {
     int spanLength = to - from;
-    Stack<Integer> stack = new Stack<Integer>();
+    Stack<Integer> stack = new Stack<>();
 
     for (int i = forwardIndex.get(from); i < forwardIndex.get(from + 1); i += 2) {
       int currentSpan = forwardLattice.get(i + 1);
@@ -168,12 +168,12 @@ public class ArraySyntaxTree implements SyntaxTree, Externalizable {
    * the total number of labels returned is bounded by MAX_LABELS.
    */
   public Collection<Integer> getConcatenatedLabels(int from, int to) {
-    Collection<Integer> labels = new HashSet<Integer>();
+    Collection<Integer> labels = new HashSet<>();
 
     int span_length = to - from;
-    Stack<Integer> nt_stack = new Stack<Integer>();
-    Stack<Integer> pos_stack = new Stack<Integer>();
-    Stack<Integer> depth_stack = new Stack<Integer>();
+    Stack<Integer> nt_stack = new Stack<>();
+    Stack<Integer> pos_stack = new Stack<>();
+    Stack<Integer> depth_stack = new Stack<>();
 
     // seed stacks (reverse order to save on iterations, longer spans)
     for (int i = forwardIndex.get(from + 1) - 2; i >= forwardIndex.get(from); i -= 2) {
@@ -217,14 +217,14 @@ public class ArraySyntaxTree implements SyntaxTree, Externalizable {
 
   // TODO: can pre-comupute all that in top-down fashion.
   public Collection<Integer> getCcgLabels(int from, int to) {
-    Collection<Integer> labels = new HashSet<Integer>();
+    Collection<Integer> labels = new HashSet<>();
 
     int span_length = to - from;
     // TODO: range checks on the to and from
 
     boolean is_prefix = (forwardLattice.get(forwardIndex.get(from) + 1) > span_length);
     if (is_prefix) {
-      Map<Integer, Set<Integer>> main_constituents = new HashMap<Integer, Set<Integer>>();
+      Map<Integer, Set<Integer>> main_constituents = new HashMap<>();
       // find missing to the right
       for (int i = forwardIndex.get(from); i < forwardIndex.get(from + 1); i += 2) {
         int current_span = forwardLattice.get(i + 1);
@@ -233,7 +233,7 @@ public class ArraySyntaxTree implements SyntaxTree, Externalizable {
         else {
           int end_pos = forwardLattice.get(i + 1) + from;
           Set<Integer> nts = main_constituents.get(end_pos);
-          if (nts == null) main_constituents.put(end_pos, new HashSet<Integer>());
+          if (nts == null) main_constituents.put(end_pos, new HashSet<>());
           main_constituents.get(end_pos).add(forwardLattice.get(i));
         }
       }
@@ -255,7 +255,7 @@ public class ArraySyntaxTree implements SyntaxTree, Externalizable {
         // check longest span ending in to..
         if (backwardLattice.get(to_end - 1) <= span_length) return labels;
 
-        Map<Integer, Set<Integer>> main_constituents = new HashMap<Integer, Set<Integer>>();
+        Map<Integer, Set<Integer>> main_constituents = new HashMap<>();
         // find missing to the left
         for (int i = to_end - 2; i >= backwardIndex.get(to); i -= 2) {
           int current_span = backwardLattice.get(i + 1);
@@ -264,7 +264,7 @@ public class ArraySyntaxTree implements SyntaxTree, Externalizable {
           else {
             int start_pos = to - backwardLattice.get(i + 1);
             Set<Integer> nts = main_constituents.get(start_pos);
-            if (nts == null) main_constituents.put(start_pos, new HashSet<Integer>());
+            if (nts == null) main_constituents.put(start_pos, new HashSet<>());
             main_constituents.get(start_pos).add(backwardLattice.get(i));
           }
         }
@@ -326,40 +326,41 @@ public class ArraySyntaxTree implements SyntaxTree, Externalizable {
   public String toString() {
     StringBuilder sb = new StringBuilder();
     for (int i = 0; i < forwardIndex.size(); i++)
-      sb.append("FI[" + i + "] =\t" + forwardIndex.get(i) + "\n");
+      sb.append("FI[").append(i).append("] =\t").append(forwardIndex.get(i)).append("\n");
     sb.append("\n");
     for (int i = 0; i < forwardLattice.size(); i += 2)
-      sb.append("F[" + i + "] =\t" + Vocabulary.word(forwardLattice.get(i)) + " , "
-          + forwardLattice.get(i + 1) + "\n");
+      sb.append("F[").append(i).append("] =\t").append(Vocabulary.word(forwardLattice.get(i)))
+          .append(" , ").append(forwardLattice.get(i + 1)).append("\n");
 
     sb.append("\n");
     for (int i = 0; i < terminals.size(); i += 1)
-      sb.append("T[" + i + "] =\t" + Vocabulary.word(terminals.get(i)) + " , 1 \n");
+      sb.append("T[").append(i).append("] =\t").append(Vocabulary.word(terminals.get(i)))
+          .append(" , 1 \n");
 
     if (this.useBackwardLattice) {
       sb.append("\n");
       for (int i = 0; i < backwardIndex.size(); i++)
-        sb.append("BI[" + i + "] =\t" + backwardIndex.get(i) + "\n");
+        sb.append("BI[").append(i).append("] =\t").append(backwardIndex.get(i)).append("\n");
       sb.append("\n");
       for (int i = 0; i < backwardLattice.size(); i += 2)
-        sb.append("B[" + i + "] =\t" + Vocabulary.word(backwardLattice.get(i)) + " , "
-            + backwardLattice.get(i + 1) + "\n");
+        sb.append("B[").append(i).append("] =\t").append(Vocabulary.word(backwardLattice.get(i)))
+            .append(" , ").append(backwardLattice.get(i + 1)).append("\n");
     }
     return sb.toString();
   }
 
 
   private void initialize() {
-    forwardIndex = new ArrayList<Integer>();
+    forwardIndex = new ArrayList<>();
     forwardIndex.add(0);
-    forwardLattice = new ArrayList<Integer>();
+    forwardLattice = new ArrayList<>();
     if (this.useBackwardLattice) {
-      backwardIndex = new ArrayList<Integer>();
+      backwardIndex = new ArrayList<>();
       backwardIndex.add(0);
-      backwardLattice = new ArrayList<Integer>();
+      backwardLattice = new ArrayList<>();
     }
 
-    terminals = new ArrayList<Integer>();
+    terminals = new ArrayList<>();
   }
 
 
@@ -369,7 +370,7 @@ public class ArraySyntaxTree implements SyntaxTree, Externalizable {
 
     boolean next_nt = false;
     int current_id = 0;
-    Stack<Integer> stack = new Stack<Integer>();
+    Stack<Integer> stack = new Stack<>();
 
     for (String token : tokens) {
       if ("(".equals(token)) {

http://git-wip-us.apache.org/repos/asf/incubator-joshua/blob/356b173d/src/main/java/org/apache/joshua/corpus/syntax/SyntaxTree.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/joshua/corpus/syntax/SyntaxTree.java b/src/main/java/org/apache/joshua/corpus/syntax/SyntaxTree.java
index 6bb4c0b..f96cd2c 100644
--- a/src/main/java/org/apache/joshua/corpus/syntax/SyntaxTree.java
+++ b/src/main/java/org/apache/joshua/corpus/syntax/SyntaxTree.java
@@ -22,13 +22,13 @@ import java.util.Collection;
 
 public interface SyntaxTree {
 
-  public Collection<Integer> getConstituentLabels(int from, int to);
+  Collection<Integer> getConstituentLabels(int from, int to);
 
-  public Collection<Integer> getConcatenatedLabels(int from, int to);
+  Collection<Integer> getConcatenatedLabels(int from, int to);
 
-  public Collection<Integer> getCcgLabels(int from, int to);
+  Collection<Integer> getCcgLabels(int from, int to);
 
-  public int[] getTerminals();
+  int[] getTerminals();
 
-  public int[] getTerminals(int from, int to);
+  int[] getTerminals(int from, int to);
 }