RegridderVectorIterator Derived Type

type, public :: RegridderVectorIterator


Inherits

type~~regriddervectoriterator~~InheritsGraph type~regriddervectoriterator RegridderVectorIterator type~v_wrapper~14 v_Wrapper type~regriddervectoriterator->type~v_wrapper~14 elements type~abstractregridder AbstractRegridder type~v_wrapper~14->type~abstractregridder item type~regridderspec RegridderSpec type~abstractregridder->type~regridderspec spec ESMF_Grid ESMF_Grid type~regridderspec->ESMF_Grid grid_in, grid_out

Type-Bound Procedures

generic, public :: at => v_iter_atDefault

generic, public :: at => v_iter_atOffset

  • private function v_iter_atOffset(this, i) result(ptr)

    Arguments

    Type IntentOptional Attributes Name
    class(RegridderVectorIterator), intent(in) :: this
    integer(kind=SIZE_KIND), intent(in) :: i

    Return Value class(AbstractRegridder), pointer

generic, public :: at => v_iter_atOffset_32

  • private function v_iter_atOffset_32(this, i) result(ptr)

    Arguments

    Type IntentOptional Attributes Name
    class(RegridderVectorIterator), intent(in) :: this
    integer, intent(in) :: i

    $ ptr => this%at(int(i,kind=SIZE_KIND))

    Return Value class(AbstractRegridder), pointer

procedure, public :: get => v_iter_get

procedure, public :: next => v_iter_next

  • private subroutine v_iter_next(this)

    Arguments

    Type IntentOptional Attributes Name
    class(RegridderVectorIterator), intent(inout) :: this

generic, public :: operator(+) => v_iter_add

  • private function v_iter_add(this, n) result(newIter)

    Arguments

    Type IntentOptional Attributes Name
    class(RegridderVectorIterator), intent(in) :: this
    integer(kind=SIZE_KIND), intent(in) :: n

    Return Value type(RegridderVectorIterator)

generic, public :: operator(+) => v_iter_add_32

generic, public :: operator(-) => v_iter_subtract

  • private function v_iter_subtract(this, n) result(newIter)

    Arguments

    Type IntentOptional Attributes Name
    class(RegridderVectorIterator), intent(in) :: this
    integer(kind=SIZE_KIND), intent(in) :: n

    Return Value type(RegridderVectorIterator)

generic, public :: operator(-) => v_iter_subtract_32

generic, public :: operator(/=) => v_not_iter_equal

generic, public :: operator(<) => v_iter_less

generic, public :: operator(<=) => v_iter_less_equal

  • private function v_iter_less_equal(this, other) result(le)

    Arguments

    Type IntentOptional Attributes Name
    class(RegridderVectorIterator), intent(in) :: this
    class(RegridderVectorIterator), intent(in) :: other

    Return Value logical

generic, public :: operator(==) => v_iter_equal

generic, public :: operator(>) => v_iter_greater

generic, public :: operator(>=) => v_iter_greater_equal

  • private function v_iter_greater_equal(this, other) result(gte)

    Arguments

    Type IntentOptional Attributes Name
    class(RegridderVectorIterator), intent(in) :: this
    class(RegridderVectorIterator), intent(in) :: other

    Return Value logical

procedure, public :: previous => v_iter_previous

  • private subroutine v_iter_previous(this)

    Arguments

    Type IntentOptional Attributes Name
    class(RegridderVectorIterator), intent(inout) :: this

procedure, public :: v_iter_add

  • private function v_iter_add(this, n) result(newIter)

    Arguments

    Type IntentOptional Attributes Name
    class(RegridderVectorIterator), intent(in) :: this
    integer(kind=SIZE_KIND), intent(in) :: n

    Return Value type(RegridderVectorIterator)

procedure, public :: v_iter_add_32

procedure, public :: v_iter_atDefault

procedure, public :: v_iter_atOffset

  • private function v_iter_atOffset(this, i) result(ptr)

    Arguments

    Type IntentOptional Attributes Name
    class(RegridderVectorIterator), intent(in) :: this
    integer(kind=SIZE_KIND), intent(in) :: i

    Return Value class(AbstractRegridder), pointer

procedure, public :: v_iter_atOffset_32

  • private function v_iter_atOffset_32(this, i) result(ptr)

    Arguments

    Type IntentOptional Attributes Name
    class(RegridderVectorIterator), intent(in) :: this
    integer, intent(in) :: i

    $ ptr => this%at(int(i,kind=SIZE_KIND))

    Return Value class(AbstractRegridder), pointer

procedure, public :: v_iter_equal

procedure, public :: v_iter_greater

procedure, public :: v_iter_greater_equal

  • private function v_iter_greater_equal(this, other) result(gte)

    Arguments

    Type IntentOptional Attributes Name
    class(RegridderVectorIterator), intent(in) :: this
    class(RegridderVectorIterator), intent(in) :: other

    Return Value logical

procedure, public :: v_iter_less

procedure, public :: v_iter_less_equal

  • private function v_iter_less_equal(this, other) result(le)

    Arguments

    Type IntentOptional Attributes Name
    class(RegridderVectorIterator), intent(in) :: this
    class(RegridderVectorIterator), intent(in) :: other

    Return Value logical

procedure, public :: v_iter_subtract

  • private function v_iter_subtract(this, n) result(newIter)

    Arguments

    Type IntentOptional Attributes Name
    class(RegridderVectorIterator), intent(in) :: this
    integer(kind=SIZE_KIND), intent(in) :: n

    Return Value type(RegridderVectorIterator)

procedure, public :: v_iter_subtract_32

procedure, public :: v_not_iter_equal