b64_decode_I8_a Subroutine

private pure subroutine b64_decode_I8_a(code, n)

Decode a base64 code into an array numbers (I8P).

 use befor64
 use penf
 integer(I8P) :: array_I8(1:4)
 call b64_decode(code='FwAAAAAAAABEAQAAAAAAABBwhAEAAAAAAgAAAAAAAAA=',n=array_I8)
 print "(L1)", str(n=array_I8)==str(n=[23_I8P,324_I8P,25456656_I8P,2_I8P])

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: code

Encoded array.

integer(kind=I8P), intent(out) :: n(1:)

Array of numbers to be decoded.

Calls

proc~~b64_decode_i8_a~~CallsGraph proc~b64_decode_i8_a b64_decode_I8_a proc~decode_bits decode_bits proc~b64_decode_i8_a->proc~decode_bits
Help

Called By

proc~~b64_decode_i8_a~~CalledByGraph proc~b64_decode_i8_a b64_decode_I8_a proc~b64_decode_up_a b64_decode_up_a proc~b64_decode_up_a->proc~b64_decode_i8_a interface~b64_decode_up b64_decode_up interface~b64_decode_up->proc~b64_decode_up_a interface~b64_decode_up->proc~b64_decode_up_a interface~b64_decode_up->interface~b64_decode_up interface~b64_decode b64_decode interface~b64_decode->proc~b64_decode_i8_a 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
Help

Source Code


Source Code

   pure subroutine b64_decode_I8_a(code, n)
   !< Decode a base64 code into an array numbers (I8P).
   !<
   !<```fortran
   !< use befor64
   !< use penf
   !< integer(I8P) :: array_I8(1:4)
   !< call b64_decode(code='FwAAAAAAAABEAQAAAAAAABBwhAEAAAAAAgAAAAAAAAA=',n=array_I8)
   !< print "(L1)", str(n=array_I8)==str(n=[23_I8P,324_I8P,25456656_I8P,2_I8P])
   !<```
   !=> T <<<
   character(*), intent(in)  :: code    !< Encoded array.
   integer(I8P), intent(out) :: n(1:)   !< Array of numbers to be decoded.
   integer(I1P), allocatable :: nI1P(:) !< One byte integer array containing n.

   allocate(nI1P(1:size(n,dim=1)*BYI8P)) ; nI1P = 0_I1P
   call decode_bits(code=code,bits=nI1P)
   n = transfer(nI1P,n)
   endsubroutine b64_decode_I8_a