BaseProfilerIterator Derived Type

type, public :: BaseProfilerIterator


Inherits

type~~baseprofileriterator~~InheritsGraph type~baseprofileriterator BaseProfilerIterator type~abstractmeternodeiterator AbstractMeterNodeIterator type~baseprofileriterator->type~abstractmeternodeiterator node_iterator

Type-Bound Procedures

procedure, public :: equals

  • private function equals(this, other)

    Arguments

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

    Return Value logical

procedure, public :: get_meter

  • private function get_meter(this) result(meter)

    Arguments

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

    Return Value class(AdvancedMeter), pointer

procedure, public :: get_name

  • private function get_name(this) result(name)

    Arguments

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

    Return Value character(len=:), pointer

procedure, public :: get_node

  • private function get_node(this) result(node)

    Arguments

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

    Return Value class(MeterNode), pointer

procedure, public :: next => next_profiler

  • private subroutine next_profiler(this)

    Arguments

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

procedure, public :: not_equals

  • private function not_equals(this, other)

    Arguments

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

    Return Value logical

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

  • private function not_equals(this, other)

    Arguments

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

    Return Value logical

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

  • private function equals(this, other)

    Arguments

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

    Return Value logical

Source Code

   type :: BaseProfilerIterator
      private
      class (AbstractMeterNodeIterator), allocatable :: node_iterator
   contains
      procedure :: get_node
      procedure :: get_meter
      procedure :: get_name
      procedure :: next => next_profiler
      procedure :: equals
      procedure :: not_equals
      generic :: operator(==) => equals
      generic :: operator(/=) => not_equals
   end type BaseProfilerIterator