b64_decode_string_a Subroutine

private pure subroutine b64_decode_string_a(code, s)

Arguments

TypeIntentOptionalAttributesName
character, intent(in) :: code
character, intent(out) :: s(1:)

Calls

proc~~b64_decode_string_a~2~~CallsGraph proc~b64_decode_string_a~2 b64_decode_string_a interface~byte_size byte_size proc~b64_decode_string_a~2->interface~byte_size proc~decode_bits~2 decode_bits proc~b64_decode_string_a~2->proc~decode_bits~2 proc~byte_size_i1p byte_size_I1P interface~byte_size->proc~byte_size_i1p proc~byte_size_r4p byte_size_R4P interface~byte_size->proc~byte_size_r4p proc~byte_size_i4p byte_size_I4P interface~byte_size->proc~byte_size_i4p proc~byte_size_i8p byte_size_I8P interface~byte_size->proc~byte_size_i8p proc~byte_size_r8p byte_size_R8P interface~byte_size->proc~byte_size_r8p proc~byte_size_i2p byte_size_I2P interface~byte_size->proc~byte_size_i2p proc~byte_size_chr byte_size_chr interface~byte_size->proc~byte_size_chr

Called by

proc~~b64_decode_string_a~2~~CalledByGraph proc~b64_decode_string_a~2 b64_decode_string_a proc~b64_decode_up_a~2 b64_decode_up_a proc~b64_decode_up_a~2->proc~b64_decode_string_a~2 interface~b64_decode~2 b64_decode interface~b64_decode~2->proc~b64_decode_string_a~2 interface~b64_decode_up~2 b64_decode_up interface~b64_decode_up~2->proc~b64_decode_up_a~2 interface~b64_decode_up~2->proc~b64_decode_up_a~2 interface~b64_decode_up~2->interface~b64_decode_up~2 interface~b64_decode_up~2->interface~b64_decode_up~2

Contents

Source Code


Source Code

   pure subroutine b64_decode_string_a(code, s)
   !< Decode a base64 code into an array of strings.
   !<
   !<```fortran
   !< use befor64
   !< use penf
   !< character(5) :: array_s(1:2)
   !< call b64_decode(code='aGVsbG93b3JsZA==',s=array_s)
   !< print "(L1)", array_s(1)//array_s(2)=='helloworld'
   !<```
   !=> T <<<
   character(*), intent(in)  :: code    !< Encoded scalar.
   character(*), intent(out) :: s(1:)   !< String to be decoded.
   integer(I1P), allocatable :: nI1P(:) !< One byte integer array containing n.

   allocate(nI1P(1:byte_size(s(1))*size(s,dim=1))) ; nI1P = 0_I1P
   call decode_bits(code=code,bits=nI1P)
   s = transfer(nI1P,s)
   endsubroutine b64_decode_string_a