destroy Subroutine

private pure subroutine destroy(self)

Destroy bar.

Arguments

Type IntentOptional AttributesName
class(bar_object), intent(inout) :: self

Bar.


Source Code


Source Code

   pure subroutine destroy(self)
   !< Destroy bar.
   class(bar_object), intent(inout) :: self !< Bar.
   integer(I4P)                     :: s    !< Counter.

   call self%prefix%destroy
   call self%suffix%destroy
   call self%bracket_left%destroy
   call self%bracket_right%destroy
   call self%empty_char%destroy
   call self%filled_char%destroy
   call self%progress_percent%destroy
   call self%progress_speed%destroy
   call self%scale_bar%destroy
   call self%date_time%destroy
   if (allocated(self%spinner)) then
      do s=1, size(self%spinner, dim=1)
         call self%spinner(s)%destroy
      enddo
      deallocate (self%spinner)
   endif
   self%width = 32
   self%min_value = 0._R8P
   self%max_value = 1._R8P
   self%frequency = 1_I4P
   self%add_scale_bar = .false.
   self%add_progress_percent = .false.
   self%add_progress_speed = .false.
   self%add_date_time = .false.
   self%is_stdout_locked_ = .false.
   endsubroutine destroy