BitArray/BitFields - Review
Jonathan M Davis
jmdavisProg at gmx.com
Sat Jul 28 14:30:09 PDT 2012
On Saturday, July 28, 2012 23:23:30 Era Scarecrow wrote:
> On Saturday, 28 July 2012 at 21:07:31 UTC, Jonathan M Davis wrote:
> > I would point out that while hasSlicing doesn't currently check
> > for it, if opSlice doesn't return a type which is assignable to
> > the original range, it won't work in a lot of Phobos functions.
> > I keep meaning to bring that up for discussion in the main
> > newsgroup. I'd argue that hasSlicing really be changed
>
> Which is one of the main reasons I am hesitant to have a
> separate range struct (of BitSlice)... Hmmm maybe we should keep
> it here for a little while, and talk it over a bit more.
Well, it seems that my comment was somewhat misplaced in that BitArray isn't a
range but a container. My comment was directed at opSlice on ranges. Container
types should return whatever range type is appropriate. That will usually be a
struct of some variety. I'd have to study BitArray and your changes to
determine what the appropriate type was here, but it sounds like you were
talking about duping the contents with opSlice, which would be highly
irregular. Normally, ranges over containers are light wrappers which can
iterate through and potentially alter the elements in the container, and
duping up an array as the range type doesn't work like that. But depending on
what BitArray is doing exactly, it might be appropriate. I don't know.
- Jonathan M Davis
More information about the Digitalmars-d-learn
mailing list