Project

General

Profile

private recursive function is_equal(this, that) result(equal)

Arguments

Type IntentOptional AttributesName
class(vector_ref), intent(in) :: this
class(*), intent(in) :: that

Return Value logical

Calls

proc~~is_equal~~CallsGraph proc~is_equal is_equal object_equal object_equal proc~is_equal->object_equal

Variables

TypeVisibility AttributesNameInitial
integer, public :: i

Source Code

    recursive logical function is_equal(this, that) result(equal)
        class(vector_ref), intent(in) :: this
        class(*), intent(in) :: that
        integer :: i
        equal = .true.
        select type(that)
            class is (vector_ref)
                if(this%current_size /= that%current_size) then
                    equal = .false.
                    return
                end if
                do i = 1, this%current_size
                    if(.not. object_equal(this%items(i)%stuff, &
                                          that%items(i)%stuff)) then
                        equal = .false.
                        return
                    end if
                end do
            class default
                equal = .false.
        end select
    end function is_equal


© 2016
self was developed by
Documentation generated by FORD