[#BloombergLP-bdlde-Base64Decoder-convert-05]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlde.adoc[bdlde]::xref:BloombergLP/bdlde/Base64Decoder.adoc[Base64Decoder]::convert
:relfileprefix: ../../../
:mrdocs:

`convert` overloads

== Synopses

Declared in `&lt;bdlde&lowbar;base64decoder&period;h&gt;`

Decode Base64 characters from `&lsqb;begin, end)&rsqb;` into `out`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class OUTPUT&lowbar;ITERATOR,
    class INPUT&lowbar;ITERATOR&gt;
int
xref:BloombergLP/bdlde/Base64Decoder/convert-08.adoc[convert](
    OUTPUT&lowbar;ITERATOR out,
    INPUT&lowbar;ITERATOR begin,
    INPUT&lowbar;ITERATOR end);
----

[.small]#xref:BloombergLP/bdlde/Base64Decoder/convert-08.adoc[_» more&period;&period;&period;_]#

Decode Base64 characters from `&lsqb;begin, end)&rsqb;` into `out` with limits&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class OUTPUT&lowbar;ITERATOR,
    class INPUT&lowbar;ITERATOR&gt;
int
xref:BloombergLP/bdlde/Base64Decoder/convert-0e.adoc[convert](
    OUTPUT&lowbar;ITERATOR out,
    int* numOut,
    int* numIn,
    INPUT&lowbar;ITERATOR begin,
    INPUT&lowbar;ITERATOR end,
    int maxNumOut = &hyphen;1);
----

[.small]#xref:BloombergLP/bdlde/Base64Decoder/convert-0e.adoc[_» more&period;&period;&period;_]#

Decode Base64 input for `char &ast;` &sol; `const char &ast;` iterators&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;&gt;
int
xref:BloombergLP/bdlde/Base64Decoder/convert-0c.adoc[convert&lt;char*, char const*&gt;](
    char* out,
    int* numOut,
    int* numIn,
    char const* begin,
    char const* end,
    int maxNumOut = &hyphen;1);
----

[.small]#xref:BloombergLP/bdlde/Base64Decoder/convert-0c.adoc[_» more&period;&period;&period;_]#

Decode Base64 input for `unsigned char &ast;` iterators&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;&gt;
int
xref:BloombergLP/bdlde/Base64Decoder/convert-01.adoc[convert&lt;unsigned char*, unsigned char const*&gt;](
    unsigned char* out,
    int* numOut,
    int* numIn,
    unsigned char const* begin,
    unsigned char const* end,
    int maxNumOut = &hyphen;1);
----

[.small]#xref:BloombergLP/bdlde/Base64Decoder/convert-01.adoc[_» more&period;&period;&period;_]#

== Return Value

* non&hyphen;negative value on success, &hyphen;1 on input error, and &hyphen;2 if `endConvert` has already been called without an intervening `resetState`
* non&hyphen;negative value on success (positive count of retained output bytes if `maxNumOut` was reached), &hyphen;1 on input error, and &hyphen;2 if `endConvert` has already been called without an intervening `resetState`

== Parameters

[cols="1,4"]
|===
| Name| Description
| *out*
| destination for decoded output bytes
| *begin*
| beginning of the Base64 input range
| *end*
| end of the Base64 input range (exclusive)
| *numOut*
| if non&hyphen;null, receives the number of bytes written
| *numIn*
| if non&hyphen;null, receives the number of input bytes consumed
| *maxNumOut*
| maximum bytes to write&semi; negative means no limit
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
