[Mono-devel-list] Re: CodeDom in Compiler.cs
andrews at mainsoft.com
Tue Apr 5 12:10:35 EDT 2005
Sébastien Pouliot wrote:
> Hello Andrew,
> IIRC Convert.FromBase64String is (or was) using
Yes, it is. But it has a comment, saying "the BASE64 convert methods are
using the Base64 converting methods from
System.Security.Cryptography.FromBase64Transform. Should be changed to a
stand-alone class Base64Encoder & Base64Decoder"
The waste here is to perform additional pass to convert string containing
base64 characters into byte . The whole convert can be done in a
single pass, in principle.
> However there was a few difference between them (non bas64 characters
> I would _guess_ that using directly the transform was
> better (performance wise) as it didn't need to call
> (with it own extra logic) and the Normalize method on the string (which
> probably did the reverse of the extra stuff Convert.FromBase64String was
It looks that Normalizer was unnecessary anyway. All it does is changes
between different kinds of whitespace, and whitespace is anyway ignored
The whole problem is that functionality needed here is exactly covered
by Convert.FromBase64String function. But because this function was not
implemented well, David changed the code to use S.S.C. I think, we
should fix FromBase64String, so every place that uses this function will
benefit. grep finds 62 places like that, and 19 places with
> I'm curious what's the problem of including
No, there is no problem with that.
> As anyway Convert.FromBase64String won't work if S.S.C isn't available?
We have this function implemented in Java.
More information about the Mono-devel-list