[ 
https://issues.apache.org/jira/browse/MATH-646?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13085303#comment-13085303
 ] 

Sébastien Brisard commented on MATH-646:
----------------------------------------

{quote}
Rather than an issue of large source file, the issue is whether this class 
should part of the public API.
Personally I think that it shouldn't
{quote}
I agree, that's the reason why I suggested we make this class private. No 
problem, I'll make it a nested, anonymous class within the 
{{unmodifiableRealVector()}} method.
{quote}
I'm suspicious that it is possible to call "setIndex" on the supposedly 
unmodifiable entry. Maybe that it is harmless?
{quote}
I have checked that calling {{setIndex}} is indeed harmless while iterating 
over the vector in question. However, in my view, this method sould not be 
visible.

Thanks for your detailed review of the code. I'll have these errors corrected 
by the end of this week, if that's OK with you.

> 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


Reply via email to