[ https://issues.apache.org/jira/browse/MATH-646?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13085329#comment-13085329 ]
Gilles commented on MATH-646: ----------------------------- There must be one public (or with package access) class in each Java source file. But you can have additional ones (without access qualifier), not necessarily nested. Thus, in "AbstractRealVector.java": {code} public class AbstractRealVector implements RealVector { // ... public static RealVector unmodifiableRealVector(RealVector v) { return new UnmodifiableRealVector(v); } } class UnmodifiableRealVector implements RealVector { // ... } {code} This makes for slightly less cluttered code. > Unmodifiable views of RealVector > -------------------------------- > > Key: MATH-646 > URL: https://issues.apache.org/jira/browse/MATH-646 > Project: Commons Math > Issue Type: New Feature > Affects Versions: 3.0 > Reporter: Sébastien Brisard > Labels: linear, vector > Attachments: MATH-646.patch > > > The issue has been discussed on the [mailing > list|http://mail-archives.apache.org/mod_mbox/commons-dev/201108.mbox/<CAGRH7HqxUb2y1HmFt9VJ-kxsXwipk_MdO0D=rnuazmgpnot...@mail.gmail.com>]. > Please find attached a proposal for a new class {{UnmodifiableRealVector}}. > I chose not to nest it in {{AbstractRealVector}} because it would make the > corresponding file huge. Therefore, {{UnmodifiableRealVector}} is {{final}}. > Maybe you'd like it to be {{private}} as well? A static method is provided in > {{AbstractRealVector}} to build an {{UnmodifiableRealVector}} from any > {{RealVector}}. > Tests are also provided. Since iterating through different implementations of > {{RealVector}} is actually different, a test is provided for > {{UnmodifiableRealVector}} built on {{ArrayRealVector}} and > {{OpenMapRealVector}}. These tests both derive from the same abstract test > class. Hope everything works fine. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira