StringUnlimitedEntityMap Derived Type

type, public :: StringUnlimitedEntityMap


Inherits

type~~stringunlimitedentitymap~~InheritsGraph type~stringunlimitedentitymap StringUnlimitedEntityMap type~set2~8 set2 type~stringunlimitedentitymap->type~set2~8 tree type~ivector~7 iVector type~set2~8->type~ivector~7 parents, lefts, rights, heights type~tvector~7 tVector type~set2~8->type~tvector~7 items type~pair~7 pair type~tvector~7->type~pair~7 elements type~unlimitedentity UnlimitedEntity type~pair~7->type~unlimitedentity value

Inherited by

type~~stringunlimitedentitymap~~InheritedByGraph type~stringunlimitedentitymap StringUnlimitedEntityMap type~stringunlimitedentitymapiterator StringUnlimitedEntityMapIterator type~stringunlimitedentitymapiterator->type~stringunlimitedentitymap reference

Constructor

public interface StringUnlimitedEntityMap

  • private function m_new_map_empty() result(m)

    Arguments

    None

    Return Value type(StringUnlimitedEntityMap)

  • private function m_new_map_from_pair_array(pairs) result(m)

    Arguments

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

    Return Value type(StringUnlimitedEntityMap)


Type-Bound Procedures

procedure, public :: at => m_at

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

    Arguments

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

    Return Value type(UnlimitedEntity), pointer

procedure, public :: begin => m_begin

procedure, public :: clear => m_clear

  • private subroutine m_clear(this)

    Arguments

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

procedure, public :: count => m_count

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

    Arguments

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

    Return Value integer(kind=SIZE_KIND)

procedure, public :: deepCopy => m_deepCopy

procedure, public :: empty => m_empty

  • private function m_empty(this) result(isEmpty)

    Arguments

    Type IntentOptional Attributes Name
    class(StringUnlimitedEntityMap), 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

procedure, public :: get => m_get

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

    Arguments

    Type IntentOptional Attributes Name
    class(StringUnlimitedEntityMap), intent(in), target :: this
    character(len=*) :: key
    type(UnlimitedEntity), 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(StringUnlimitedEntityMap), intent(inout) :: this
    character(len=*), intent(in) :: key
    type(UnlimitedEntity), intent(in) :: value

generic, public :: insert => insert_pair

  • private subroutine m_insert_pair(this, p)

    Arguments

    Type IntentOptional Attributes Name
    class(StringUnlimitedEntityMap), intent(inout) :: this
    type(pair), intent(in) :: p

procedure, public :: insert_key_value => m_insert_key_value

  • private subroutine m_insert_key_value(this, key, value)

    Arguments

    Type IntentOptional Attributes Name
    class(StringUnlimitedEntityMap), intent(inout) :: this
    character(len=*), intent(in) :: key
    type(UnlimitedEntity), intent(in) :: value

procedure, public :: insert_pair => m_insert_pair

  • private subroutine m_insert_pair(this, p)

    Arguments

    Type IntentOptional Attributes Name
    class(StringUnlimitedEntityMap), intent(inout) :: this
    type(pair), intent(in) :: p

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(StringUnlimitedEntityMap), intent(inout), target :: this
    character(len=*), intent(in) :: key

    Return Value type(UnlimitedEntity), pointer

procedure, public :: set => m_set

  • private subroutine m_set(this, key, value)

    Arguments

    Type IntentOptional Attributes Name
    class(StringUnlimitedEntityMap), intent(inout) :: this
    character(len=*), intent(in) :: key
    type(UnlimitedEntity), intent(in) :: value

procedure, public :: size => m_size

  • private function m_size(this) result(size)

    Arguments

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

    Return Value integer(kind=SIZE_kind)