volatile_doctest Program

Uses

  • program~~volatile_doctest~464~~UsesGraph program~volatile_doctest~464 volatile_doctest module~stringifor_string_t~2 stringifor_string_t program~volatile_doctest~464->module~stringifor_string_t~2 iso_fortran_env iso_fortran_env module~stringifor_string_t~2->iso_fortran_env module~befor64~3 befor64 module~stringifor_string_t~2->module~befor64~3 module~face~3 face module~stringifor_string_t~2->module~face~3 module~penf~6 penf module~stringifor_string_t~2->module~penf~6 module~befor64~3->module~penf~6 module~befor64_pack_data_m befor64_pack_data_m module~befor64~3->module~befor64_pack_data_m module~face~3->iso_fortran_env module~penf_allocatable_memory~2 penf_allocatable_memory module~penf~6->module~penf_allocatable_memory~2 module~penf_b_size~2 penf_b_size module~penf~6->module~penf_b_size~2 module~penf_global_parameters_variables~3 penf_global_parameters_variables module~penf~6->module~penf_global_parameters_variables~3 module~penf_stringify~4 penf_stringify module~penf~6->module~penf_stringify~4 module~befor64_pack_data_m->module~penf~6 module~penf_allocatable_memory~2->iso_fortran_env module~penf_allocatable_memory~2->module~penf_global_parameters_variables~3 module~penf_allocatable_memory~2->module~penf_stringify~4 module~penf_b_size~2->module~penf_global_parameters_variables~3 module~penf_stringify~4->iso_fortran_env module~penf_stringify~4->module~penf_b_size~2 module~penf_stringify~4->module~penf_global_parameters_variables~3

Calls

program~~volatile_doctest~464~~CallsGraph program~volatile_doctest~464 volatile_doctest none~glob string%glob program~volatile_doctest~464->none~glob proc~tempname string%tempname program~volatile_doctest~464->proc~tempname proc~glob_character string%glob_character none~glob->proc~glob_character proc~glob_string string%glob_string none~glob->proc~glob_string proc~glob_character->none~glob proc~chars string%chars proc~glob_character->proc~chars proc~glob_string->proc~tempname proc~read_file string%read_file proc~glob_string->proc~read_file proc~split string%split proc~glob_string->proc~split proc~read_file->proc~chars proc~read_lines string%read_lines proc~read_file->proc~read_lines proc~upper~2 string%upper proc~read_file->proc~upper~2 proc~partition string%partition proc~split->proc~partition proc~unique string%unique proc~split->proc~unique proc~read_line string%read_line proc~read_lines->proc~read_line proc~replace string%replace proc~unique->proc~replace proc~read_line->proc~chars proc~read_line->proc~upper~2 proc~replace_one_occurrence string%replace_one_occurrence proc~replace->proc~replace_one_occurrence

Variables

Type Attributes Name Initial
type(string) :: astring
character(len=:), allocatable :: alist_chr(:)
integer, parameter :: Nf = 5
character(len=14) :: files(1:Nf)
integer :: file_unit
integer :: f
integer :: ff
logical :: test_passed

Source Code

program volatile_doctest
use stringifor_string_t
 type(string) :: astring
 character(len=:), allocatable :: alist_chr(:)
 integer, parameter :: Nf=5
 character(14) :: files(1:Nf)
 integer :: file_unit
 integer :: f
 integer :: ff
 logical :: test_passed
 do f=1, Nf
 files(f) = astring%tempname(prefix='foo-')
 open(newunit=file_unit, file=files(f))
 write(file_unit, *)f
 close(unit=file_unit)
 enddo
 call astring%glob(pattern='foo-*', list=alist_chr)
 do f=1, Nf
 open(newunit=file_unit, file=files(f))
 close(unit=file_unit, status='delete')
 enddo
 test_passed = .false.
 outer_chr: do f=1, size(alist_chr, dim=1)
 do ff=1, Nf
 test_passed = alist_chr(f) == files(ff)
 if (test_passed) cycle outer_chr
 enddo
 enddo outer_chr
 print '(L1)', test_passed
endprogram volatile_doctest