You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Gilles (JIRA)" <ji...@apache.org> on 2016/02/04 02:33:39 UTC

[jira] [Resolved] (MATH-1307) Create a base class for all RNGs

     [ https://issues.apache.org/jira/browse/MATH-1307?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gilles resolved MATH-1307.
--------------------------
       Resolution: Won't Fix
    Fix Version/s:     (was: 4.0)

> Create a base class for all RNGs
> --------------------------------
>
>                 Key: MATH-1307
>                 URL: https://issues.apache.org/jira/browse/MATH-1307
>             Project: Commons Math
>          Issue Type: Improvement
>            Reporter: Gilles
>            Assignee: Gilles
>            Priority: Minor
>              Labels: api, inheritance
>         Attachments: BaseRandomGenerator.java, BaseRandomGeneratorFloatGenerationPerformanceTest.java
>
>
> I proposed to create a base class which the existing abstract classes {{AbstractRandomGenerator}} and {{BitsStreamGenerator}} will extend.
> This would allow to define {{nextBytes(byte[])}} at the base class level.
> The code for that method is almost identical in the two hierarchies: they only differ in a call to either {{nextInt()}} or {{next(32)}} respectively; the latter is however the same as the former, in disguise, and is not subject to change given the type of return value.
> As a corollary, the new base class can be the unique place where to add utilities such as the one proposed in MATH-1306.
> *Update:* {{AbstractRandomGenerator}} and {{BitsStreamGenerator}} are both obsoleted by the class proposed in this report.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)