Author: celestin
Date: Tue Oct  2 05:14:38 2012
New Revision: 1392742

URL: http://svn.apache.org/viewvc?rev=1392742&view=rev
Log:
MATH-854: populated throws clause of FieldMatrix.

Modified:
    
commons/proper/math/trunk/src/main/java/org/apache/commons/math3/linear/FieldMatrix.java

Modified: 
commons/proper/math/trunk/src/main/java/org/apache/commons/math3/linear/FieldMatrix.java
URL: 
http://svn.apache.org/viewvc/commons/proper/math/trunk/src/main/java/org/apache/commons/math3/linear/FieldMatrix.java?rev=1392742&r1=1392741&r2=1392742&view=diff
==============================================================================
--- 
commons/proper/math/trunk/src/main/java/org/apache/commons/math3/linear/FieldMatrix.java
 (original)
+++ 
commons/proper/math/trunk/src/main/java/org/apache/commons/math3/linear/FieldMatrix.java
 Tue Oct  2 05:14:38 2012
@@ -27,7 +27,6 @@ import org.apache.commons.math3.exceptio
 import org.apache.commons.math3.exception.NullArgumentException;
 import org.apache.commons.math3.exception.NumberIsTooSmallException;
 import org.apache.commons.math3.exception.OutOfRangeException;
-import org.apache.commons.math3.exception.ZeroException;
 
 /**
  * Interface defining field-valued matrix with basic algebraic operations.
@@ -219,41 +218,44 @@ public interface FieldMatrix<T extends F
   throws MatrixDimensionMismatchException, NoDataException, 
NullArgumentException,
   OutOfRangeException;
 
-   /**
-    * Replace the submatrix starting at {@code (row, column)} using data in
-    * the input {@code subMatrix} array. Indexes are 0-based.
-    * <p>
-    * Example:<br>
-    * Starting with <pre>
-    * 1  2  3  4
-    * 5  6  7  8
-    * 9  0  1  2
-    * </pre>
-    * and <code>subMatrix = {{3, 4} {5,6}}</code>, invoking
-    * <code>setSubMatrix(subMatrix,1,1))</code> will result in <pre>
-    * 1  2  3  4
-    * 5  3  4  8
-    * 9  5  6  2
-    * </pre></p>
-    *
-    * @param subMatrix Array containing the submatrix replacement data.
-    * @param row Row coordinate of the top-left element to be replaced.
-    * @param column Column coordinate of the top-left element to be replaced.
-    * @throws MatrixDimensionMismatchException
-    * if {@code subMatrix} does not fit into this matrix from element in
-    * {@code (row, column)}.
-    * @throws org.apache.commons.math3.exception.ZeroException if a row or 
column
-    * of {@code subMatrix} is empty.
-    * @throws org.apache.commons.math3.exception.DimensionMismatchException
-    * if {@code subMatrix} is not rectangular (not all rows have the same
-    * length).
-    * @throws org.apache.commons.math3.exception.NullArgumentException
-    * if {@code subMatrix} is {@code null}.
-    * @since 2.0
-    */
+    /**
+     * Replace the submatrix starting at {@code (row, column)} using data in 
the
+     * input {@code subMatrix} array. Indexes are 0-based.
+     * <p>
+     * Example:<br>
+     * Starting with
+     *
+     * <pre>
+     * 1  2  3  4
+     * 5  6  7  8
+     * 9  0  1  2
+     * </pre>
+     *
+     * and <code>subMatrix = {{3, 4} {5,6}}</code>, invoking
+     * <code>setSubMatrix(subMatrix,1,1))</code> will result in
+     *
+     * <pre>
+     * 1  2  3  4
+     * 5  3  4  8
+     * 9  5  6  2
+     * </pre>
+     *
+     * </p>
+     *
+     * @param subMatrix Array containing the submatrix replacement data.
+     * @param row Row coordinate of the top-left element to be replaced.
+     * @param column Column coordinate of the top-left element to be replaced.
+     * @throws OutOfRangeException if {@code subMatrix} does not fit into this
+     * matrix from element in {@code (row, column)}.
+     * @throws NoDataException if a row or column of {@code subMatrix} is 
empty.
+     * @throws DimensionMismatchException if {@code subMatrix} is not
+     * rectangular (not all rows have the same length).
+     * @throws NullArgumentException if {@code subMatrix} is {@code null}.
+     * @since 2.0
+     */
     void setSubMatrix(T[][] subMatrix, int row, int column)
-    throws DimensionMismatchException, MatrixDimensionMismatchException,
-           NullArgumentException, ZeroException;
+        throws DimensionMismatchException, OutOfRangeException,
+        NullArgumentException, NoDataException;
 
    /**
     * Get the entries in row number {@code row}
@@ -554,6 +556,8 @@ public interface FieldMatrix<T extends F
      * @param startColumn Initial column index
      * @param endColumn Final column index
      * @throws OutOfRangeException if the indices are not valid.
+     * @throws NumberIsTooSmallException if {@code endRow < startRow} or
+     * {@code endColumn < startColumn}.
      * @see #walkInRowOrder(FieldMatrixChangingVisitor)
      * @see #walkInRowOrder(FieldMatrixPreservingVisitor)
      * @see #walkInRowOrder(FieldMatrixPreservingVisitor, int, int, int, int)
@@ -570,7 +574,7 @@ public interface FieldMatrix<T extends F
      */
     T walkInRowOrder(FieldMatrixChangingVisitor<T> visitor,
                      int startRow, int endRow, int startColumn, int endColumn)
-    throws OutOfRangeException;
+    throws OutOfRangeException, NumberIsTooSmallException;
 
     /**
      * Visit (but don't change) some matrix entries in row order.
@@ -583,6 +587,8 @@ public interface FieldMatrix<T extends F
      * @param startColumn Initial column index
      * @param endColumn Final column index
      * @throws OutOfRangeException if the indices are not valid.
+     * @throws NumberIsTooSmallException if {@code endRow < startRow} or
+     * {@code endColumn < startColumn}.
      * @see #walkInRowOrder(FieldMatrixChangingVisitor)
      * @see #walkInRowOrder(FieldMatrixPreservingVisitor)
      * @see #walkInRowOrder(FieldMatrixChangingVisitor, int, int, int, int)
@@ -599,7 +605,7 @@ public interface FieldMatrix<T extends F
      */
     T walkInRowOrder(FieldMatrixPreservingVisitor<T> visitor,
                      int startRow, int endRow, int startColumn, int endColumn)
-    throws OutOfRangeException;
+    throws OutOfRangeException, NumberIsTooSmallException;
 
     /**
      * Visit (and possibly change) all matrix entries in column order.


Reply via email to