BitArray new design
Dmitry Olshansky
dmitry.olsh at gmail.com
Thu Jan 10 12:11:36 PST 2013
10-Jan-2013 01:47, Era Scarecrow пишет:
> On Wednesday, 9 January 2013 at 21:16:37 UTC, Era Scarecrow wrote:
>> Hmm as I'm thinking about it more, a mixin for BitString may be better..
>
Overall direction is good (I mean separation of ranges/containers). I'll
post more comments once I think it through.The minor detail is that
BitString sounds like a individual container whereas it's a "binary view
of packed bools".
> I'm having troubles trying to understand why this won't work. Anyone
> clarify?
>
>
>
> mixin template BitString()
> {
> struct BitString {
> size_t opIndex(int i) {
> //Error: this for bulkRaw needs to be type BitArray not type BitString
> return bulkRaw[i];
> }
> }
> }
You want to mixin a definition of a inner struct BitString into each bit
array?
Or include all of functions of BitString to be mixed into BitArray?
If the latter then:
mixin template BitString()
{
size_t opIndex(int i) {
return bulkRaw[i];
}
//....
}
i.e. no struct it's just a template.
> struct BitArray {
> mixin BitString;
> size_t[] bulkRaw;
> BitString ba;
> }
>
--
Dmitry Olshansky
More information about the Digitalmars-d-learn
mailing list