MessageVectorIterator Derived Type

type, public :: MessageVectorIterator


Inherits

type~~messagevectoriterator~~InheritsGraph type~messagevectoriterator MessageVectorIterator type~v_wrapper~7 v_Wrapper type~messagevectoriterator->type~v_wrapper~7 elements type~abstractmessage AbstractMessage type~v_wrapper~7->type~abstractmessage item

Type-Bound Procedures

generic, public :: at => v_iter_atDefault

  • private function v_iter_atDefault(this) result(ptr)

    Arguments

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

    Return Value class(AbstractMessage), pointer

generic, public :: at => v_iter_atOffset

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

    Arguments

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

    Return Value class(AbstractMessage), pointer

generic, public :: at => v_iter_atOffset_32

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

    Arguments

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

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

    Return Value class(AbstractMessage), pointer

procedure, public :: get => v_iter_get

  • private function v_iter_get(this) result(item)

    Arguments

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

    Return Value class(AbstractMessage), pointer

procedure, public :: next => v_iter_next

  • private subroutine v_iter_next(this)

    Arguments

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

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

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

    Arguments

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

    Return Value type(MessageVectorIterator)

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

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

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVectorIterator), intent(in) :: this
    integer, intent(in) :: n

    Return Value type(MessageVectorIterator)

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

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

    Arguments

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

    Return Value type(MessageVectorIterator)

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

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

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVectorIterator), intent(in) :: this
    integer, intent(in) :: n

    Return Value type(MessageVectorIterator)

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

  • private function v_not_iter_equal(this, other) result(ne)

    Arguments

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

    Return Value logical

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

  • private function v_iter_less(this, other) result(less)

    Arguments

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

    Return Value logical

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

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

    Arguments

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

    Return Value logical

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

  • private function v_iter_equal(this, other) result(eq)

    Arguments

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

    Return Value logical

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

  • private function v_iter_greater(this, other) result(gt)

    Arguments

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

    Return Value logical

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

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

    Arguments

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

    Return Value logical

procedure, public :: previous => v_iter_previous

  • private subroutine v_iter_previous(this)

    Arguments

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

procedure, public :: v_iter_add

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

    Arguments

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

    Return Value type(MessageVectorIterator)

procedure, public :: v_iter_add_32

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

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVectorIterator), intent(in) :: this
    integer, intent(in) :: n

    Return Value type(MessageVectorIterator)

procedure, public :: v_iter_atDefault

  • private function v_iter_atDefault(this) result(ptr)

    Arguments

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

    Return Value class(AbstractMessage), pointer

procedure, public :: v_iter_atOffset

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

    Arguments

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

    Return Value class(AbstractMessage), pointer

procedure, public :: v_iter_atOffset_32

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

    Arguments

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

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

    Return Value class(AbstractMessage), pointer

procedure, public :: v_iter_equal

  • private function v_iter_equal(this, other) result(eq)

    Arguments

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

    Return Value logical

procedure, public :: v_iter_greater

  • private function v_iter_greater(this, other) result(gt)

    Arguments

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

    Return Value logical

procedure, public :: v_iter_greater_equal

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

    Arguments

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

    Return Value logical

procedure, public :: v_iter_less

  • private function v_iter_less(this, other) result(less)

    Arguments

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

    Return Value logical

procedure, public :: v_iter_less_equal

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

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVectorIterator), intent(in) :: this
    class(MessageVectorIterator), 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(MessageVectorIterator), intent(in) :: this
    integer(kind=SIZE_KIND), intent(in) :: n

    Return Value type(MessageVectorIterator)

procedure, public :: v_iter_subtract_32

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

    Arguments

    Type IntentOptional Attributes Name
    class(MessageVectorIterator), intent(in) :: this
    integer, intent(in) :: n

    Return Value type(MessageVectorIterator)

procedure, public :: v_not_iter_equal

  • private function v_not_iter_equal(this, other) result(ne)

    Arguments

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

    Return Value logical