hasty_content_adt Module

HASTY abstract content class.

A very base class that is intended to be the parent of all contents.

Used By

module~~hasty_content_adt~~UsedByGraph module~hasty_content_adt hasty_content_adt module~hasty hasty module~hasty_content_adt->module~hasty module~hasty_dictionary_node hasty_dictionary_node module~hasty_content_adt->module~hasty_dictionary_node module~hasty_hash_table hasty_hash_table module~hasty_content_adt->module~hasty_hash_table program~hasty_test_caf_basic hasty_test_caf_basic module~hasty->program~hasty_test_caf_basic program~hasty_test_hash_table_homo hasty_test_hash_table_homo module~hasty->program~hasty_test_hash_table_homo program~hasty_test_hash_table_homocontent_failure hasty_test_hash_table_homocontent_failure module~hasty->program~hasty_test_hash_table_homocontent_failure program~hasty_test_caf_get_clone hasty_test_caf_get_clone module~hasty->program~hasty_test_caf_get_clone program~hasty_test_hash_table_homokey_failure hasty_test_hash_table_homokey_failure module~hasty->program~hasty_test_hash_table_homokey_failure program~hasty_test_dictionary hasty_test_dictionary module~hasty->program~hasty_test_dictionary program~hasty_test_hash_table hasty_test_hash_table module~hasty->program~hasty_test_hash_table module~hasty_dictionary_node->module~hasty module~hasty_dictionary hasty_dictionary module~hasty_dictionary_node->module~hasty_dictionary module~hasty_hash_table->module~hasty module~hasty_dictionary->module~hasty module~hasty_dictionary->module~hasty_hash_table
Help


Abstract Interfaces

abstract interface

Destroy the content.

  • private elemental subroutine destroy_interface(self)

    Destroy the content.

    Arguments

    Type IntentOptional AttributesName
    class(content_adt), intent(inout) :: self

    The content.

abstract interface

Return storage status.

  • private elemental function is_filled_interface(self)

    Return storage status.

    Arguments

    Type IntentOptional AttributesName
    class(content_adt), intent(in) :: self

    The content.

    Return Value logical

abstract interface

Check if the content type is allowed.

  • private elemental function typeguard_interface(self, content)

    Check if the content type is allowed.

    Arguments

    Type IntentOptional AttributesName
    class(content_adt), intent(in) :: self

    The content.

    class(*), intent(in) :: content

    The content to be stored.

    Return Value logical

abstract interface

Set the content of the storage to value passed.

  • private subroutine set_interface(self, content)

    Set the content of the content.

    Arguments

    Type IntentOptional AttributesName
    class(content_adt), intent(out) :: self

    The content.

    class(*), intent(in) :: content

    The content to be stored.

abstract interface

Implement == operator.

  • private elemental function is_equal_interface(lhs, rhs)

    Implement == operator.

    Arguments

    Type IntentOptional AttributesName
    class(content_adt), intent(in) :: lhs

    Left hand side.

    class(content_adt), intent(in) :: rhs

    Rigth hand side.

    Return Value logical


Derived Types

type, public, abstract :: content_adt

Abstract content class to storage any contents.

Type-Bound Procedures

procedure(destroy_interface), public, pass(self) :: destroy

Destroy the content.

procedure(is_filled_interface), public, pass(self) :: is_filled

Return storage status.

procedure(set_interface), public, pass(self) :: set

Set the content.

procedure(typeguard_interface), public, pass(self) :: typeguard

Check if the content type is allowed.

procedure(is_equal_interface), private, pass(lhs) :: is_equal

Implement == operator.

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

Overloading == operator.