public interface b64_decode
Decode numbers (integer and real) from base64.
This is an interface for decoding integer and real numbers of any kinds from a base64 string. This interface can decode both
scalar and array.
Note Before start to decode anything the library must be initialized. The procedure b64_init
must be called at first. The
global variable is_b64_initialized
can be used to check the status of the initialization.
For a practical example see the autotest
procedure.
real(R8P):: decoded ! scalar to be decoded
...
call b64_decode(code='AAAAAAAA8D8=',n=decoded)
integer(I8P):: decoded(1:4) ! array to be decoded
...
call b64_decode(code='FwAAAAAAAABEAQAAAAAAABBwhAEAAAAAAgAAAAAAAAA=',n=decoded)
Note If you want to decode heterogenous data (e.g. integer and real numbers), you must use the auxiliary pack_data
procedure.
Warning The decoding of array of strings is admitted only if each string of the array has the same length.
Calls
interface~~b64_decode~~CallsGraph
interface~b64_decode
b64_decode
proc~b64_decode_r4_a
b64_decode_R4_a
interface~b64_decode->proc~b64_decode_r4_a
proc~b64_decode_i2_a
b64_decode_I2_a
interface~b64_decode->proc~b64_decode_i2_a
proc~b64_decode_i1
b64_decode_I1
interface~b64_decode->proc~b64_decode_i1
proc~b64_decode_r8
b64_decode_R8
interface~b64_decode->proc~b64_decode_r8
proc~b64_decode_string
b64_decode_string
interface~b64_decode->proc~b64_decode_string
proc~b64_decode_i8
b64_decode_I8
interface~b64_decode->proc~b64_decode_i8
proc~b64_decode_i2
b64_decode_I2
interface~b64_decode->proc~b64_decode_i2
proc~b64_decode_i8_a
b64_decode_I8_a
interface~b64_decode->proc~b64_decode_i8_a
proc~b64_decode_r8_a
b64_decode_R8_a
interface~b64_decode->proc~b64_decode_r8_a
proc~b64_decode_i4
b64_decode_I4
interface~b64_decode->proc~b64_decode_i4
proc~b64_decode_r4
b64_decode_R4
interface~b64_decode->proc~b64_decode_r4
proc~b64_decode_string_a
b64_decode_string_a
interface~b64_decode->proc~b64_decode_string_a
proc~b64_decode_i4_a
b64_decode_I4_a
interface~b64_decode->proc~b64_decode_i4_a
proc~b64_decode_i1_a
b64_decode_I1_a
interface~b64_decode->proc~b64_decode_i1_a
proc~decode_bits
decode_bits
proc~b64_decode_r4_a->proc~decode_bits
proc~b64_decode_i2_a->proc~decode_bits
proc~b64_decode_i1->proc~decode_bits
proc~b64_decode_r8->proc~decode_bits
proc~b64_decode_string->proc~decode_bits
byte_size
byte_size
proc~b64_decode_string->byte_size
proc~b64_decode_i8->proc~decode_bits
proc~b64_decode_i2->proc~decode_bits
proc~b64_decode_i8_a->proc~decode_bits
proc~b64_decode_r8_a->proc~decode_bits
proc~b64_decode_i4->proc~decode_bits
proc~b64_decode_r4->proc~decode_bits
proc~b64_decode_string_a->proc~decode_bits
proc~b64_decode_string_a->byte_size
proc~b64_decode_i4_a->proc~decode_bits
proc~b64_decode_i1_a->proc~decode_bits
Nodes of different colours represent the following:
Graph Key
Subroutine
Subroutine
Function
Function
Interface
Interface
Unknown Procedure Type
Unknown Procedure Type
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Called By
interface~~b64_decode~~CalledByGraph
interface~b64_decode
b64_decode
program~volatile_doctest~19
volatile_doctest
program~volatile_doctest~19->interface~b64_decode
program~volatile_doctest~29
volatile_doctest
program~volatile_doctest~29->interface~b64_decode
program~volatile_doctest~31
volatile_doctest
program~volatile_doctest~31->interface~b64_decode
program~volatile_doctest~24
volatile_doctest
program~volatile_doctest~24->interface~b64_decode
program~volatile_doctest~15
volatile_doctest
program~volatile_doctest~15->interface~b64_decode
program~volatile_doctest~21
volatile_doctest
program~volatile_doctest~21->interface~b64_decode
program~volatile_doctest~20
volatile_doctest
program~volatile_doctest~20->interface~b64_decode
program~volatile_doctest~28
volatile_doctest
program~volatile_doctest~28->interface~b64_decode
program~volatile_doctest~30
volatile_doctest
program~volatile_doctest~30->interface~b64_decode
program~volatile_doctest~17
volatile_doctest
program~volatile_doctest~17->interface~b64_decode
program~volatile_doctest~25
volatile_doctest
program~volatile_doctest~25->interface~b64_decode
program~volatile_doctest~16
volatile_doctest
program~volatile_doctest~16->interface~b64_decode
program~volatile_doctest~22
volatile_doctest
program~volatile_doctest~22->interface~b64_decode
program~volatile_doctest~18
volatile_doctest
program~volatile_doctest~18->interface~b64_decode
program~volatile_doctest~26
volatile_doctest
program~volatile_doctest~26->interface~b64_decode
program~volatile_doctest~27
volatile_doctest
program~volatile_doctest~27->interface~b64_decode
Nodes of different colours represent the following:
Graph Key
Subroutine
Subroutine
Function
Function
Interface
Interface
Unknown Procedure Type
Unknown Procedure Type
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Module Procedures
Decode a base64 code into a scalar number (R8P).
Arguments
Type
Intent Optional
Attributes Name
character(len=*),
intent(in)
::
code Encoded scalar.
real(kind=R8P),
intent(out)
::
n Number to be decoded.
Decode a base64 code into an array numbers (R8P).
Arguments
Type
Intent Optional
Attributes Name
character(len=*),
intent(in)
::
code Encoded array.
real(kind=R8P),
intent(out)
::
n (1:)Array of numbers to be decoded.
Decode a base64 code into a scalar number (R4P).
Arguments
Type
Intent Optional
Attributes Name
character(len=*),
intent(in)
::
code Encoded scalar.
real(kind=R4P),
intent(out)
::
n Number to be decoded.
Decode a base64 code into an array numbers (R4P).
Arguments
Type
Intent Optional
Attributes Name
character(len=*),
intent(in)
::
code Encoded array.
real(kind=R4P),
intent(out)
::
n (1:)Array of numbers to be decoded.
Decode a base64 code into a scalar number (I8P).
Arguments
Type
Intent Optional
Attributes Name
character(len=*),
intent(in)
::
code Encoded scalar.
integer(kind=I8P),
intent(out)
::
n Number to be decoded.
Decode a base64 code into an array numbers (I8P).
Arguments
Type
Intent Optional
Attributes Name
character(len=*),
intent(in)
::
code Encoded array.
integer(kind=I8P),
intent(out)
::
n (1:)Array of numbers to be decoded.
Decode a base64 code into a scalar number (I4P).
Arguments
Type
Intent Optional
Attributes Name
character(len=*),
intent(in)
::
code Encoded scalar.
integer(kind=I4P),
intent(out)
::
n Number to be decoded.
Decode a base64 code into an array numbers (I4P).
Arguments
Type
Intent Optional
Attributes Name
character(len=*),
intent(in)
::
code Encoded array.
integer(kind=I4P),
intent(out)
::
n (1:)Array of numbers to be decoded.
Decode a base64 code into a scalar number (I2P).
Arguments
Type
Intent Optional
Attributes Name
character(len=*),
intent(in)
::
code Encoded scalar.
integer(kind=I2P),
intent(out)
::
n Number to be decoded.
Decode a base64 code into an array numbers (I2P).
Arguments
Type
Intent Optional
Attributes Name
character(len=*),
intent(in)
::
code Encoded array.
integer(kind=I2P),
intent(out)
::
n (1:)Array of numbers to be decoded.
Decode a base64 code into a scalar number (I1P).
Arguments
Type
Intent Optional
Attributes Name
character(len=*),
intent(in)
::
code Encoded scalar.
integer(kind=I1P),
intent(out)
::
n Number to be decoded.
Decode a base64 code into an array numbers (I1P).
Arguments
Type
Intent Optional
Attributes Name
character(len=*),
intent(in)
::
code Encoded array.
integer(kind=I1P),
intent(out)
::
n (1:)Array of numbers to be decoded.
Decode a base64 code into a scalar string.
Arguments
Type
Intent Optional
Attributes Name
character(len=*),
intent(in)
::
code Encoded scalar.
character(len=*),
intent(out)
::
s String to be decoded.
Decode a base64 code into an array of strings.
Arguments
Type
Intent Optional
Attributes Name
character(len=*),
intent(in)
::
code Encoded scalar.
character(len=*),
intent(out)
::
s (1:)String to be decoded.