StringCompositeMap Derived Type

type, public :: StringCompositeMap


Inherits

type~~stringcompositemap~~InheritsGraph type~stringcompositemap StringCompositeMap type~set2~3 set2 type~stringcompositemap->type~set2~3 tree type~ivector~2 iVector type~set2~3->type~ivector~2 parents, lefts, rights, heights type~tvector~2 tVector type~set2~3->type~tvector~2 items type~stringcompositepair StringCompositePair type~tvector~2->type~stringcompositepair elements type~abstractcomposite AbstractComposite type~stringcompositepair->type~abstractcomposite value

Inherited by

type~~stringcompositemap~~InheritedByGraph type~stringcompositemap StringCompositeMap type~concretecomposite ConcreteComposite type~concretecomposite->type~stringcompositemap children type~concretecomposite->type~concretecomposite parent type~stringcompositemapiterator StringCompositeMapIterator type~stringcompositemapiterator->type~stringcompositemap reference type~compositecomponent CompositeComponent type~compositecomponent->type~concretecomposite composite type~baseframeworkcomponent BaseFrameworkComponent type~baseframeworkcomponent->type~compositecomponent type~completecomponent CompleteComponent type~completecomponent->type~compositecomponent type~maplgenericcomponent MaplGenericComponent type~maplgenericcomponent->type~baseframeworkcomponent

Constructor

public interface StringCompositeMap

  • private function m_new_map_empty() result(m)

    Arguments

    None

    Return Value type(StringCompositeMap)

  • private function m_new_map_from_pair_array(pairs) result(m)

    Arguments

    Type IntentOptional Attributes Name
    type(StringCompositePair), intent(in) :: pairs(:)

    Return Value type(StringCompositeMap)


Type-Bound Procedures

procedure, public :: at => m_at

  • private function m_at(this, key) result(res)

    Arguments

    Type IntentOptional Attributes Name
    class(StringCompositeMap), intent(in), target :: this
    character(len=*), intent(in) :: key

    Return Value class(AbstractComposite), pointer

procedure, public :: begin => m_begin

procedure, public :: clear => m_clear

  • private subroutine m_clear(this)

    Arguments

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

procedure, public :: count => m_count

  • private function m_count(this, key) result(count)

    Arguments

    Type IntentOptional Attributes Name
    class(StringCompositeMap), intent(in) :: this
    character(len=*), intent(in) :: key

    Return Value integer(kind=SIZE_KIND)

procedure, public :: deepCopy => m_deepCopy

  • private subroutine m_deepCopy(this, original)

    Arguments

    Type IntentOptional Attributes Name
    class(StringCompositeMap), intent(out) :: this
    class(StringCompositeMap), intent(in) :: original

procedure, public :: empty => m_empty

  • private function m_empty(this) result(isEmpty)

    Arguments

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

    Return Value logical

procedure, public :: end => m_end

generic, public :: erase => erase_one

procedure, public :: erase_one => m_erase_one

procedure, public :: find => m_find

  • private function m_find(this, key) result(iter)

    Arguments

    Type IntentOptional Attributes Name
    class(StringCompositeMap), intent(in), target :: this
    character(len=*), intent(in) :: key

    Return Value type(StringCompositeMapIterator)

procedure, public :: get => m_get

  • private function m_get(this, key, value) result(res)

    Arguments

    Type IntentOptional Attributes Name
    class(StringCompositeMap), intent(in), target :: this
    character(len=*) :: key
    class(AbstractComposite), intent(out), pointer :: value

    Return Value logical

generic, public :: insert => insert_key_value

  • private subroutine m_insert_key_value(this, key, value)

    Arguments

    Type IntentOptional Attributes Name
    class(StringCompositeMap), intent(inout) :: this
    character(len=*), intent(in) :: key
    class(AbstractComposite), intent(in) :: value

generic, public :: insert => insert_pair

procedure, public :: insert_key_value => m_insert_key_value

  • private subroutine m_insert_key_value(this, key, value)

    Arguments

    Type IntentOptional Attributes Name
    class(StringCompositeMap), intent(inout) :: this
    character(len=*), intent(in) :: key
    class(AbstractComposite), intent(in) :: value

procedure, public :: insert_pair => m_insert_pair

procedure, public, nopass :: max_size => m_max_size

  • private function m_max_size() result(max_size)

    Arguments

    None

    Return Value integer(kind=SIZE_KIND)

procedure, public :: of => m_of

  • private function m_of(this, key) result(res)

    Arguments

    Type IntentOptional Attributes Name
    class(StringCompositeMap), intent(inout), target :: this
    character(len=*), intent(in) :: key

    Return Value class(AbstractComposite), pointer

procedure, public :: set => m_set

  • private subroutine m_set(this, key, value)

    Arguments

    Type IntentOptional Attributes Name
    class(StringCompositeMap), intent(inout) :: this
    character(len=*), intent(in) :: key
    class(AbstractComposite), intent(in) :: value

procedure, public :: size => m_size

  • private function m_size(this) result(size)

    Arguments

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

    Return Value integer(kind=SIZE_kind)