Initialize bar.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(bar_object), | intent(inout) | :: | lhs | Left hand side. |
||
| type(bar_object), | intent(in) | :: | rhs | Right hand side. |
pure subroutine assign_bar(lhs, rhs)
!< Initialize bar.
class(bar_object), intent(inout) :: lhs !< Left hand side.
type(bar_object), intent(in) :: rhs !< Right hand side.
integer(I4P) :: s !< Counter.
lhs%prefix = rhs%prefix
lhs%suffix = rhs%suffix
lhs%bracket_left = rhs%bracket_left
lhs%bracket_right = rhs%bracket_right
lhs%empty_char = rhs%empty_char
lhs%filled_char = rhs%filled_char
lhs%progress_percent = rhs%progress_percent
lhs%progress_speed = rhs%progress_speed
lhs%scale_bar = rhs%scale_bar
lhs%date_time = rhs%date_time
if (allocated(lhs%spinner)) then
do s=1, size(lhs%spinner, dim=1)
call lhs%spinner(s)%destroy
enddo
deallocate (lhs%spinner)
endif
if (allocated(rhs%spinner)) then
allocate(lhs%spinner(1:size(rhs%spinner, dim=1)))
do s=1, size(rhs%spinner, dim=1)
lhs%spinner(s) = rhs%spinner(s)
enddo
endif
lhs%width = rhs%width
lhs%min_value = rhs%min_value
lhs%max_value = rhs%max_value
lhs%frequency = rhs%frequency
lhs%add_scale_bar = rhs%add_scale_bar
lhs%add_progress_percent = rhs%add_progress_percent
lhs%add_progress_speed = rhs%add_progress_speed
lhs%add_date_time = rhs%add_date_time
lhs%is_stdout_locked_ = rhs%is_stdout_locked_
endsubroutine assign_bar