www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 6641] New: RefAppender!(T[]) should be OutputRange.

reply d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=6641

           Summary: RefAppender!(T[]) should be OutputRange.
           Product: D
           Version: D2
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Phobos
        AssignedTo: nobody puremagic.com
        ReportedBy: zan77137 nifty.com



This code doesn't work!

--------------------------
import std.array, std.range;

static assert(isOutputRange!(Appender!(ubyte[]), ubyte));
static assert(isOutputRange!(RefAppender!(ubyte[]), ubyte));

void main() {}
--------------------------
$ dmd -run main
main.d(4): Error: static assert  (isOutputRange!(RefAppender!(ubyte[]),ubyte))
i
s false

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Sep 10 2011
next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=6641


David Simcha <dsimcha yahoo.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dsimcha yahoo.com



I think RefAppender should just be deprecated/scheduled for deprecation.  It
was a short term backwards compatibility hack from a long time ago.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Sep 10 2011
prev sibling next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=6641





 I think RefAppender should just be deprecated/scheduled for deprecation.  It
 was a short term backwards compatibility hack from a long time ago.
Hmm... I understand it as follows: - It is the class which it is easy to be used in the wrong way. (User must not add elements to the array while appending with RefAppender) - The improper usage is easier to become the factor of the bug. - Therefore it is deprecated. Is this right? And, I think that it is necessary to satisfy at least one of the following conditions to make RefAppender deprecated: - Appender does not allow the similar improper usage. - Appender is as fast as the RefAppender. - Appender's memory efficiency is as well as RefAppender's. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Sep 10 2011
prev sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=6641


Rob Jacques <sandford jhu.edu> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |sandford jhu.edu



https://github.com/D-Programming-Language/phobos/pull/502

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Mar 19 2012