I replace std.base64 with this module in two days.<br><br><div><br><div><div>Masahiro</div><div><br><div class="gmail_quote">2010年10月21日6:36 Masahiro Nakagawa <span dir="ltr">&lt;<a href="mailto:repeatedly@gmail.com">repeatedly@gmail.com</a>&gt;</span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="im">On Thu, 14 Oct 2010 17:21:38 +0900, Daniel Murphy &lt;<a href="mailto:yebblies@gmail.com" target="_blank">yebblies@gmail.com</a>&gt; wrote:<br>

<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Thu, Oct 14, 2010 at 4:59 AM, Masahiro Nakagawa &lt;<a href="mailto:repeatedly@gmail.com" target="_blank">repeatedly@gmail.com</a>&gt;wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I wait no-caching implementation. I think Range should not have useless<br>
state.<br>
In addition, current implementation seems to be still more complex than<br>
necessary.<br>
<br>
<br>
<br>
</blockquote>
I thought you might say that.<br>
<a href="http://yebblies.com/rangebase64nocache.d" target="_blank">http://yebblies.com/rangebase64nocache.d</a><br>
These ranges only read the bits that they actually need off the input, only<br>
converting one output item per popFront. &nbsp;I don&#39;t consider this a better<br>
solution. &nbsp;I haven&#39;t adapted length to work with this version, but I will if<br>
this implementation is actually going to be used.<br>
</blockquote>
<br></div>
I merged Daniel&#39;s code and encode(decode) can take InputRange that has length property.<div class="im"><br>
<br>
<a href="http://bitbucket.org/repeatedly/scrap/src/tip/base64.d" target="_blank">http://bitbucket.org/repeatedly/scrap/src/tip/base64.d</a><br>
<br></div>
Please check the code.<br><font color="#888888">
<br>
<br>
Masahiro</font></blockquote></div>
</div></div></div>